gefileio.h 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570
  1. //////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright 2015 Autodesk, Inc. All rights reserved.
  4. //
  5. // Use of this software is subject to the terms of the Autodesk license
  6. // agreement provided at the time of installation or download, or which
  7. // otherwise accompanies this software in either electronic or hard copy form.
  8. //
  9. //////////////////////////////////////////////////////////////////////////////
  10. //
  11. // DESCRIPTION:
  12. //
  13. // This file contains the class AcGeFileIO - a utility class that
  14. // performs file IO.
  15. #ifndef AC_GEFILEIO_H
  16. #define AC_GEFILEIO_H
  17. #include "gegbl.h"
  18. #include "gedll.h"
  19. #include "dbfiler.h"
  20. #include "gept2dar.h"
  21. #include "gevc2dar.h"
  22. #include "gept3dar.h"
  23. #include "gevc3dar.h"
  24. #include "gedblar.h"
  25. #include "geintarr.h"
  26. #pragma pack (push, 8)
  27. class AcGeEntity2d;
  28. class AcGeEntity3d;
  29. class AcGePoint2d;
  30. class AcGeVector2d;
  31. class AcGeMatrix2d;
  32. class AcGeScale2d;
  33. class AcGePoint3d;
  34. class AcGeVector3d;
  35. class AcGeMatrix3d;
  36. class AcGeScale3d;
  37. class AcGeTol;
  38. class AcGeInterval;
  39. class AcGeKnotVector;
  40. class AcGeCurveBoundary;
  41. class AcGePosition2d;
  42. class AcGePointOnCurve2d;
  43. class AcGeLine2d;
  44. class AcGeLineSeg2d;
  45. class AcGeRay2d;
  46. class AcGeCircArc2d;
  47. class AcGeEllipArc2d;
  48. class AcGeExternalCurve2d;
  49. class AcGeCubicSplineCurve2d;
  50. class AcGeCompositeCurve2d;
  51. class AcGeOffsetCurve2d;
  52. class AcGeNurbCurve2d;
  53. class AcGePolyline2d;
  54. class AcGePosition3d;
  55. class AcGePointOnCurve3d;
  56. class AcGePointOnSurface;
  57. class AcGeLine3d;
  58. class AcGeRay3d;
  59. class AcGeLineSeg3d;
  60. class AcGePlane;
  61. class AcGeBoundedPlane;
  62. class AcGeBoundBlock2d;
  63. class AcGeBoundBlock3d;
  64. class AcGeCircArc3d;
  65. class AcGeEllipArc3d;
  66. class AcGeCubicSplineCurve3d;
  67. class AcGeCompositeCurve3d;
  68. class AcGeOffsetCurve3d;
  69. class AcGeNurbCurve3d;
  70. class AcGePolyline3d;
  71. class AcGeAugPolyline3d;
  72. class AcGeExternalCurve3d;
  73. class AcGeSurface;
  74. class AcGeCone;
  75. class AcGeCylinder;
  76. class AcGeTorus;
  77. class AcGeExternalSurface;
  78. class AcGeOffsetSurface;
  79. class AcGeNurbSurface;
  80. class AcGeExternalBoundedSurface;
  81. class AcGeSphere;
  82. class AcGeCurveCurveInt2d;
  83. class AcGeCurveCurveInt3d;
  84. class AcGeEllipCone;
  85. class AcGeFiler;
  86. class AcGeLibVersion;
  87. class
  88. GE_DLLEXPIMPORT
  89. AcGeFileIO
  90. {
  91. public:
  92. // Write out to file
  93. //
  94. static
  95. Acad::ErrorStatus outFields(AcGeFiler*, const AcGePoint2d&,
  96. const AcGeLibVersion& = AcGe::gLibVersion);
  97. static
  98. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeVector2d&,
  99. const AcGeLibVersion& = AcGe::gLibVersion);
  100. static
  101. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeMatrix2d&,
  102. const AcGeLibVersion& = AcGe::gLibVersion);
  103. static
  104. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeScale2d&,
  105. const AcGeLibVersion& = AcGe::gLibVersion);
  106. static
  107. Acad::ErrorStatus outFields(AcGeFiler*, const AcGePoint2dArray&,
  108. const AcGeLibVersion& = AcGe::gLibVersion);
  109. static
  110. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeVector2dArray&,
  111. const AcGeLibVersion& = AcGe::gLibVersion);
  112. static
  113. Acad::ErrorStatus outFields(AcGeFiler*, const AcGePoint3d&,
  114. const AcGeLibVersion& = AcGe::gLibVersion);
  115. static
  116. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeVector3d&,
  117. const AcGeLibVersion& = AcGe::gLibVersion);
  118. static
  119. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeMatrix3d&,
  120. const AcGeLibVersion& = AcGe::gLibVersion);
  121. static
  122. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeScale3d&,
  123. const AcGeLibVersion& = AcGe::gLibVersion);
  124. static
  125. Acad::ErrorStatus outFields(AcGeFiler*, const AcGePoint3dArray&,
  126. const AcGeLibVersion& = AcGe::gLibVersion);
  127. static
  128. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeVector3dArray&,
  129. const AcGeLibVersion& = AcGe::gLibVersion);
  130. static
  131. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeTol&,
  132. const AcGeLibVersion& = AcGe::gLibVersion);
  133. static
  134. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeInterval&,
  135. const AcGeLibVersion& = AcGe::gLibVersion);
  136. static
  137. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeKnotVector&,
  138. const AcGeLibVersion& = AcGe::gLibVersion);
  139. static
  140. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeDoubleArray&,
  141. const AcGeLibVersion& = AcGe::gLibVersion);
  142. static
  143. Acad::ErrorStatus outFields(AcGeFiler* filer, const AcGeIntArray& ent,
  144. const AcGeLibVersion& version);
  145. static
  146. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeCurveBoundary&,
  147. const AcGeLibVersion& = AcGe::gLibVersion);
  148. static
  149. Acad::ErrorStatus outFields(AcGeFiler*, const AcGePosition2d&,
  150. const AcGeLibVersion& = AcGe::gLibVersion);
  151. static
  152. Acad::ErrorStatus outFields(AcGeFiler*, const AcGePointOnCurve2d&,
  153. const AcGeLibVersion& = AcGe::gLibVersion);
  154. static
  155. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeLine2d&,
  156. const AcGeLibVersion& = AcGe::gLibVersion);
  157. static
  158. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeLineSeg2d&,
  159. const AcGeLibVersion& = AcGe::gLibVersion);
  160. static
  161. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeRay2d&,
  162. const AcGeLibVersion& = AcGe::gLibVersion);
  163. static
  164. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeCircArc2d&,
  165. const AcGeLibVersion& = AcGe::gLibVersion);
  166. static
  167. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeEllipArc2d&,
  168. const AcGeLibVersion& = AcGe::gLibVersion);
  169. static
  170. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeExternalCurve2d&,
  171. const AcGeLibVersion& = AcGe::gLibVersion);
  172. static
  173. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeCubicSplineCurve2d&,
  174. const AcGeLibVersion& = AcGe::gLibVersion);
  175. static
  176. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeCompositeCurve2d&,
  177. const AcGeLibVersion& = AcGe::gLibVersion);
  178. static
  179. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeOffsetCurve2d&,
  180. const AcGeLibVersion& = AcGe::gLibVersion);
  181. static
  182. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeNurbCurve2d&,
  183. const AcGeLibVersion& = AcGe::gLibVersion);
  184. static
  185. Acad::ErrorStatus outFields(AcGeFiler*, const AcGePolyline2d&,
  186. const AcGeLibVersion& = AcGe::gLibVersion);
  187. static
  188. Acad::ErrorStatus outFields(AcGeFiler*, const AcGePosition3d&,
  189. const AcGeLibVersion& = AcGe::gLibVersion);
  190. static
  191. Acad::ErrorStatus outFields(AcGeFiler*, const AcGePointOnCurve3d&,
  192. const AcGeLibVersion& = AcGe::gLibVersion);
  193. static
  194. Acad::ErrorStatus outFields(AcGeFiler*, const AcGePointOnSurface&,
  195. const AcGeLibVersion& = AcGe::gLibVersion);
  196. static
  197. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeLine3d&,
  198. const AcGeLibVersion& = AcGe::gLibVersion);
  199. static
  200. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeRay3d&,
  201. const AcGeLibVersion& = AcGe::gLibVersion);
  202. static
  203. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeLineSeg3d&,
  204. const AcGeLibVersion& = AcGe::gLibVersion);
  205. static
  206. Acad::ErrorStatus outFields(AcGeFiler*, const AcGePlane&,
  207. const AcGeLibVersion& = AcGe::gLibVersion);
  208. static
  209. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeBoundedPlane&,
  210. const AcGeLibVersion& = AcGe::gLibVersion);
  211. static
  212. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeCircArc3d&,
  213. const AcGeLibVersion& = AcGe::gLibVersion);
  214. static
  215. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeEllipArc3d&,
  216. const AcGeLibVersion& = AcGe::gLibVersion);
  217. static
  218. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeCubicSplineCurve3d&,
  219. const AcGeLibVersion& = AcGe::gLibVersion);
  220. static
  221. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeCompositeCurve3d&,
  222. const AcGeLibVersion& = AcGe::gLibVersion);
  223. static
  224. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeOffsetCurve3d&,
  225. const AcGeLibVersion& = AcGe::gLibVersion);
  226. static
  227. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeNurbCurve3d&,
  228. const AcGeLibVersion& = AcGe::gLibVersion);
  229. static
  230. Acad::ErrorStatus outFields(AcGeFiler*, const AcGePolyline3d&,
  231. const AcGeLibVersion& = AcGe::gLibVersion);
  232. static
  233. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeAugPolyline3d&,
  234. const AcGeLibVersion& = AcGe::gLibVersion);
  235. static
  236. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeExternalCurve3d&,
  237. const AcGeLibVersion& = AcGe::gLibVersion);
  238. static
  239. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeCone&,
  240. const AcGeLibVersion& = AcGe::gLibVersion);
  241. static
  242. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeCylinder&,
  243. const AcGeLibVersion& = AcGe::gLibVersion);
  244. static
  245. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeTorus&,
  246. const AcGeLibVersion& = AcGe::gLibVersion);
  247. static
  248. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeExternalSurface&,
  249. const AcGeLibVersion& = AcGe::gLibVersion);
  250. static
  251. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeOffsetSurface&,
  252. const AcGeLibVersion& = AcGe::gLibVersion);
  253. static
  254. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeNurbSurface&,
  255. const AcGeLibVersion& = AcGe::gLibVersion);
  256. static
  257. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeExternalBoundedSurface&,
  258. const AcGeLibVersion& = AcGe::gLibVersion);
  259. static
  260. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeSphere&,
  261. const AcGeLibVersion& = AcGe::gLibVersion);
  262. static
  263. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeBoundBlock2d&,
  264. const AcGeLibVersion& = AcGe::gLibVersion);
  265. static
  266. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeBoundBlock3d&,
  267. const AcGeLibVersion& = AcGe::gLibVersion);
  268. static
  269. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeCurveCurveInt2d&,
  270. const AcGeLibVersion& = AcGe::gLibVersion);
  271. static
  272. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeCurveCurveInt3d&,
  273. const AcGeLibVersion& = AcGe::gLibVersion);
  274. static
  275. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeLibVersion&);
  276. static
  277. Acad::ErrorStatus outFields(AcGeFiler*, const AcGeEllipCone&,
  278. const AcGeLibVersion& = AcGe::gLibVersion);
  279. // Read in from file
  280. //
  281. static
  282. Acad::ErrorStatus inFields(AcGeFiler*, AcGePoint2d&,
  283. const AcGeLibVersion& = AcGe::gLibVersion);
  284. static
  285. Acad::ErrorStatus inFields(AcGeFiler*, AcGeVector2d&,
  286. const AcGeLibVersion& = AcGe::gLibVersion);
  287. static
  288. Acad::ErrorStatus inFields(AcGeFiler*, AcGeMatrix2d&,
  289. const AcGeLibVersion& = AcGe::gLibVersion);
  290. static
  291. Acad::ErrorStatus inFields(AcGeFiler*, AcGeScale2d&,
  292. const AcGeLibVersion& = AcGe::gLibVersion);
  293. static
  294. Acad::ErrorStatus inFields(AcGeFiler*, AcGePoint2dArray&,
  295. const AcGeLibVersion& = AcGe::gLibVersion);
  296. static
  297. Acad::ErrorStatus inFields(AcGeFiler*, AcGeVector2dArray&,
  298. const AcGeLibVersion& = AcGe::gLibVersion);
  299. static
  300. Acad::ErrorStatus inFields(AcGeFiler*, AcGePoint3d&,
  301. const AcGeLibVersion& = AcGe::gLibVersion);
  302. static
  303. Acad::ErrorStatus inFields(AcGeFiler*, AcGeVector3d&,
  304. const AcGeLibVersion& = AcGe::gLibVersion);
  305. static
  306. Acad::ErrorStatus inFields(AcGeFiler*, AcGeMatrix3d&,
  307. const AcGeLibVersion& = AcGe::gLibVersion);
  308. static
  309. Acad::ErrorStatus inFields(AcGeFiler*, AcGeScale3d&,
  310. const AcGeLibVersion& = AcGe::gLibVersion);
  311. static
  312. Acad::ErrorStatus inFields(AcGeFiler*, AcGePoint3dArray&,
  313. const AcGeLibVersion& = AcGe::gLibVersion);
  314. static
  315. Acad::ErrorStatus inFields(AcGeFiler*, AcGeVector3dArray&,
  316. const AcGeLibVersion& = AcGe::gLibVersion);
  317. static
  318. Acad::ErrorStatus inFields(AcGeFiler*, AcGeTol&,
  319. const AcGeLibVersion& = AcGe::gLibVersion);
  320. static
  321. Acad::ErrorStatus inFields(AcGeFiler*, AcGeInterval&,
  322. const AcGeLibVersion& = AcGe::gLibVersion);
  323. static
  324. Acad::ErrorStatus inFields(AcGeFiler*, AcGeKnotVector&,
  325. const AcGeLibVersion& = AcGe::gLibVersion);
  326. static
  327. Acad::ErrorStatus inFields(AcGeFiler*, AcGeDoubleArray&,
  328. const AcGeLibVersion& = AcGe::gLibVersion);
  329. static
  330. Acad::ErrorStatus inFields(AcGeFiler* filer, AcGeIntArray& ent,
  331. const AcGeLibVersion& version);
  332. static
  333. Acad::ErrorStatus inFields(AcGeFiler*, AcGeCurveBoundary&,
  334. const AcGeLibVersion& = AcGe::gLibVersion);
  335. static
  336. Acad::ErrorStatus inFields(AcGeFiler*, AcGePosition2d&,
  337. const AcGeLibVersion& = AcGe::gLibVersion);
  338. static
  339. Acad::ErrorStatus inFields(AcGeFiler*, AcGePointOnCurve2d&,
  340. const AcGeLibVersion& = AcGe::gLibVersion);
  341. static
  342. Acad::ErrorStatus inFields(AcGeFiler*, AcGeLine2d&,
  343. const AcGeLibVersion& = AcGe::gLibVersion);
  344. static
  345. Acad::ErrorStatus inFields(AcGeFiler*, AcGeLineSeg2d&,
  346. const AcGeLibVersion& = AcGe::gLibVersion);
  347. static
  348. Acad::ErrorStatus inFields(AcGeFiler*, AcGeRay2d&,
  349. const AcGeLibVersion& = AcGe::gLibVersion);
  350. static
  351. Acad::ErrorStatus inFields(AcGeFiler*, AcGeCircArc2d&,
  352. const AcGeLibVersion& = AcGe::gLibVersion);
  353. static
  354. Acad::ErrorStatus inFields(AcGeFiler*, AcGeEllipArc2d&,
  355. const AcGeLibVersion& = AcGe::gLibVersion);
  356. static
  357. Acad::ErrorStatus inFields(AcGeFiler*, AcGeExternalCurve2d&,
  358. const AcGeLibVersion& = AcGe::gLibVersion);
  359. static
  360. Acad::ErrorStatus inFields(AcGeFiler*, AcGeCubicSplineCurve2d&,
  361. const AcGeLibVersion& = AcGe::gLibVersion);
  362. static
  363. Acad::ErrorStatus inFields(AcGeFiler*, AcGeCompositeCurve2d&,
  364. const AcGeLibVersion& = AcGe::gLibVersion);
  365. static
  366. Acad::ErrorStatus inFields(AcGeFiler*, AcGeOffsetCurve2d&,
  367. const AcGeLibVersion& = AcGe::gLibVersion);
  368. static
  369. Acad::ErrorStatus inFields(AcGeFiler*, AcGeNurbCurve2d&,
  370. const AcGeLibVersion& = AcGe::gLibVersion);
  371. static
  372. Acad::ErrorStatus inFields(AcGeFiler*, AcGePolyline2d&,
  373. const AcGeLibVersion& = AcGe::gLibVersion);
  374. static
  375. Acad::ErrorStatus inFields(AcGeFiler*, AcGePosition3d&,
  376. const AcGeLibVersion& = AcGe::gLibVersion);
  377. static
  378. Acad::ErrorStatus inFields(AcGeFiler*, AcGePointOnCurve3d&,
  379. const AcGeLibVersion& = AcGe::gLibVersion);
  380. static
  381. Acad::ErrorStatus inFields(AcGeFiler*, AcGePointOnSurface&,
  382. const AcGeLibVersion& = AcGe::gLibVersion);
  383. static
  384. Acad::ErrorStatus inFields(AcGeFiler*, AcGeLine3d&,
  385. const AcGeLibVersion& = AcGe::gLibVersion);
  386. static
  387. Acad::ErrorStatus inFields(AcGeFiler*, AcGeRay3d&,
  388. const AcGeLibVersion& = AcGe::gLibVersion);
  389. static
  390. Acad::ErrorStatus inFields(AcGeFiler*, AcGeLineSeg3d&,
  391. const AcGeLibVersion& = AcGe::gLibVersion);
  392. static
  393. Acad::ErrorStatus inFields(AcGeFiler*, AcGePlane&,
  394. const AcGeLibVersion& = AcGe::gLibVersion);
  395. static
  396. Acad::ErrorStatus inFields(AcGeFiler*, AcGeBoundedPlane&,
  397. const AcGeLibVersion& = AcGe::gLibVersion);
  398. static
  399. Acad::ErrorStatus inFields(AcGeFiler*, AcGeCircArc3d&,
  400. const AcGeLibVersion& = AcGe::gLibVersion);
  401. static
  402. Acad::ErrorStatus inFields(AcGeFiler*, AcGeEllipArc3d&,
  403. const AcGeLibVersion& = AcGe::gLibVersion);
  404. static
  405. Acad::ErrorStatus inFields(AcGeFiler*, AcGeCubicSplineCurve3d&,
  406. const AcGeLibVersion& = AcGe::gLibVersion);
  407. static
  408. Acad::ErrorStatus inFields(AcGeFiler*, AcGeCompositeCurve3d&,
  409. const AcGeLibVersion& = AcGe::gLibVersion);
  410. static
  411. Acad::ErrorStatus inFields(AcGeFiler*, AcGeOffsetCurve3d&,
  412. const AcGeLibVersion& = AcGe::gLibVersion);
  413. static
  414. Acad::ErrorStatus inFields(AcGeFiler*, AcGeNurbCurve3d&,
  415. const AcGeLibVersion& = AcGe::gLibVersion);
  416. static
  417. Acad::ErrorStatus inFields(AcGeFiler*, AcGePolyline3d&,
  418. const AcGeLibVersion& = AcGe::gLibVersion);
  419. static
  420. Acad::ErrorStatus inFields(AcGeFiler*, AcGeAugPolyline3d&,
  421. const AcGeLibVersion& = AcGe::gLibVersion);
  422. static
  423. Acad::ErrorStatus inFields(AcGeFiler*, AcGeExternalCurve3d&,
  424. const AcGeLibVersion& = AcGe::gLibVersion);
  425. static
  426. Acad::ErrorStatus inFields(AcGeFiler*, AcGeCone&,
  427. const AcGeLibVersion& = AcGe::gLibVersion);
  428. static
  429. Acad::ErrorStatus inFields(AcGeFiler*, AcGeCylinder&,
  430. const AcGeLibVersion& = AcGe::gLibVersion);
  431. static
  432. Acad::ErrorStatus inFields(AcGeFiler*, AcGeTorus&,
  433. const AcGeLibVersion& = AcGe::gLibVersion);
  434. static
  435. Acad::ErrorStatus inFields(AcGeFiler*, AcGeExternalSurface&,
  436. const AcGeLibVersion& = AcGe::gLibVersion);
  437. static
  438. Acad::ErrorStatus inFields(AcGeFiler*, AcGeOffsetSurface&,
  439. const AcGeLibVersion& = AcGe::gLibVersion);
  440. static
  441. Acad::ErrorStatus inFields(AcGeFiler*, AcGeNurbSurface&,
  442. const AcGeLibVersion& = AcGe::gLibVersion);
  443. static
  444. Acad::ErrorStatus inFields(AcGeFiler*, AcGeExternalBoundedSurface&,
  445. const AcGeLibVersion& = AcGe::gLibVersion);
  446. static
  447. Acad::ErrorStatus inFields(AcGeFiler*, AcGeSphere&,
  448. const AcGeLibVersion& = AcGe::gLibVersion);
  449. static
  450. Acad::ErrorStatus inFields(AcGeFiler*, AcGeBoundBlock2d&,
  451. const AcGeLibVersion& = AcGe::gLibVersion);
  452. static
  453. Acad::ErrorStatus inFields(AcGeFiler*, AcGeBoundBlock3d&,
  454. const AcGeLibVersion& = AcGe::gLibVersion);
  455. static
  456. Acad::ErrorStatus inFields(AcGeFiler*, AcGeCurveCurveInt2d&,
  457. const AcGeLibVersion& = AcGe::gLibVersion);
  458. static
  459. Acad::ErrorStatus inFields(AcGeFiler*, AcGeCurveCurveInt3d&,
  460. const AcGeLibVersion& = AcGe::gLibVersion);
  461. static
  462. Acad::ErrorStatus inFields(AcGeFiler*, AcGeEllipCone&,
  463. const AcGeLibVersion& = AcGe::gLibVersion);
  464. // There is no version on a version object.
  465. //
  466. static
  467. Acad::ErrorStatus inFields(AcGeFiler*, AcGeLibVersion&);
  468. private:
  469. static
  470. Acad::ErrorStatus writeBoolean(AcGeFiler*, Adesk::Boolean,
  471. const AcGeLibVersion&);
  472. static
  473. Acad::ErrorStatus readBoolean(AcGeFiler*, Adesk::Boolean*,
  474. const AcGeLibVersion&);
  475. Acad::ErrorStatus writeBool(AcGeFiler*, bool,
  476. const AcGeLibVersion&);
  477. static
  478. Acad::ErrorStatus readBool(AcGeFiler*, bool*,
  479. const AcGeLibVersion&);
  480. static
  481. Acad::ErrorStatus writeLong(AcGeFiler*, Adesk::Int32,
  482. const AcGeLibVersion&);
  483. static
  484. Acad::ErrorStatus readLong(AcGeFiler*, Adesk::Int32*,
  485. const AcGeLibVersion&);
  486. static
  487. Acad::ErrorStatus writeDouble(AcGeFiler*, double,
  488. const AcGeLibVersion&);
  489. static
  490. Acad::ErrorStatus readDouble(AcGeFiler*, double*,
  491. const AcGeLibVersion&);
  492. static
  493. Acad::ErrorStatus writePoint2d(AcGeFiler*, const AcGePoint2d&,
  494. const AcGeLibVersion&);
  495. static
  496. Acad::ErrorStatus readPoint2d(AcGeFiler*, AcGePoint2d*,
  497. const AcGeLibVersion&);
  498. static
  499. Acad::ErrorStatus writeVector2d(AcGeFiler*, const AcGeVector2d&,
  500. const AcGeLibVersion&);
  501. static
  502. Acad::ErrorStatus readVector2d(AcGeFiler*, AcGeVector2d*,
  503. const AcGeLibVersion&);
  504. static
  505. Acad::ErrorStatus writePoint3d(AcGeFiler*, const AcGePoint3d&,
  506. const AcGeLibVersion&);
  507. static
  508. Acad::ErrorStatus readPoint3d(AcGeFiler*, AcGePoint3d*,
  509. const AcGeLibVersion&);
  510. static
  511. Acad::ErrorStatus writeVector3d(AcGeFiler*, const AcGeVector3d&,
  512. const AcGeLibVersion&);
  513. static
  514. Acad::ErrorStatus readVector3d(AcGeFiler*, AcGeVector3d*,
  515. const AcGeLibVersion&);
  516. static
  517. Acad::ErrorStatus writeAcGeSurface(AcGeFiler*, const AcGeSurface&,
  518. const AcGeLibVersion& version);
  519. static
  520. Acad::ErrorStatus readAcGeSurface(AcGeFiler*, AcGeSurface&,
  521. const AcGeLibVersion& version);
  522. static
  523. Acad::ErrorStatus writeAcGeEntity2d(AcGeFiler* filer,
  524. const AcGeEntity2d& ent, const AcGeLibVersion& version);
  525. static
  526. Acad::ErrorStatus readAcGeEntity2d(AcGeFiler* filer, AcGeEntity2d*& ent,
  527. AcGe::EntityId id, const AcGeLibVersion& version);
  528. static
  529. Acad::ErrorStatus writeAcGeEntity3d(AcGeFiler* filer,
  530. const AcGeEntity3d& ent, const AcGeLibVersion& version);
  531. static
  532. Acad::ErrorStatus readAcGeEntity3d(AcGeFiler* filer, AcGeEntity3d*& ent,
  533. AcGe::EntityId id, const AcGeLibVersion& version);
  534. static
  535. Acad::ErrorStatus writeBytes(AcGeFiler* filer, const void* buf,
  536. Adesk::UInt32 len, const AcGeLibVersion& version);
  537. static
  538. Acad::ErrorStatus readBytes(AcGeFiler* filer, void* buf,
  539. Adesk::UInt32 len, const AcGeLibVersion& version);
  540. friend class AcGeFileIOX;
  541. friend class AcGeEllipArcParamOffset;
  542. };
  543. #pragma pack (pop)
  544. #endif