Team Fortress 2 Source Code as on 22/4/2020
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

864 lines
22 KiB

  1. /*
  2. File: QD3DTransform.h
  3. Contains: Q3Transform routines
  4. Version: Technology: Quickdraw 3D 1.6
  5. Release: QuickTime 7.3
  6. Copyright: (c) 2007 (c) 1995-1998 by Apple Computer, Inc., all rights reserved.
  7. Bugs?: For bug reports, consult the following page on
  8. the World Wide Web:
  9. http://developer.apple.com/bugreporter/
  10. */
  11. #ifndef __QD3DTRANSFORM__
  12. #define __QD3DTRANSFORM__
  13. #ifndef __QD3D__
  14. #include <QD3D.h>
  15. #endif
  16. #if PRAGMA_ONCE
  17. #pragma once
  18. #endif
  19. #ifdef __cplusplus
  20. extern "C" {
  21. #endif
  22. #if PRAGMA_IMPORT
  23. #pragma import on
  24. #endif
  25. #if PRAGMA_STRUCT_ALIGN
  26. #pragma options align=power
  27. #elif PRAGMA_STRUCT_PACKPUSH
  28. #pragma pack(push, 2)
  29. #elif PRAGMA_STRUCT_PACK
  30. #pragma pack(2)
  31. #endif
  32. #if PRAGMA_ENUM_ALWAYSINT
  33. #if defined(__fourbyteints__) && !__fourbyteints__
  34. #define __QD3DTRANSFORM__RESTORE_TWOBYTEINTS
  35. #pragma fourbyteints on
  36. #endif
  37. #pragma enumsalwaysint on
  38. #elif PRAGMA_ENUM_OPTIONS
  39. #pragma option enum=int
  40. #elif PRAGMA_ENUM_PACK
  41. #if __option(pack_enums)
  42. #define __QD3DTRANSFORM__RESTORE_PACKED_ENUMS
  43. #pragma options(!pack_enums)
  44. #endif
  45. #endif
  46. /******************************************************************************
  47. ** **
  48. ** Transform Routines **
  49. ** **
  50. *****************************************************************************/
  51. #if CALL_NOT_IN_CARBON
  52. /*
  53. * Q3Transform_GetType()
  54. *
  55. * Availability:
  56. * Non-Carbon CFM: not available
  57. * CarbonLib: not available
  58. * Mac OS X: not available
  59. */
  60. EXTERN_API_C( TQ3ObjectType )
  61. Q3Transform_GetType(TQ3TransformObject transform);
  62. /*
  63. * Q3Transform_GetMatrix()
  64. *
  65. * Availability:
  66. * Non-Carbon CFM: not available
  67. * CarbonLib: not available
  68. * Mac OS X: not available
  69. */
  70. EXTERN_API_C( TQ3Matrix4x4 * )
  71. Q3Transform_GetMatrix(
  72. TQ3TransformObject transform,
  73. TQ3Matrix4x4 * matrix);
  74. /*
  75. * Q3Transform_Submit()
  76. *
  77. * Availability:
  78. * Non-Carbon CFM: not available
  79. * CarbonLib: not available
  80. * Mac OS X: not available
  81. */
  82. EXTERN_API_C( TQ3Status )
  83. Q3Transform_Submit(
  84. TQ3TransformObject transform,
  85. TQ3ViewObject view);
  86. /******************************************************************************
  87. ** **
  88. ** MatrixTransform Routines **
  89. ** **
  90. *****************************************************************************/
  91. /*
  92. * Q3MatrixTransform_New()
  93. *
  94. * Availability:
  95. * Non-Carbon CFM: not available
  96. * CarbonLib: not available
  97. * Mac OS X: not available
  98. */
  99. EXTERN_API_C( TQ3TransformObject )
  100. Q3MatrixTransform_New(const TQ3Matrix4x4 * matrix);
  101. /*
  102. * Q3MatrixTransform_Submit()
  103. *
  104. * Availability:
  105. * Non-Carbon CFM: not available
  106. * CarbonLib: not available
  107. * Mac OS X: not available
  108. */
  109. EXTERN_API_C( TQ3Status )
  110. Q3MatrixTransform_Submit(
  111. const TQ3Matrix4x4 * matrix,
  112. TQ3ViewObject view);
  113. /*
  114. * Q3MatrixTransform_Set()
  115. *
  116. * Availability:
  117. * Non-Carbon CFM: not available
  118. * CarbonLib: not available
  119. * Mac OS X: not available
  120. */
  121. EXTERN_API_C( TQ3Status )
  122. Q3MatrixTransform_Set(
  123. TQ3TransformObject transform,
  124. const TQ3Matrix4x4 * matrix);
  125. /*
  126. * Q3MatrixTransform_Get()
  127. *
  128. * Availability:
  129. * Non-Carbon CFM: not available
  130. * CarbonLib: not available
  131. * Mac OS X: not available
  132. */
  133. EXTERN_API_C( TQ3Status )
  134. Q3MatrixTransform_Get(
  135. TQ3TransformObject transform,
  136. TQ3Matrix4x4 * matrix);
  137. /******************************************************************************
  138. ** **
  139. ** RotateTransform Data **
  140. ** **
  141. *****************************************************************************/
  142. #endif /* CALL_NOT_IN_CARBON */
  143. struct TQ3RotateTransformData {
  144. TQ3Axis axis;
  145. float radians;
  146. };
  147. typedef struct TQ3RotateTransformData TQ3RotateTransformData;
  148. /******************************************************************************
  149. ** **
  150. ** RotateTransform Routines **
  151. ** **
  152. *****************************************************************************/
  153. #if CALL_NOT_IN_CARBON
  154. /*
  155. * Q3RotateTransform_New()
  156. *
  157. * Availability:
  158. * Non-Carbon CFM: not available
  159. * CarbonLib: not available
  160. * Mac OS X: not available
  161. */
  162. EXTERN_API_C( TQ3TransformObject )
  163. Q3RotateTransform_New(const TQ3RotateTransformData * data);
  164. /*
  165. * Q3RotateTransform_Submit()
  166. *
  167. * Availability:
  168. * Non-Carbon CFM: not available
  169. * CarbonLib: not available
  170. * Mac OS X: not available
  171. */
  172. EXTERN_API_C( TQ3Status )
  173. Q3RotateTransform_Submit(
  174. const TQ3RotateTransformData * data,
  175. TQ3ViewObject view);
  176. /*
  177. * Q3RotateTransform_SetData()
  178. *
  179. * Availability:
  180. * Non-Carbon CFM: not available
  181. * CarbonLib: not available
  182. * Mac OS X: not available
  183. */
  184. EXTERN_API_C( TQ3Status )
  185. Q3RotateTransform_SetData(
  186. TQ3TransformObject transform,
  187. const TQ3RotateTransformData * data);
  188. /*
  189. * Q3RotateTransform_GetData()
  190. *
  191. * Availability:
  192. * Non-Carbon CFM: not available
  193. * CarbonLib: not available
  194. * Mac OS X: not available
  195. */
  196. EXTERN_API_C( TQ3Status )
  197. Q3RotateTransform_GetData(
  198. TQ3TransformObject transform,
  199. TQ3RotateTransformData * data);
  200. /*
  201. * Q3RotateTransform_SetAxis()
  202. *
  203. * Availability:
  204. * Non-Carbon CFM: not available
  205. * CarbonLib: not available
  206. * Mac OS X: not available
  207. */
  208. EXTERN_API_C( TQ3Status )
  209. Q3RotateTransform_SetAxis(
  210. TQ3TransformObject transform,
  211. TQ3Axis axis);
  212. /*
  213. * Q3RotateTransform_SetAngle()
  214. *
  215. * Availability:
  216. * Non-Carbon CFM: not available
  217. * CarbonLib: not available
  218. * Mac OS X: not available
  219. */
  220. EXTERN_API_C( TQ3Status )
  221. Q3RotateTransform_SetAngle(
  222. TQ3TransformObject transform,
  223. float radians);
  224. /*
  225. * Q3RotateTransform_GetAxis()
  226. *
  227. * Availability:
  228. * Non-Carbon CFM: not available
  229. * CarbonLib: not available
  230. * Mac OS X: not available
  231. */
  232. EXTERN_API_C( TQ3Status )
  233. Q3RotateTransform_GetAxis(
  234. TQ3TransformObject renderable,
  235. TQ3Axis * axis);
  236. /*
  237. * Q3RotateTransform_GetAngle()
  238. *
  239. * Availability:
  240. * Non-Carbon CFM: not available
  241. * CarbonLib: not available
  242. * Mac OS X: not available
  243. */
  244. EXTERN_API_C( TQ3Status )
  245. Q3RotateTransform_GetAngle(
  246. TQ3TransformObject transform,
  247. float * radians);
  248. /******************************************************************************
  249. ** **
  250. ** RotateAboutPointTransform Data **
  251. ** **
  252. *****************************************************************************/
  253. #endif /* CALL_NOT_IN_CARBON */
  254. struct TQ3RotateAboutPointTransformData {
  255. TQ3Axis axis;
  256. float radians;
  257. TQ3Point3D about;
  258. };
  259. typedef struct TQ3RotateAboutPointTransformData TQ3RotateAboutPointTransformData;
  260. /******************************************************************************
  261. ** **
  262. ** RotateAboutPointTransform Routines **
  263. ** **
  264. *****************************************************************************/
  265. #if CALL_NOT_IN_CARBON
  266. /*
  267. * Q3RotateAboutPointTransform_New()
  268. *
  269. * Availability:
  270. * Non-Carbon CFM: not available
  271. * CarbonLib: not available
  272. * Mac OS X: not available
  273. */
  274. EXTERN_API_C( TQ3TransformObject )
  275. Q3RotateAboutPointTransform_New(const TQ3RotateAboutPointTransformData * data);
  276. /*
  277. * Q3RotateAboutPointTransform_Submit()
  278. *
  279. * Availability:
  280. * Non-Carbon CFM: not available
  281. * CarbonLib: not available
  282. * Mac OS X: not available
  283. */
  284. EXTERN_API_C( TQ3Status )
  285. Q3RotateAboutPointTransform_Submit(
  286. const TQ3RotateAboutPointTransformData * data,
  287. TQ3ViewObject view);
  288. /*
  289. * Q3RotateAboutPointTransform_SetData()
  290. *
  291. * Availability:
  292. * Non-Carbon CFM: not available
  293. * CarbonLib: not available
  294. * Mac OS X: not available
  295. */
  296. EXTERN_API_C( TQ3Status )
  297. Q3RotateAboutPointTransform_SetData(
  298. TQ3TransformObject transform,
  299. const TQ3RotateAboutPointTransformData * data);
  300. /*
  301. * Q3RotateAboutPointTransform_GetData()
  302. *
  303. * Availability:
  304. * Non-Carbon CFM: not available
  305. * CarbonLib: not available
  306. * Mac OS X: not available
  307. */
  308. EXTERN_API_C( TQ3Status )
  309. Q3RotateAboutPointTransform_GetData(
  310. TQ3TransformObject transform,
  311. TQ3RotateAboutPointTransformData * data);
  312. /*
  313. * Q3RotateAboutPointTransform_SetAxis()
  314. *
  315. * Availability:
  316. * Non-Carbon CFM: not available
  317. * CarbonLib: not available
  318. * Mac OS X: not available
  319. */
  320. EXTERN_API_C( TQ3Status )
  321. Q3RotateAboutPointTransform_SetAxis(
  322. TQ3TransformObject transform,
  323. TQ3Axis axis);
  324. /*
  325. * Q3RotateAboutPointTransform_GetAxis()
  326. *
  327. * Availability:
  328. * Non-Carbon CFM: not available
  329. * CarbonLib: not available
  330. * Mac OS X: not available
  331. */
  332. EXTERN_API_C( TQ3Status )
  333. Q3RotateAboutPointTransform_GetAxis(
  334. TQ3TransformObject transform,
  335. TQ3Axis * axis);
  336. /*
  337. * Q3RotateAboutPointTransform_SetAngle()
  338. *
  339. * Availability:
  340. * Non-Carbon CFM: not available
  341. * CarbonLib: not available
  342. * Mac OS X: not available
  343. */
  344. EXTERN_API_C( TQ3Status )
  345. Q3RotateAboutPointTransform_SetAngle(
  346. TQ3TransformObject transform,
  347. float radians);
  348. /*
  349. * Q3RotateAboutPointTransform_GetAngle()
  350. *
  351. * Availability:
  352. * Non-Carbon CFM: not available
  353. * CarbonLib: not available
  354. * Mac OS X: not available
  355. */
  356. EXTERN_API_C( TQ3Status )
  357. Q3RotateAboutPointTransform_GetAngle(
  358. TQ3TransformObject transform,
  359. float * radians);
  360. /*
  361. * Q3RotateAboutPointTransform_SetAboutPoint()
  362. *
  363. * Availability:
  364. * Non-Carbon CFM: not available
  365. * CarbonLib: not available
  366. * Mac OS X: not available
  367. */
  368. EXTERN_API_C( TQ3Status )
  369. Q3RotateAboutPointTransform_SetAboutPoint(
  370. TQ3TransformObject transform,
  371. const TQ3Point3D * about);
  372. /*
  373. * Q3RotateAboutPointTransform_GetAboutPoint()
  374. *
  375. * Availability:
  376. * Non-Carbon CFM: not available
  377. * CarbonLib: not available
  378. * Mac OS X: not available
  379. */
  380. EXTERN_API_C( TQ3Status )
  381. Q3RotateAboutPointTransform_GetAboutPoint(
  382. TQ3TransformObject transform,
  383. TQ3Point3D * about);
  384. /******************************************************************************
  385. ** **
  386. ** RotateAboutAxisTransform Data **
  387. ** **
  388. *****************************************************************************/
  389. #endif /* CALL_NOT_IN_CARBON */
  390. struct TQ3RotateAboutAxisTransformData {
  391. TQ3Point3D origin;
  392. TQ3Vector3D orientation;
  393. float radians;
  394. };
  395. typedef struct TQ3RotateAboutAxisTransformData TQ3RotateAboutAxisTransformData;
  396. /******************************************************************************
  397. ** **
  398. ** RotateAboutAxisTransform Routines **
  399. ** **
  400. *****************************************************************************/
  401. #if CALL_NOT_IN_CARBON
  402. /*
  403. * Q3RotateAboutAxisTransform_New()
  404. *
  405. * Availability:
  406. * Non-Carbon CFM: not available
  407. * CarbonLib: not available
  408. * Mac OS X: not available
  409. */
  410. EXTERN_API_C( TQ3TransformObject )
  411. Q3RotateAboutAxisTransform_New(const TQ3RotateAboutAxisTransformData * data);
  412. /*
  413. * Q3RotateAboutAxisTransform_Submit()
  414. *
  415. * Availability:
  416. * Non-Carbon CFM: not available
  417. * CarbonLib: not available
  418. * Mac OS X: not available
  419. */
  420. EXTERN_API_C( TQ3Status )
  421. Q3RotateAboutAxisTransform_Submit(
  422. const TQ3RotateAboutAxisTransformData * data,
  423. TQ3ViewObject view);
  424. /*
  425. * Q3RotateAboutAxisTransform_SetData()
  426. *
  427. * Availability:
  428. * Non-Carbon CFM: not available
  429. * CarbonLib: not available
  430. * Mac OS X: not available
  431. */
  432. EXTERN_API_C( TQ3Status )
  433. Q3RotateAboutAxisTransform_SetData(
  434. TQ3TransformObject transform,
  435. const TQ3RotateAboutAxisTransformData * data);
  436. /*
  437. * Q3RotateAboutAxisTransform_GetData()
  438. *
  439. * Availability:
  440. * Non-Carbon CFM: not available
  441. * CarbonLib: not available
  442. * Mac OS X: not available
  443. */
  444. EXTERN_API_C( TQ3Status )
  445. Q3RotateAboutAxisTransform_GetData(
  446. TQ3TransformObject transform,
  447. TQ3RotateAboutAxisTransformData * data);
  448. /*
  449. * Q3RotateAboutAxisTransform_SetOrientation()
  450. *
  451. * Availability:
  452. * Non-Carbon CFM: not available
  453. * CarbonLib: not available
  454. * Mac OS X: not available
  455. */
  456. EXTERN_API_C( TQ3Status )
  457. Q3RotateAboutAxisTransform_SetOrientation(
  458. TQ3TransformObject transform,
  459. const TQ3Vector3D * axis);
  460. /*
  461. * Q3RotateAboutAxisTransform_GetOrientation()
  462. *
  463. * Availability:
  464. * Non-Carbon CFM: not available
  465. * CarbonLib: not available
  466. * Mac OS X: not available
  467. */
  468. EXTERN_API_C( TQ3Status )
  469. Q3RotateAboutAxisTransform_GetOrientation(
  470. TQ3TransformObject transform,
  471. TQ3Vector3D * axis);
  472. /*
  473. * Q3RotateAboutAxisTransform_SetAngle()
  474. *
  475. * Availability:
  476. * Non-Carbon CFM: not available
  477. * CarbonLib: not available
  478. * Mac OS X: not available
  479. */
  480. EXTERN_API_C( TQ3Status )
  481. Q3RotateAboutAxisTransform_SetAngle(
  482. TQ3TransformObject transform,
  483. float radians);
  484. /*
  485. * Q3RotateAboutAxisTransform_GetAngle()
  486. *
  487. * Availability:
  488. * Non-Carbon CFM: not available
  489. * CarbonLib: not available
  490. * Mac OS X: not available
  491. */
  492. EXTERN_API_C( TQ3Status )
  493. Q3RotateAboutAxisTransform_GetAngle(
  494. TQ3TransformObject transform,
  495. float * radians);
  496. /*
  497. * Q3RotateAboutAxisTransform_SetOrigin()
  498. *
  499. * Availability:
  500. * Non-Carbon CFM: not available
  501. * CarbonLib: not available
  502. * Mac OS X: not available
  503. */
  504. EXTERN_API_C( TQ3Status )
  505. Q3RotateAboutAxisTransform_SetOrigin(
  506. TQ3TransformObject transform,
  507. const TQ3Point3D * origin);
  508. /*
  509. * Q3RotateAboutAxisTransform_GetOrigin()
  510. *
  511. * Availability:
  512. * Non-Carbon CFM: not available
  513. * CarbonLib: not available
  514. * Mac OS X: not available
  515. */
  516. EXTERN_API_C( TQ3Status )
  517. Q3RotateAboutAxisTransform_GetOrigin(
  518. TQ3TransformObject transform,
  519. TQ3Point3D * origin);
  520. /******************************************************************************
  521. ** **
  522. ** ScaleTransform Routines **
  523. ** **
  524. *****************************************************************************/
  525. /*
  526. * Q3ScaleTransform_New()
  527. *
  528. * Availability:
  529. * Non-Carbon CFM: not available
  530. * CarbonLib: not available
  531. * Mac OS X: not available
  532. */
  533. EXTERN_API_C( TQ3TransformObject )
  534. Q3ScaleTransform_New(const TQ3Vector3D * scale);
  535. /*
  536. * Q3ScaleTransform_Submit()
  537. *
  538. * Availability:
  539. * Non-Carbon CFM: not available
  540. * CarbonLib: not available
  541. * Mac OS X: not available
  542. */
  543. EXTERN_API_C( TQ3Status )
  544. Q3ScaleTransform_Submit(
  545. const TQ3Vector3D * scale,
  546. TQ3ViewObject view);
  547. /*
  548. * Q3ScaleTransform_Set()
  549. *
  550. * Availability:
  551. * Non-Carbon CFM: not available
  552. * CarbonLib: not available
  553. * Mac OS X: not available
  554. */
  555. EXTERN_API_C( TQ3Status )
  556. Q3ScaleTransform_Set(
  557. TQ3TransformObject transform,
  558. const TQ3Vector3D * scale);
  559. /*
  560. * Q3ScaleTransform_Get()
  561. *
  562. * Availability:
  563. * Non-Carbon CFM: not available
  564. * CarbonLib: not available
  565. * Mac OS X: not available
  566. */
  567. EXTERN_API_C( TQ3Status )
  568. Q3ScaleTransform_Get(
  569. TQ3TransformObject transform,
  570. TQ3Vector3D * scale);
  571. /******************************************************************************
  572. ** **
  573. ** TranslateTransform Routines **
  574. ** **
  575. *****************************************************************************/
  576. /*
  577. * Q3TranslateTransform_New()
  578. *
  579. * Availability:
  580. * Non-Carbon CFM: not available
  581. * CarbonLib: not available
  582. * Mac OS X: not available
  583. */
  584. EXTERN_API_C( TQ3TransformObject )
  585. Q3TranslateTransform_New(const TQ3Vector3D * translate);
  586. /*
  587. * Q3TranslateTransform_Submit()
  588. *
  589. * Availability:
  590. * Non-Carbon CFM: not available
  591. * CarbonLib: not available
  592. * Mac OS X: not available
  593. */
  594. EXTERN_API_C( TQ3Status )
  595. Q3TranslateTransform_Submit(
  596. const TQ3Vector3D * translate,
  597. TQ3ViewObject view);
  598. /*
  599. * Q3TranslateTransform_Set()
  600. *
  601. * Availability:
  602. * Non-Carbon CFM: not available
  603. * CarbonLib: not available
  604. * Mac OS X: not available
  605. */
  606. EXTERN_API_C( TQ3Status )
  607. Q3TranslateTransform_Set(
  608. TQ3TransformObject transform,
  609. const TQ3Vector3D * translate);
  610. /*
  611. * Q3TranslateTransform_Get()
  612. *
  613. * Availability:
  614. * Non-Carbon CFM: not available
  615. * CarbonLib: not available
  616. * Mac OS X: not available
  617. */
  618. EXTERN_API_C( TQ3Status )
  619. Q3TranslateTransform_Get(
  620. TQ3TransformObject transform,
  621. TQ3Vector3D * translate);
  622. /******************************************************************************
  623. ** **
  624. ** QuaternionTransform Routines **
  625. ** **
  626. *****************************************************************************/
  627. /*
  628. * Q3QuaternionTransform_New()
  629. *
  630. * Availability:
  631. * Non-Carbon CFM: not available
  632. * CarbonLib: not available
  633. * Mac OS X: not available
  634. */
  635. EXTERN_API_C( TQ3TransformObject )
  636. Q3QuaternionTransform_New(const TQ3Quaternion * quaternion);
  637. /*
  638. * Q3QuaternionTransform_Submit()
  639. *
  640. * Availability:
  641. * Non-Carbon CFM: not available
  642. * CarbonLib: not available
  643. * Mac OS X: not available
  644. */
  645. EXTERN_API_C( TQ3Status )
  646. Q3QuaternionTransform_Submit(
  647. const TQ3Quaternion * quaternion,
  648. TQ3ViewObject view);
  649. /*
  650. * Q3QuaternionTransform_Set()
  651. *
  652. * Availability:
  653. * Non-Carbon CFM: not available
  654. * CarbonLib: not available
  655. * Mac OS X: not available
  656. */
  657. EXTERN_API_C( TQ3Status )
  658. Q3QuaternionTransform_Set(
  659. TQ3TransformObject transform,
  660. const TQ3Quaternion * quaternion);
  661. /*
  662. * Q3QuaternionTransform_Get()
  663. *
  664. * Availability:
  665. * Non-Carbon CFM: not available
  666. * CarbonLib: not available
  667. * Mac OS X: not available
  668. */
  669. EXTERN_API_C( TQ3Status )
  670. Q3QuaternionTransform_Get(
  671. TQ3TransformObject transform,
  672. TQ3Quaternion * quaternion);
  673. /******************************************************************************
  674. ** **
  675. ** ResetTransform Routines **
  676. ** **
  677. *****************************************************************************/
  678. /*
  679. * Q3ResetTransform_New()
  680. *
  681. * Availability:
  682. * Non-Carbon CFM: not available
  683. * CarbonLib: not available
  684. * Mac OS X: not available
  685. */
  686. EXTERN_API_C( TQ3TransformObject )
  687. Q3ResetTransform_New(void);
  688. /*
  689. * Q3ResetTransform_Submit()
  690. *
  691. * Availability:
  692. * Non-Carbon CFM: not available
  693. * CarbonLib: not available
  694. * Mac OS X: not available
  695. */
  696. EXTERN_API_C( TQ3Status )
  697. Q3ResetTransform_Submit(TQ3ViewObject view);
  698. #endif /* CALL_NOT_IN_CARBON */
  699. #if PRAGMA_ENUM_ALWAYSINT
  700. #pragma enumsalwaysint reset
  701. #ifdef __QD3DTRANSFORM__RESTORE_TWOBYTEINTS
  702. #pragma fourbyteints off
  703. #endif
  704. #elif PRAGMA_ENUM_OPTIONS
  705. #pragma option enum=reset
  706. #elif defined(__QD3DTRANSFORM__RESTORE_PACKED_ENUMS)
  707. #pragma options(pack_enums)
  708. #endif
  709. #if PRAGMA_STRUCT_ALIGN
  710. #pragma options align=reset
  711. #elif PRAGMA_STRUCT_PACKPUSH
  712. #pragma pack(pop)
  713. #elif PRAGMA_STRUCT_PACK
  714. #pragma pack()
  715. #endif
  716. #ifdef PRAGMA_IMPORT_OFF
  717. #pragma import off
  718. #elif PRAGMA_IMPORT
  719. #pragma import reset
  720. #endif
  721. #ifdef __cplusplus
  722. }
  723. #endif
  724. #endif /* __QD3DTRANSFORM__ */