Advertisement
Guest User

Life if Feudal - Client class functions part 3/4

a guest
Aug 10th, 2015
1,146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 488.89 KB | None | 0 0
  1.  /*!
  2.  @brief A datablock which defines and performs light animation, such as rotation, brightness fade, and colorization.
  3.  
  4.  @tsexample
  5.  datablock LightAnimData( SubtlePulseLightAnim )
  6.  {
  7.     brightnessA = 0.5;
  8.     brightnessZ = 1;
  9.     brightnessPeriod = 1;
  10.     brightnessKeys = "aza";
  11.     brightnessSmooth = true;
  12.  };
  13.  @endtsexample
  14.  
  15.  @see LightBase
  16.  
  17.  @see LightDescription
  18.  
  19.  @ingroup FX
  20.  @ingroup Lighting
  21.   */
  22.  class  LightAnimData : public SimDataBlock {
  23.    public:
  24.  
  25.     /*! @name Offset
  26.    
  27.     The XYZ translation animation state relative to the light position.
  28.     @{ */
  29.     /*! */
  30.     /*!
  31.     The value of the A key in the keyframe sequence.
  32.    
  33.      */
  34.     float offsetA;
  35.     /*!
  36.     The value of the Z key in the keyframe sequence.
  37.    
  38.      */
  39.     float offsetZ;
  40.     /*!
  41.     The animation time for keyframe sequence.
  42.    
  43.      */
  44.     float offsetPeriod;
  45.     /*!
  46.     The keyframe sequence encoded into a string where characters from A to Z define a position between the two animation values.
  47.    
  48.      */
  49.     string offsetKeys;
  50.     /*!
  51.     If true the transition between keyframes will be smooth.
  52.    
  53.      */
  54.     bool offsetSmooth;
  55.     /// @}
  56.  
  57.  
  58.     /*! @name Rotation
  59.    
  60.     The XYZ rotation animation state relative to the light orientation.
  61.     @{ */
  62.     /*! */
  63.     /*!
  64.     The value of the A key in the keyframe sequence.
  65.    
  66.      */
  67.     float rotA;
  68.     /*!
  69.     The value of the Z key in the keyframe sequence.
  70.    
  71.      */
  72.     float rotZ;
  73.     /*!
  74.     The animation time for keyframe sequence.
  75.    
  76.      */
  77.     float rotPeriod;
  78.     /*!
  79.     The keyframe sequence encoded into a string where characters from A to Z define a position between the two animation values.
  80.    
  81.      */
  82.     string rotKeys;
  83.     /*!
  84.     If true the transition between keyframes will be smooth.
  85.    
  86.      */
  87.     bool rotSmooth;
  88.     /// @}
  89.  
  90.  
  91.     /*! @name Color
  92.    
  93.     The RGB color animation state.
  94.     @{ */
  95.     /*! */
  96.     /*!
  97.     The value of the A key in the keyframe sequence.
  98.    
  99.      */
  100.     float colorA;
  101.     /*!
  102.     The value of the Z key in the keyframe sequence.
  103.    
  104.      */
  105.     float colorZ;
  106.     /*!
  107.     The animation time for keyframe sequence.
  108.    
  109.      */
  110.     float colorPeriod;
  111.     /*!
  112.     The keyframe sequence encoded into a string where characters from A to Z define a position between the two animation values.
  113.    
  114.      */
  115.     string colorKeys;
  116.     /*!
  117.     If true the transition between keyframes will be smooth.
  118.    
  119.      */
  120.     bool colorSmooth;
  121.     /// @}
  122.  
  123.  
  124.     /*! @name Brightness
  125.    
  126.     The brightness animation state.
  127.     @{ */
  128.     /*! */
  129.     /*!
  130.     The value of the A key in the keyframe sequence.
  131.    
  132.      */
  133.     float brightnessA;
  134.     /*!
  135.     The value of the Z key in the keyframe sequence.
  136.    
  137.      */
  138.     float brightnessZ;
  139.     /*!
  140.     The animation time for keyframe sequence.
  141.    
  142.      */
  143.     float brightnessPeriod;
  144.     /*!
  145.     The keyframe sequence encoded into a string where characters from A to Z define a position between the two animation values.
  146.    
  147.      */
  148.     string brightnessKeys;
  149.     /*!
  150.     If true the transition between keyframes will be smooth.
  151.    
  152.      */
  153.     bool brightnessSmooth;
  154.     /// @}
  155.  
  156.  
  157.     /*! @name Ungrouped
  158.     @{ */
  159.     /*! */
  160.     /// @}
  161.  
  162.  
  163.     /*! @name Object
  164.     @{ */
  165.     /*! */
  166.     /// @}
  167.  
  168.  
  169.     /*! @name Editing
  170.     @{ */
  171.     /*! */
  172.     /// @}
  173.  
  174.  
  175.     /*! @name Persistence
  176.     @{ */
  177.     /*! */
  178.     /// @}
  179.  
  180.  };
  181.  
  182.  /// Stub class
  183.  ///
  184.  /// @note This is a stub class to ensure a proper class hierarchy. No
  185.  ///       information was available for this class.
  186.  class  SpinLightAnim : public LightAnimData {
  187.    public:
  188.  };
  189.  
  190.  /// Stub class
  191.  ///
  192.  /// @note This is a stub class to ensure a proper class hierarchy. No
  193.  ///       information was available for this class.
  194.  class  FireLightAnim : public LightAnimData {
  195.    public:
  196.  };
  197.  
  198.  /// Stub class
  199.  ///
  200.  /// @note This is a stub class to ensure a proper class hierarchy. No
  201.  ///       information was available for this class.
  202.  class  BlinkLightAnim : public LightAnimData {
  203.    public:
  204.  };
  205.  
  206.  /// Stub class
  207.  ///
  208.  /// @note This is a stub class to ensure a proper class hierarchy. No
  209.  ///       information was available for this class.
  210.  class  FlickerLightAnim : public LightAnimData {
  211.    public:
  212.  };
  213.  
  214.  /// Stub class
  215.  ///
  216.  /// @note This is a stub class to ensure a proper class hierarchy. No
  217.  ///       information was available for this class.
  218.  class  SubtlePulseLightAnim : public LightAnimData {
  219.    public:
  220.  };
  221.  
  222.  /// Stub class
  223.  ///
  224.  /// @note This is a stub class to ensure a proper class hierarchy. No
  225.  ///       information was available for this class.
  226.  class  PulseLightAnim : public LightAnimData {
  227.    public:
  228.  };
  229.  
  230.  /// Stub class
  231.  ///
  232.  /// @note This is a stub class to ensure a proper class hierarchy. No
  233.  ///       information was available for this class.
  234.  class  NullLightAnim : public LightAnimData {
  235.    public:
  236.  };
  237.  
  238.  /// Stub class
  239.  ///
  240.  /// @note This is a stub class to ensure a proper class hierarchy. No
  241.  ///       information was available for this class.
  242.  class  DefaultEmitter : public ParticleEmitterData {
  243.    public:
  244.  };
  245.  
  246.  /// Stub class
  247.  ///
  248.  /// @note This is a stub class to ensure a proper class hierarchy. No
  249.  ///       information was available for this class.
  250.  class  DefaultParticle : public ParticleData {
  251.    public:
  252.  };
  253.  
  254.  /*!
  255.  @brief A very basic class containing information used by MissionMarker objects for rendering
  256.  
  257.  MissionMarkerData, is an extremely barebones class derived from ShapeBaseData. It is solely used by MissionMarker classes (such as SpawnSphere), so that you can see the object while editing a level.
  258.  
  259.  @tsexample
  260.  datablock MissionMarkerData(SpawnSphereMarker)
  261.  {
  262.     category = "Misc";
  263.     shapeFile = "core/art/shapes/octahedron.dts";
  264.  };
  265.  @endtsexample
  266.  
  267.  @see MissionMarker
  268.  
  269.  @see SpawnSphere
  270.  
  271.  @see WayPoint
  272.  
  273.  @ingroup enviroMisc
  274.   */
  275.  class  MissionMarkerData : public ShapeBaseData {
  276.    public:
  277.  
  278.     /*! @name Shadows
  279.     @{ */
  280.     /*! */
  281.     /// @}
  282.  
  283.  
  284.     /*! @name Render
  285.     @{ */
  286.     /*! */
  287.     /// @}
  288.  
  289.  
  290.     /*! @name Destruction
  291.    
  292.     Parameters related to the destruction effects of this object.
  293.     @{ */
  294.     /*! */
  295.     /// @}
  296.  
  297.  
  298.     /*! @name Physics
  299.     @{ */
  300.     /*! */
  301.     /// @}
  302.  
  303.  
  304.     /*! @name Damage/Energy
  305.     @{ */
  306.     /*! */
  307.     /// @}
  308.  
  309.  
  310.     /*! @name Camera
  311.    
  312.     The settings used by the shape when it is the camera.
  313.     @{ */
  314.     /*! */
  315.     /// @}
  316.  
  317.  
  318.     /*! @name Scripting
  319.     @{ */
  320.     /*! */
  321.     /// @}
  322.  
  323.  
  324.     /*! @name Ungrouped
  325.     @{ */
  326.     /*! */
  327.     /// @}
  328.  
  329.  
  330.     /*! @name Object
  331.     @{ */
  332.     /*! */
  333.     /// @}
  334.  
  335.  
  336.     /*! @name Editing
  337.     @{ */
  338.     /*! */
  339.     /// @}
  340.  
  341.  
  342.     /*! @name Persistence
  343.     @{ */
  344.     /*! */
  345.     /// @}
  346.  
  347.  };
  348.  
  349.  /// Stub class
  350.  ///
  351.  /// @note This is a stub class to ensure a proper class hierarchy. No
  352.  ///       information was available for this class.
  353.  class  CameraBookmarkMarker : public MissionMarkerData {
  354.    public:
  355.  };
  356.  
  357.  /// Stub class
  358.  ///
  359.  /// @note This is a stub class to ensure a proper class hierarchy. No
  360.  ///       information was available for this class.
  361.  class  SpawnSphereMarker : public MissionMarkerData {
  362.    public:
  363.  };
  364.  
  365.  /// Stub class
  366.  ///
  367.  /// @note This is a stub class to ensure a proper class hierarchy. No
  368.  ///       information was available for this class.
  369.  class  WayPointMarker : public MissionMarkerData {
  370.    public:
  371.  };
  372.  
  373.  /*!
  374.  @brief A material in Torque 3D is a data structure that describes a surface.
  375.  
  376.  It contains many different types of information for rendering properties. Torque 3D generates shaders from Material definitions. The shaders are compiled at runtime and output into the example/shaders directory. Any errors or warnings generated from compiling the procedurally generated shaders are output to the console as well as the output window in the Visual C IDE.
  377.  
  378.  @tsexample
  379.  singleton Material(DECAL_scorch)
  380.  {
  381.     baseTex[0] = "./scorch_decal.png";
  382.     vertColor[ 0 ] = true;
  383.  
  384.     translucent = true;
  385.     translucentBlendOp = None;
  386.     translucentZWrite = true;
  387.     alphaTest = true;
  388.     alphaRef = 84;
  389.  };
  390.  @endtsexample
  391.  
  392.  @see Rendering
  393.  @see ShaderData
  394.  @ingroup GFX
  395.   */
  396.  class  Material : public SimObject {
  397.    public:
  398.     /*! Flushes all material instances that use this material. */
  399.     virtual void flush() {}
  400.     /*! Reloads all material instances that use this material. */
  401.     virtual void reload() {}
  402.     /*! Dumps a formatted list of the currently allocated material instances for this material to the console. */
  403.     virtual void dumpInstances() {}
  404.     virtual string getAnimFlags() {}
  405.     /*! Get filename of material */
  406.     virtual string getFilename() {}
  407.     /*! Returns true if this Material was automatically generated by MaterialList::mapMaterials() */
  408.     virtual bool isAutoGenerated() {}
  409.     /*! setAutoGenerated(bool isAutoGenerated): Set whether or not the Material is autogenerated. */
  410.     virtual void setAutoGenerated() {}
  411.     /*!
  412.     Used to map this material to the material name used by TSShape.
  413.    
  414.      */
  415.     string mapTo;
  416.     /*!
  417.     Streamable material
  418.    
  419.      */
  420.     bool streamable;
  421.     /*!
  422.     Usage of custom color.
  423.    
  424.      */
  425.     bool useCustomColor;
  426.     /*!
  427.     is this material a body
  428.    
  429.      */
  430.     bool isBody;
  431.     /*!
  432.     is this mat is hair
  433.    
  434.      */
  435.     bool isHair;
  436.     /*!
  437.     This color is multiplied against the diffuse texture color.  If no diffuse texture is present this is the material color.
  438.    
  439.      */
  440.     ColorF diffuseColor;
  441.     /*!
  442.     The diffuse color texture map.
  443.    
  444.      */
  445.     filename diffuseMap;
  446.     /*!
  447.     A secondary diffuse color texture map which will use the second texcoord of a mesh.
  448.    
  449.      */
  450.     filename overlayMap;
  451.     /*!
  452.     The lightmap texture used with pureLight.
  453.    
  454.      */
  455.     filename lightMap;
  456.     /*!
  457.     The tonemap texture used with pureLight.
  458.    
  459.      */
  460.     filename toneMap;
  461.     /*!
  462.     A typically greyscale detail texture additively blended into the material.
  463.    
  464.      */
  465.     filename detailMap;
  466.     /*!
  467.     The scale factor for the detail map.
  468.    
  469.      */
  470.     Point2F detailScale;
  471.     /*!
  472.     The normal map texture.  You can use the DXTnm format only when per-pixel specular highlights are disabled, or a specular map is in use.
  473.    
  474.      */
  475.     filename normalMap;
  476.     /*!
  477.     A second normal map texture applied at the detail scale.  You can use the DXTnm format only when per-pixel specular highlights are disabled.
  478.    
  479.      */
  480.     filename detailNormalMap;
  481.     /*!
  482.    
  483.    
  484.      */
  485.     int diffuseMapDropMipMapCount;
  486.     /*!
  487.    
  488.    
  489.      */
  490.     int overlayMapDropMipMapCount;
  491.     /*!
  492.    
  493.    
  494.      */
  495.     int lightMapDropMipMapCount;
  496.     /*!
  497.    
  498.    
  499.      */
  500.     int toneMapDropMipMapCount;
  501.     /*!
  502.    
  503.    
  504.      */
  505.     int detailMapDropMipMapCount;
  506.     /*!
  507.    
  508.    
  509.      */
  510.     int normalMapDropMipMapCount;
  511.     /*!
  512.    
  513.    
  514.      */
  515.     int detailNormalMapDropMipMapCount;
  516.     /*!
  517.     Used to scale the strength of the detail normal map when blended with the base normal map.
  518.    
  519.      */
  520.     float detailNormalMapStrength;
  521.     /*!
  522.     The color of the specular highlight when not using a specularMap.
  523.    
  524.      */
  525.     ColorF specular;
  526.     /*!
  527.     The intensity of the specular highlight when not using a specularMap.
  528.    
  529.      */
  530.     float specularPower;
  531.     /*!
  532.     This enables per-pixel specular highlights controlled by the alpha channel of the normal map texture.  Note that if pixel specular is enabled the DXTnm format will not work with your normal map, unless you are also using a specular map.
  533.    
  534.      */
  535.     bool pixelSpecular;
  536.     /*!
  537.     The specular map texture. The RGB channels of this texture provide a per-pixel replacement for the 'specular' parameter on the material. If this texture contains alpha information, the alpha channel of the texture will be used as the gloss map. This provides a per-pixel replacement for the 'specularPower' on the material
  538.    
  539.      */
  540.     filename specularMap;
  541.     /*!
  542.    
  543.    
  544.      */
  545.     int specularMapDropMipMapCount;
  546.     /*!
  547.     Enables parallax mapping and defines the scale factor for the parallax effect.  Typically this value is less than 0.4 else the effect breaks down.
  548.    
  549.      */
  550.     float parallaxScale;
  551.     /*!
  552.     Use anisotropic filtering for the textures of this stage.
  553.    
  554.      */
  555.     bool useAnisotropic;
  556.     /*!
  557.     Treat specular map as metalness map.
  558.    
  559.      */
  560.     bool useMetalness;
  561.     /*!
  562.     The name of a translucency map to apply to this material.
  563.    
  564.      */
  565.     filename translucencyMap;
  566.     /*!
  567.     The name of an environment map cube map to apply to this material.
  568.    
  569.      */
  570.     filename envMap;
  571.     /*!
  572.    
  573.    
  574.      */
  575.     int envMapDropMipMapCount;
  576.     /*!
  577.     If true the vertex color is used for lighting.
  578.    
  579.      */
  580.     bool vertLit;
  581.     /*!
  582.     If enabled, vertex colors are premultiplied with diffuse colors.
  583.    
  584.      */
  585.     bool vertColor;
  586.     /*!
  587.     The Minnaert shading constant value.  Must be greater than 0 to enable the effect.
  588.    
  589.      */
  590.     float minnaertConstant;
  591.     /*!
  592.     Enables the subsurface scattering approximation.
  593.    
  594.      */
  595.     bool subSurface;
  596.     /*!
  597.     The color used for the subsurface scattering approximation.
  598.    
  599.      */
  600.     ColorF subSurfaceColor;
  601.     /*!
  602.     The 0 to 1 rolloff factor used in the subsurface scattering approximation.
  603.    
  604.      */
  605.     float subSurfaceRolloff;
  606.     /*!
  607.     Enables rendering this material to the glow buffer.
  608.    
  609.      */
  610.     bool glow;
  611.     /*!
  612.     Enables emissive lighting for the material.
  613.    
  614.      */
  615.     bool emissive;
  616.     /*!
  617.     Disables backface culling casing surfaces to be double sided. Note that the lighting on the backside will be a mirror of the front side of the surface.
  618.    
  619.      */
  620.     bool doubleSided;
  621.     /*!
  622.     Normals up marker.
  623.    
  624.      */
  625.     bool normalsUp;
  626.     /*!
  627.     The types of animation to play on this material.
  628.    
  629.      */
  630.     MaterialAnimType animFlags;
  631.     /*!
  632.     The scroll direction in UV space when scroll animation is enabled.
  633.    
  634.      */
  635.     Point2F scrollDir;
  636.     /*!
  637.     The speed to scroll the texture in UVs per second when scroll animation is enabled.
  638.    
  639.      */
  640.     float scrollSpeed;
  641.     /*!
  642.     The speed to rotate the texture in degrees per second when rotation animation is enabled.
  643.    
  644.      */
  645.     float rotSpeed;
  646.     /*!
  647.     The piviot position in UV coordinates to center the rotation animation.
  648.    
  649.      */
  650.     Point2F rotPivotOffset;
  651.     /*!
  652.     The type of wave animation to perform when wave animation is enabled.
  653.    
  654.      */
  655.     MaterialWaveType waveType;
  656.     /*!
  657.     The wave frequency when wave animation is enabled.
  658.    
  659.      */
  660.     float waveFreq;
  661.     /*!
  662.     The wave amplitude when wave animation is enabled.
  663.    
  664.      */
  665.     float waveAmp;
  666.     /*!
  667.     The number of frames per second for frame based sequence animations if greater than zero.
  668.    
  669.      */
  670.     float sequenceFramePerSec;
  671.     /*!
  672.     The size of each frame in UV units for sequence animations.
  673.    
  674.      */
  675.     float sequenceSegmentSize;
  676.     /*!
  677.     @internal
  678.    
  679.      */
  680.     Point2I cellIndex;
  681.     /*!
  682.     @internal
  683.    
  684.      */
  685.     Point2I cellLayout;
  686.     /*!
  687.     @internal
  688.    
  689.      */
  690.     int cellSize;
  691.     /*!
  692.     @internal
  693.    
  694.      */
  695.     bool bumpAtlas;
  696.     /*!
  697.     For backwards compatibility.
  698. @see diffuseMap
  699.  
  700.    
  701.      */
  702.     filename baseTex;
  703.     /*!
  704.     For backwards compatibility.
  705. @see detailMap
  706.  
  707.    
  708.      */
  709.     filename detailTex;
  710.     /*!
  711.     For backwards compatibility.
  712. @see overlayMap
  713.  
  714.    
  715.      */
  716.     filename overlayTex;
  717.     /*!
  718.     For backwards compatibility.
  719. @see normalMap
  720.  
  721.    
  722.      */
  723.     filename bumpTex;
  724.     /*!
  725.     For backwards compatibility.
  726. @see envMap
  727.  
  728.    
  729.      */
  730.     filename envTex;
  731.     /*!
  732.     For backwards compatibility.
  733. @see diffuseColor
  734.  
  735.    
  736.      */
  737.     ColorF colorMultiply;
  738.     /*!
  739.     If set to false the lighting system will not cast shadows from this material.
  740.    
  741.      */
  742.     bool castShadows;
  743.     /*!
  744.     @internal
  745.    
  746.      */
  747.     bool planarReflection;
  748.     /*!
  749.     If true this material is translucent blended.
  750.    
  751.      */
  752.     bool translucent;
  753.     /*!
  754.     The type of blend operation to use when the material is translucent.
  755.    
  756.      */
  757.     MaterialBlendOp translucentBlendOp;
  758.     /*!
  759.     If enabled and the material is translucent it will write into the depth buffer.
  760.    
  761.      */
  762.     bool translucentZWrite;
  763.     /*!
  764.     Enables alpha test when rendering the material.
  765. @see alphaRef
  766.  
  767.    
  768.      */
  769.     bool alphaTest;
  770.     /*!
  771.     The alpha reference value for alpha testing.  Must be between 0 to 255.
  772. @see alphaTest
  773.  
  774.    
  775.      */
  776.     int alphaRef;
  777.     /*!
  778.     Mipmap LOD bias. Default value is 0.0
  779.    
  780.      */
  781.     float mipLODBias;
  782.     /*!
  783.     The name of a CubemapData for environment mapping.
  784.    
  785.      */
  786.     string cubemap;
  787.     /*!
  788.     Enables the material to use the dynamic cubemap from the ShapeBase object its applied to.
  789.    
  790.      */
  791.     bool dynamicCubemap;
  792.     /*!
  793.     Sky support. Alters draw dimensions.
  794.    
  795.      */
  796.     bool isSky;
  797.  
  798.     /*! @name Behavioral
  799.     @{ */
  800.     /*! */
  801.     /*!
  802.     Whether to show player footprint decals on this material.
  803.  
  804. @see PlayerData::decalData
  805.    
  806.      */
  807.     bool showFootprints;
  808.     /*!
  809.     Whether to emit dust particles from a shape moving over the material.  This is, for example, used by vehicles or players to decide whether to show dust trails.
  810.    
  811.      */
  812.     bool showDust;
  813.     /*!
  814.     If #showDust is true, this is the set of colors to use for the ParticleData of the dust emitter.
  815.  
  816. @see ParticleData::colors
  817.    
  818.      */
  819.     ColorF effectColor;
  820.     /*!
  821.     What sound to play from the PlayerData sound list when the player impacts on the surface with a velocity equal or greater than PlayerData::groundImpactMinSpeed.
  822.  
  823. For a list of IDs, see #footstepSoundId
  824.    
  825.      */
  826.     int impactSoundId;
  827.     /*!
  828.     The sound to play when the player impacts on the surface with a velocity equal or greater than PlayerData::groundImpactMinSpeed.  If this is set, it overrides #impactSoundId.  This field is useful for directly assigning custom impact sounds to materials without having to rely on the PlayerData sound assignment.
  829.  
  830. @warn Be aware that materials are client-side objects.  This means that the SFXTracks assigned to materials must be client-side, too.
  831.    
  832.      */
  833.     SFXTrack customImpactSound;
  834.     /// @}
  835.  
  836.  
  837.     /*! @name Ungrouped
  838.     @{ */
  839.     /*! */
  840.     /// @}
  841.  
  842.  
  843.     /*! @name Object
  844.     @{ */
  845.     /*! */
  846.     /// @}
  847.  
  848.  
  849.     /*! @name Editing
  850.     @{ */
  851.     /*! */
  852.     /// @}
  853.  
  854.  
  855.     /*! @name Persistence
  856.     @{ */
  857.     /*! */
  858.     /// @}
  859.  
  860.  };
  861.  
  862.  /// Stub class
  863.  ///
  864.  /// @note This is a stub class to ensure a proper class hierarchy. No
  865.  ///       information was available for this class.
  866.  class  CommonPlayerFootprint : public Material {
  867.    public:
  868.  };
  869.  
  870.  /// Stub class
  871.  ///
  872.  /// @note This is a stub class to ensure a proper class hierarchy. No
  873.  ///       information was available for this class.
  874.  class  AnimalFootMarkMat : public Material {
  875.    public:
  876.  };
  877.  
  878.  /// Stub class
  879.  ///
  880.  /// @note This is a stub class to ensure a proper class hierarchy. No
  881.  ///       information was available for this class.
  882.  class  DECAL_defaultblobshadow : public Material {
  883.    public:
  884.  };
  885.  
  886.  /// Stub class
  887.  ///
  888.  /// @note This is a stub class to ensure a proper class hierarchy. No
  889.  ///       information was available for this class.
  890.  class  DECAL_RocketEXP : public Material {
  891.    public:
  892.  };
  893.  
  894.  /// Stub class
  895.  ///
  896.  /// @note This is a stub class to ensure a proper class hierarchy. No
  897.  ///       information was available for this class.
  898.  class  DECAL_scorch : public Material {
  899.    public:
  900.  };
  901.  
  902.  /// Stub class
  903.  ///
  904.  /// @note This is a stub class to ensure a proper class hierarchy. No
  905.  ///       information was available for this class.
  906.  class  Fkrestiane_mat : public Material {
  907.    public:
  908.  };
  909.  
  910.  /// Stub class
  911.  ///
  912.  /// @note This is a stub class to ensure a proper class hierarchy. No
  913.  ///       information was available for this class.
  914.  class  famale_decorated_diff_mat : public Material {
  915.    public:
  916.  };
  917.  
  918.  /// Stub class
  919.  ///
  920.  /// @note This is a stub class to ensure a proper class hierarchy. No
  921.  ///       information was available for this class.
  922.  class  famale_robe_D_mat : public Material {
  923.    public:
  924.  };
  925.  
  926.  /// Stub class
  927.  ///
  928.  /// @note This is a stub class to ensure a proper class hierarchy. No
  929.  ///       information was available for this class.
  930.  class  famale_MnishiyD_mat : public Material {
  931.    public:
  932.  };
  933.  
  934.  /// Stub class
  935.  ///
  936.  /// @note This is a stub class to ensure a proper class hierarchy. No
  937.  ///       information was available for this class.
  938.  class  famale_engineer_diff_mat : public Material {
  939.    public:
  940.  };
  941.  
  942.  /// Stub class
  943.  ///
  944.  /// @note This is a stub class to ensure a proper class hierarchy. No
  945.  ///       information was available for this class.
  946.  class  famale_carpenter_diff_mat : public Material {
  947.    public:
  948.  };
  949.  
  950.  /// Stub class
  951.  ///
  952.  /// @note This is a stub class to ensure a proper class hierarchy. No
  953.  ///       information was available for this class.
  954.  class  famale_blacksmith_diff_mat : public Material {
  955.    public:
  956.  };
  957.  
  958.  /// Stub class
  959.  ///
  960.  /// @note This is a stub class to ensure a proper class hierarchy. No
  961.  ///       information was available for this class.
  962.  class  famale_alchemisk_diff_mat : public Material {
  963.    public:
  964.  };
  965.  
  966.  /// Stub class
  967.  ///
  968.  /// @note This is a stub class to ensure a proper class hierarchy. No
  969.  ///       information was available for this class.
  970.  class  famale_cook_diff_mat : public Material {
  971.    public:
  972.  };
  973.  
  974.  /// Stub class
  975.  ///
  976.  /// @note This is a stub class to ensure a proper class hierarchy. No
  977.  ///       information was available for this class.
  978.  class  Female_Tatters_Mon_DIFFUSE_mat : public Material {
  979.    public:
  980.  };
  981.  
  982.  /// Stub class
  983.  ///
  984.  /// @note This is a stub class to ensure a proper class hierarchy. No
  985.  ///       information was available for this class.
  986.  class  Female_Tatters_Eur_DIFFUSE_mat : public Material {
  987.    public:
  988.  };
  989.  
  990.  /// Stub class
  991.  ///
  992.  /// @note This is a stub class to ensure a proper class hierarchy. No
  993.  ///       information was available for this class.
  994.  class  Female_Tatters_Vik_DIFFUSE_mat : public Material {
  995.    public:
  996.  };
  997.  
  998.  /// Stub class
  999.  ///
  1000.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1001.  ///       information was available for this class.
  1002.  class  Female_Underwear_Mon_DIFFUSE_mat : public Material {
  1003.    public:
  1004.  };
  1005.  
  1006.  /// Stub class
  1007.  ///
  1008.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1009.  ///       information was available for this class.
  1010.  class  Female_Underwear_Vik_DIFFUSE_mat : public Material {
  1011.    public:
  1012.  };
  1013.  
  1014.  /// Stub class
  1015.  ///
  1016.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1017.  ///       information was available for this class.
  1018.  class  Female_Underwear_Eur_DIFFUSE_mat : public Material {
  1019.    public:
  1020.  };
  1021.  
  1022.  /// Stub class
  1023.  ///
  1024.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1025.  ///       information was available for this class.
  1026.  class  Female_Hair_Vik_v3_DIFFUSE_mat : public Material {
  1027.    public:
  1028.  };
  1029.  
  1030.  /// Stub class
  1031.  ///
  1032.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1033.  ///       information was available for this class.
  1034.  class  Female_Hair_Vik_v1_DIFFUSE_mat : public Material {
  1035.    public:
  1036.  };
  1037.  
  1038.  /// Stub class
  1039.  ///
  1040.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1041.  ///       information was available for this class.
  1042.  class  Female_Hair_Mon_v3_DIFFUSE_mat : public Material {
  1043.    public:
  1044.  };
  1045.  
  1046.  /// Stub class
  1047.  ///
  1048.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1049.  ///       information was available for this class.
  1050.  class  Female_Hair_Mon_v1_DIFFUSE_mat : public Material {
  1051.    public:
  1052.  };
  1053.  
  1054.  /// Stub class
  1055.  ///
  1056.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1057.  ///       information was available for this class.
  1058.  class  Female_Hair_Eur_v2_DIFFUSE_mat : public Material {
  1059.    public:
  1060.  };
  1061.  
  1062.  /// Stub class
  1063.  ///
  1064.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1065.  ///       information was available for this class.
  1066.  class  Female_Hair_All_v3_DIFFUSE_mat : public Material {
  1067.    public:
  1068.  };
  1069.  
  1070.  /// Stub class
  1071.  ///
  1072.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1073.  ///       information was available for this class.
  1074.  class  Female_Hair_All_v1_DIFFUSE_mat : public Material {
  1075.    public:
  1076.  };
  1077.  
  1078.  /// Stub class
  1079.  ///
  1080.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1081.  ///       information was available for this class.
  1082.  class  Female_Head_Vik_v1_DIFFUSE_mat : public Material {
  1083.    public:
  1084.  };
  1085.  
  1086.  /// Stub class
  1087.  ///
  1088.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1089.  ///       information was available for this class.
  1090.  class  Female_Head_Mon_v1_DIFFUSE_mat : public Material {
  1091.    public:
  1092.  };
  1093.  
  1094.  /// Stub class
  1095.  ///
  1096.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1097.  ///       information was available for this class.
  1098.  class  Female_Head_Eur_v1_DIFFUSE_mat : public Material {
  1099.    public:
  1100.  };
  1101.  
  1102.  /// Stub class
  1103.  ///
  1104.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1105.  ///       information was available for this class.
  1106.  class  Female_Body_v1_DIFFUSE_mat : public Material {
  1107.    public:
  1108.  };
  1109.  
  1110.  /// Stub class
  1111.  ///
  1112.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1113.  ///       information was available for this class.
  1114.  class  MnishiyD_mat : public Material {
  1115.    public:
  1116.  };
  1117.  
  1118.  /// Stub class
  1119.  ///
  1120.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1121.  ///       information was available for this class.
  1122.  class  all_D_01_mat : public Material {
  1123.    public:
  1124.  };
  1125.  
  1126.  /// Stub class
  1127.  ///
  1128.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1129.  ///       information was available for this class.
  1130.  class  male_decorated_diff_mat : public Material {
  1131.    public:
  1132.  };
  1133.  
  1134.  /// Stub class
  1135.  ///
  1136.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1137.  ///       information was available for this class.
  1138.  class  Male_cook_diff_mat : public Material {
  1139.    public:
  1140.  };
  1141.  
  1142.  /// Stub class
  1143.  ///
  1144.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1145.  ///       information was available for this class.
  1146.  class  male_carpenter_diff_mat : public Material {
  1147.    public:
  1148.  };
  1149.  
  1150.  /// Stub class
  1151.  ///
  1152.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1153.  ///       information was available for this class.
  1154.  class  MkuznecD_mat : public Material {
  1155.    public:
  1156.  };
  1157.  
  1158.  /// Stub class
  1159.  ///
  1160.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1161.  ///       information was available for this class.
  1162.  class  male_alchemisk_diff_mat : public Material {
  1163.    public:
  1164.  };
  1165.  
  1166.  /// Stub class
  1167.  ///
  1168.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1169.  ///       information was available for this class.
  1170.  class  male_engineer_diff_mat : public Material {
  1171.    public:
  1172.  };
  1173.  
  1174.  /// Stub class
  1175.  ///
  1176.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1177.  ///       information was available for this class.
  1178.  class  Mkrestiane_mat : public Material {
  1179.    public:
  1180.  };
  1181.  
  1182.  /// Stub class
  1183.  ///
  1184.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1185.  ///       information was available for this class.
  1186.  class  Male_Antiseam_DIFFUSE_mat : public Material {
  1187.    public:
  1188.  };
  1189.  
  1190.  /// Stub class
  1191.  ///
  1192.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1193.  ///       information was available for this class.
  1194.  class  Male_Underwear_Eur_DIFFUSE_mat : public Material {
  1195.    public:
  1196.  };
  1197.  
  1198.  /// Stub class
  1199.  ///
  1200.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1201.  ///       information was available for this class.
  1202.  class  Male_Tatters_Mon_DIFFUSE_mat : public Material {
  1203.    public:
  1204.  };
  1205.  
  1206.  /// Stub class
  1207.  ///
  1208.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1209.  ///       information was available for this class.
  1210.  class  Male_Tatters_Vik_DIFFUSE_mat : public Material {
  1211.    public:
  1212.  };
  1213.  
  1214.  /// Stub class
  1215.  ///
  1216.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1217.  ///       information was available for this class.
  1218.  class  Male_Head_Vik_v1_DIFFUSE_mat : public Material {
  1219.    public:
  1220.  };
  1221.  
  1222.  /// Stub class
  1223.  ///
  1224.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1225.  ///       information was available for this class.
  1226.  class  Male_Head_Mon_v1_DIFFUSE_mat : public Material {
  1227.    public:
  1228.  };
  1229.  
  1230.  /// Stub class
  1231.  ///
  1232.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1233.  ///       information was available for this class.
  1234.  class  Male_Head_Eur_v1_DIFFUSE_mat : public Material {
  1235.    public:
  1236.  };
  1237.  
  1238.  /// Stub class
  1239.  ///
  1240.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1241.  ///       information was available for this class.
  1242.  class  Male_Hair_Vik_v2_DIFFUSE_mat : public Material {
  1243.    public:
  1244.  };
  1245.  
  1246.  /// Stub class
  1247.  ///
  1248.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1249.  ///       information was available for this class.
  1250.  class  Male_Hair_Mon_v4_DIFFUSE_mat : public Material {
  1251.    public:
  1252.  };
  1253.  
  1254.  /// Stub class
  1255.  ///
  1256.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1257.  ///       information was available for this class.
  1258.  class  Male_Hair_Mon_v2_DIFFUSE_mat : public Material {
  1259.    public:
  1260.  };
  1261.  
  1262.  /// Stub class
  1263.  ///
  1264.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1265.  ///       information was available for this class.
  1266.  class  Male_Hair_Eur_v1_DIFFUSE_mat : public Material {
  1267.    public:
  1268.  };
  1269.  
  1270.  /// Stub class
  1271.  ///
  1272.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1273.  ///       information was available for this class.
  1274.  class  Male_Hair_All_v4_DIFFUSE_mat : public Material {
  1275.    public:
  1276.  };
  1277.  
  1278.  /// Stub class
  1279.  ///
  1280.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1281.  ///       information was available for this class.
  1282.  class  Male_Hair_All_v2_DIFFUSE_mat : public Material {
  1283.    public:
  1284.  };
  1285.  
  1286.  /// Stub class
  1287.  ///
  1288.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1289.  ///       information was available for this class.
  1290.  class  Male_Hair_All_v1_DIFFUSE_mat : public Material {
  1291.    public:
  1292.  };
  1293.  
  1294.  /// Stub class
  1295.  ///
  1296.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1297.  ///       information was available for this class.
  1298.  class  Male_Body_v1_DIFFUSE_mat : public Material {
  1299.    public:
  1300.  };
  1301.  
  1302.  /// Stub class
  1303.  ///
  1304.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1305.  ///       information was available for this class.
  1306.  class  Male_Beard_Vik_v4_DIFFUSE_mat : public Material {
  1307.    public:
  1308.  };
  1309.  
  1310.  /// Stub class
  1311.  ///
  1312.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1313.  ///       information was available for this class.
  1314.  class  Male_Beard_Vik_v1_DIFFUSE_mat : public Material {
  1315.    public:
  1316.  };
  1317.  
  1318.  /// Stub class
  1319.  ///
  1320.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1321.  ///       information was available for this class.
  1322.  class  Male_Beard_Mon_v4_DIFFUSE_mat : public Material {
  1323.    public:
  1324.  };
  1325.  
  1326.  /// Stub class
  1327.  ///
  1328.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1329.  ///       information was available for this class.
  1330.  class  Male_Beard_Mon_v3_DIFFUSE_mat : public Material {
  1331.    public:
  1332.  };
  1333.  
  1334.  /// Stub class
  1335.  ///
  1336.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1337.  ///       information was available for this class.
  1338.  class  Male_Beard_Eur_v3_DIFFUSE_mat : public Material {
  1339.    public:
  1340.  };
  1341.  
  1342.  /// Stub class
  1343.  ///
  1344.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1345.  ///       information was available for this class.
  1346.  class  Male_Beard_All_v4_DIFFUSE_mat2 : public Material {
  1347.    public:
  1348.  };
  1349.  
  1350.  /// Stub class
  1351.  ///
  1352.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1353.  ///       information was available for this class.
  1354.  class  Male_Beard_All_v2_DIFFUSE_mat : public Material {
  1355.    public:
  1356.  };
  1357.  
  1358.  /// Stub class
  1359.  ///
  1360.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1361.  ///       information was available for this class.
  1362.  class  shops_04_atlas_diff_mat : public Material {
  1363.    public:
  1364.  };
  1365.  
  1366.  /// Stub class
  1367.  ///
  1368.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1369.  ///       information was available for this class.
  1370.  class  WindowGrille_diff_mat : public Material {
  1371.    public:
  1372.  };
  1373.  
  1374.  /// Stub class
  1375.  ///
  1376.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1377.  ///       information was available for this class.
  1378.  class  wooden_sign_diff_mat : public Material {
  1379.    public:
  1380.  };
  1381.  
  1382.  /// Stub class
  1383.  ///
  1384.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1385.  ///       information was available for this class.
  1386.  class  shops_03_atlas_diff_mat : public Material {
  1387.    public:
  1388.  };
  1389.  
  1390.  /// Stub class
  1391.  ///
  1392.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1393.  ///       information was available for this class.
  1394.  class  fishnet_diff_mat : public Material {
  1395.    public:
  1396.  };
  1397.  
  1398.  /// Stub class
  1399.  ///
  1400.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1401.  ///       information was available for this class.
  1402.  class  grenade_diff_mat : public Material {
  1403.    public:
  1404.  };
  1405.  
  1406.  /// Stub class
  1407.  ///
  1408.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1409.  ///       information was available for this class.
  1410.  class  Metall_atlas_01_diff_mat : public Material {
  1411.    public:
  1412.  };
  1413.  
  1414.  /// Stub class
  1415.  ///
  1416.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1417.  ///       information was available for this class.
  1418.  class  Trebushet_planks_02_diff_mat : public Material {
  1419.    public:
  1420.  };
  1421.  
  1422.  /// Stub class
  1423.  ///
  1424.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1425.  ///       information was available for this class.
  1426.  class  Trebushet_planks_01_diff_mat : public Material {
  1427.    public:
  1428.  };
  1429.  
  1430.  /// Stub class
  1431.  ///
  1432.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1433.  ///       information was available for this class.
  1434.  class  Trebushet_atlas_02_diff_mat : public Material {
  1435.    public:
  1436.  };
  1437.  
  1438.  /// Stub class
  1439.  ///
  1440.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1441.  ///       information was available for this class.
  1442.  class  Trebushet_atlas_01_diff_mat : public Material {
  1443.    public:
  1444.  };
  1445.  
  1446.  /// Stub class
  1447.  ///
  1448.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1449.  ///       information was available for this class.
  1450.  class  Heavy_Horse_clr3_mat : public Material {
  1451.    public:
  1452.  };
  1453.  
  1454.  /// Stub class
  1455.  ///
  1456.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1457.  ///       information was available for this class.
  1458.  class  Heavy_Horse_clr2_mat : public Material {
  1459.    public:
  1460.  };
  1461.  
  1462.  /// Stub class
  1463.  ///
  1464.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1465.  ///       information was available for this class.
  1466.  class  Heavy_Horse_base_mat : public Material {
  1467.    public:
  1468.  };
  1469.  
  1470.  /// Stub class
  1471.  ///
  1472.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1473.  ///       information was available for this class.
  1474.  class  Skinny_Horse_brown_mat : public Material {
  1475.    public:
  1476.  };
  1477.  
  1478.  /// Stub class
  1479.  ///
  1480.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1481.  ///       information was available for this class.
  1482.  class  Skinny_Horse_bw_mat : public Material {
  1483.    public:
  1484.  };
  1485.  
  1486.  /// Stub class
  1487.  ///
  1488.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1489.  ///       information was available for this class.
  1490.  class  Skinny_Horse_base_mat : public Material {
  1491.    public:
  1492.  };
  1493.  
  1494.  /// Stub class
  1495.  ///
  1496.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1497.  ///       information was available for this class.
  1498.  class  Normal_Horse_brown_mat : public Material {
  1499.    public:
  1500.  };
  1501.  
  1502.  /// Stub class
  1503.  ///
  1504.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1505.  ///       information was available for this class.
  1506.  class  Horse_DIFFUSE_BLACK_01_mat : public Material {
  1507.    public:
  1508.  };
  1509.  
  1510.  /// Stub class
  1511.  ///
  1512.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1513.  ///       information was available for this class.
  1514.  class  Normal_Horse_black_mat : public Material {
  1515.    public:
  1516.  };
  1517.  
  1518.  /// Stub class
  1519.  ///
  1520.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1521.  ///       information was available for this class.
  1522.  class  Normal_Horse_base_mat : public Material {
  1523.    public:
  1524.  };
  1525.  
  1526.  /// Stub class
  1527.  ///
  1528.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1529.  ///       information was available for this class.
  1530.  class  LOD100_atlas_02_06_mat : public Material {
  1531.    public:
  1532.  };
  1533.  
  1534.  /// Stub class
  1535.  ///
  1536.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1537.  ///       information was available for this class.
  1538.  class  LOD100_atlas_04_mat : public Material {
  1539.    public:
  1540.  };
  1541.  
  1542.  /// Stub class
  1543.  ///
  1544.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1545.  ///       information was available for this class.
  1546.  class  brick_2_mat : public Material {
  1547.    public:
  1548.  };
  1549.  
  1550.  /// Stub class
  1551.  ///
  1552.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1553.  ///       information was available for this class.
  1554.  class  wall_metal_mat : public Material {
  1555.    public:
  1556.  };
  1557.  
  1558.  /// Stub class
  1559.  ///
  1560.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1561.  ///       information was available for this class.
  1562.  class  brick_3_mat : public Material {
  1563.    public:
  1564.  };
  1565.  
  1566.  /// Stub class
  1567.  ///
  1568.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1569.  ///       information was available for this class.
  1570.  class  Rock_diff_mat : public Material {
  1571.    public:
  1572.  };
  1573.  
  1574.  /// Stub class
  1575.  ///
  1576.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1577.  ///       information was available for this class.
  1578.  class  herbal_plants_atlas_diff_mat : public Material {
  1579.    public:
  1580.  };
  1581.  
  1582.  /// Stub class
  1583.  ///
  1584.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1585.  ///       information was available for this class.
  1586.  class  throne_diff_mat : public Material {
  1587.    public:
  1588.  };
  1589.  
  1590.  /// Stub class
  1591.  ///
  1592.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1593.  ///       information was available for this class.
  1594.  class  Decal_Mud_diff_mat : public Material {
  1595.    public:
  1596.  };
  1597.  
  1598.  /// Stub class
  1599.  ///
  1600.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1601.  ///       information was available for this class.
  1602.  class  LOD100_atlas_03_mat : public Material {
  1603.    public:
  1604.  };
  1605.  
  1606.  /// Stub class
  1607.  ///
  1608.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1609.  ///       information was available for this class.
  1610.  class  LOD100_atlas_02_mat : public Material {
  1611.    public:
  1612.  };
  1613.  
  1614.  /// Stub class
  1615.  ///
  1616.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1617.  ///       information was available for this class.
  1618.  class  LOD100_house_atlas_01_mat : public Material {
  1619.    public:
  1620.  };
  1621.  
  1622.  /// Stub class
  1623.  ///
  1624.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1625.  ///       information was available for this class.
  1626.  class  robe_D_male_mat : public Material {
  1627.    public:
  1628.  };
  1629.  
  1630.  /// Stub class
  1631.  ///
  1632.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1633.  ///       information was available for this class.
  1634.  class  Rope_1_diff_mat : public Material {
  1635.    public:
  1636.  };
  1637.  
  1638.  /// Stub class
  1639.  ///
  1640.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1641.  ///       information was available for this class.
  1642.  class  stone_big_angle_diff_mat : public Material {
  1643.    public:
  1644.  };
  1645.  
  1646.  /// Stub class
  1647.  ///
  1648.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1649.  ///       information was available for this class.
  1650.  class  rBlast_mat : public Material {
  1651.    public:
  1652.  };
  1653.  
  1654.  /// Stub class
  1655.  ///
  1656.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1657.  ///       information was available for this class.
  1658.  class  roof_tile_2_alpha_diff_mat : public Material {
  1659.    public:
  1660.  };
  1661.  
  1662.  /// Stub class
  1663.  ///
  1664.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1665.  ///       information was available for this class.
  1666.  class  Rope_2_diff_mat : public Material {
  1667.    public:
  1668.  };
  1669.  
  1670.  /// Stub class
  1671.  ///
  1672.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1673.  ///       information was available for this class.
  1674.  class  House_plants_01_diff_mat : public Material {
  1675.    public:
  1676.  };
  1677.  
  1678.  /// Stub class
  1679.  ///
  1680.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1681.  ///       information was available for this class.
  1682.  class  House_detail_atlas_1_diff_mat : public Material {
  1683.    public:
  1684.  };
  1685.  
  1686.  /// Stub class
  1687.  ///
  1688.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1689.  ///       information was available for this class.
  1690.  class  fakhverk_atlas_02_diff_mat : public Material {
  1691.    public:
  1692.  };
  1693.  
  1694.  /// Stub class
  1695.  ///
  1696.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1697.  ///       information was available for this class.
  1698.  class  wood_roof_01_alpha_diff_mat : public Material {
  1699.    public:
  1700.  };
  1701.  
  1702.  /// Stub class
  1703.  ///
  1704.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1705.  ///       information was available for this class.
  1706.  class  tombstone_02_diff_mat : public Material {
  1707.    public:
  1708.  };
  1709.  
  1710.  /// Stub class
  1711.  ///
  1712.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1713.  ///       information was available for this class.
  1714.  class  tombstone_01_diff_mat : public Material {
  1715.    public:
  1716.  };
  1717.  
  1718.  /// Stub class
  1719.  ///
  1720.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1721.  ///       information was available for this class.
  1722.  class  glass_broken_diff_mat : public Material {
  1723.    public:
  1724.  };
  1725.  
  1726.  /// Stub class
  1727.  ///
  1728.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1729.  ///       information was available for this class.
  1730.  class  glass_diff_mat : public Material {
  1731.    public:
  1732.  };
  1733.  
  1734.  /// Stub class
  1735.  ///
  1736.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1737.  ///       information was available for this class.
  1738.  class  cloth_01_diff_mat : public Material {
  1739.    public:
  1740.  };
  1741.  
  1742.  /// Stub class
  1743.  ///
  1744.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1745.  ///       information was available for this class.
  1746.  class  Decal_HangingIvy_diff_mat : public Material {
  1747.    public:
  1748.  };
  1749.  
  1750.  /// Stub class
  1751.  ///
  1752.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1753.  ///       information was available for this class.
  1754.  class  Decal_Lichens_diff_mat : public Material {
  1755.    public:
  1756.  };
  1757.  
  1758.  /// Stub class
  1759.  ///
  1760.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1761.  ///       information was available for this class.
  1762.  class  roof_tile_mat : public Material {
  1763.    public:
  1764.  };
  1765.  
  1766.  /// Stub class
  1767.  ///
  1768.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1769.  ///       information was available for this class.
  1770.  class  Moss_Log_diff_mat : public Material {
  1771.    public:
  1772.  };
  1773.  
  1774.  /// Stub class
  1775.  ///
  1776.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1777.  ///       information was available for this class.
  1778.  class  Decal_Streaks_diff_mat : public Material {
  1779.    public:
  1780.  };
  1781.  
  1782.  /// Stub class
  1783.  ///
  1784.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1785.  ///       information was available for this class.
  1786.  class  moss_diff_mat : public Material {
  1787.    public:
  1788.  };
  1789.  
  1790.  /// Stub class
  1791.  ///
  1792.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1793.  ///       information was available for this class.
  1794.  class  planks_03_diff_mat : public Material {
  1795.    public:
  1796.  };
  1797.  
  1798.  /// Stub class
  1799.  ///
  1800.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1801.  ///       information was available for this class.
  1802.  class  all_plants_diff_mat : public Material {
  1803.    public:
  1804.  };
  1805.  
  1806.  /// Stub class
  1807.  ///
  1808.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1809.  ///       information was available for this class.
  1810.  class  skinnedcorpse_diff_mat : public Material {
  1811.    public:
  1812.  };
  1813.  
  1814.  /// Stub class
  1815.  ///
  1816.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1817.  ///       information was available for this class.
  1818.  class  wood_floor_01_diff_mat2 : public Material {
  1819.    public:
  1820.  };
  1821.  
  1822.  /// Stub class
  1823.  ///
  1824.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1825.  ///       information was available for this class.
  1826.  class  Face_Asia_Aneta_DIFFUSE_01_mat : public Material {
  1827.    public:
  1828.  };
  1829.  
  1830.  /// Stub class
  1831.  ///
  1832.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1833.  ///       information was available for this class.
  1834.  class  TD_01_ThrowingKnife : public Material {
  1835.    public:
  1836.  };
  1837.  
  1838.  /// Stub class
  1839.  ///
  1840.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1841.  ///       information was available for this class.
  1842.  class  Hair_Female_DIFFUSE_01_mat : public Material {
  1843.    public:
  1844.  };
  1845.  
  1846.  /// Stub class
  1847.  ///
  1848.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1849.  ///       information was available for this class.
  1850.  class  Face_Nord_Maria_DIFFUSE_01_mat : public Material {
  1851.    public:
  1852.  };
  1853.  
  1854.  /// Stub class
  1855.  ///
  1856.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1857.  ///       information was available for this class.
  1858.  class  Face_Nord_Pavlina_DIFFUSE_01_mat : public Material {
  1859.    public:
  1860.  };
  1861.  
  1862.  /// Stub class
  1863.  ///
  1864.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1865.  ///       information was available for this class.
  1866.  class  Face_Nord_Sophia_DIFFUSE_01_mat : public Material {
  1867.    public:
  1868.  };
  1869.  
  1870.  /// Stub class
  1871.  ///
  1872.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1873.  ///       information was available for this class.
  1874.  class  Face_Europe_Iva_DIFFUSE_01_mat : public Material {
  1875.    public:
  1876.  };
  1877.  
  1878.  /// Stub class
  1879.  ///
  1880.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1881.  ///       information was available for this class.
  1882.  class  Face_Asia_Hocchi_DIFFUSE_01_mat : public Material {
  1883.    public:
  1884.  };
  1885.  
  1886.  /// Stub class
  1887.  ///
  1888.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1889.  ///       information was available for this class.
  1890.  class  Face_Asia_Emma_DIFFUSE_01_mat : public Material {
  1891.    public:
  1892.  };
  1893.  
  1894.  /// Stub class
  1895.  ///
  1896.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1897.  ///       information was available for this class.
  1898.  class  Face_Europe_Dassy_DIFFUSE_01_mat : public Material {
  1899.    public:
  1900.  };
  1901.  
  1902.  /// Stub class
  1903.  ///
  1904.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1905.  ///       information was available for this class.
  1906.  class  Face_Europe_Barbora_DIFFUSE_01_mat : public Material {
  1907.    public:
  1908.  };
  1909.  
  1910.  /// Stub class
  1911.  ///
  1912.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1913.  ///       information was available for this class.
  1914.  class  fmrobe_mat : public Material {
  1915.    public:
  1916.  };
  1917.  
  1918.  /// Stub class
  1919.  ///
  1920.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1921.  ///       information was available for this class.
  1922.  class  head_male_norslav2_diff_mat : public Material {
  1923.    public:
  1924.  };
  1925.  
  1926.  /// Stub class
  1927.  ///
  1928.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1929.  ///       information was available for this class.
  1930.  class  head_male_kharient1_diff_mat : public Material {
  1931.    public:
  1932.  };
  1933.  
  1934.  /// Stub class
  1935.  ///
  1936.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1937.  ///       information was available for this class.
  1938.  class  head_male_kharient3_diff_mat : public Material {
  1939.    public:
  1940.  };
  1941.  
  1942.  /// Stub class
  1943.  ///
  1944.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1945.  ///       information was available for this class.
  1946.  class  head_male_norslav1_diff_mat : public Material {
  1947.    public:
  1948.  };
  1949.  
  1950.  /// Stub class
  1951.  ///
  1952.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1953.  ///       information was available for this class.
  1954.  class  head_male_kharient2_diff_mat : public Material {
  1955.    public:
  1956.  };
  1957.  
  1958.  /// Stub class
  1959.  ///
  1960.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1961.  ///       information was available for this class.
  1962.  class  head_male_norslav3_diff_mat : public Material {
  1963.    public:
  1964.  };
  1965.  
  1966.  /// Stub class
  1967.  ///
  1968.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1969.  ///       information was available for this class.
  1970.  class  head_male_eurociid1_diff_mat : public Material {
  1971.    public:
  1972.  };
  1973.  
  1974.  /// Stub class
  1975.  ///
  1976.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1977.  ///       information was available for this class.
  1978.  class  head_male_eurociid2_diff_mat : public Material {
  1979.    public:
  1980.  };
  1981.  
  1982.  /// Stub class
  1983.  ///
  1984.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1985.  ///       information was available for this class.
  1986.  class  head_male_eurociid3_diff_mat : public Material {
  1987.    public:
  1988.  };
  1989.  
  1990.  /// Stub class
  1991.  ///
  1992.  /// @note This is a stub class to ensure a proper class hierarchy. No
  1993.  ///       information was available for this class.
  1994.  class  hair_male_diff_mat : public Material {
  1995.    public:
  1996.  };
  1997.  
  1998.  /// Stub class
  1999.  ///
  2000.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2001.  ///       information was available for this class.
  2002.  class  atlas_beards_diff_mat : public Material {
  2003.    public:
  2004.  };
  2005.  
  2006.  /// Stub class
  2007.  ///
  2008.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2009.  ///       information was available for this class.
  2010.  class  small_brick_01_diff_mat : public Material {
  2011.    public:
  2012.  };
  2013.  
  2014.  /// Stub class
  2015.  ///
  2016.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2017.  ///       information was available for this class.
  2018.  class  cloth_trap_diff_mat : public Material {
  2019.    public:
  2020.  };
  2021.  
  2022.  /// Stub class
  2023.  ///
  2024.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2025.  ///       information was available for this class.
  2026.  class  Throwing_Stuff_01_png_mat : public Material {
  2027.    public:
  2028.  };
  2029.  
  2030.  /// Stub class
  2031.  ///
  2032.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2033.  ///       information was available for this class.
  2034.  class  ancient_diff_mat : public Material {
  2035.    public:
  2036.  };
  2037.  
  2038.  /// Stub class
  2039.  ///
  2040.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2041.  ///       information was available for this class.
  2042.  class  sack_03_diff_mat : public Material {
  2043.    public:
  2044.  };
  2045.  
  2046.  /// Stub class
  2047.  ///
  2048.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2049.  ///       information was available for this class.
  2050.  class  Hair_03_png_mat : public Material {
  2051.    public:
  2052.  };
  2053.  
  2054.  /// Stub class
  2055.  ///
  2056.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2057.  ///       information was available for this class.
  2058.  class  felling_02_diff_mat : public Material {
  2059.    public:
  2060.  };
  2061.  
  2062.  /// Stub class
  2063.  ///
  2064.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2065.  ///       information was available for this class.
  2066.  class  GC_Soil : public Material {
  2067.    public:
  2068.  };
  2069.  
  2070.  /*!
  2071.  @brief Used to create static or dynamic cubemaps.
  2072.  
  2073.  This object is used with Material, WaterObject, and other objects for cubemap reflections.
  2074.  
  2075.  A simple declaration of a static cubemap:
  2076.  @tsexample
  2077.  singleton CubemapData( SkyboxCubemap )
  2078.  {
  2079.     cubeFace[0] = "./skybox_1";
  2080.     cubeFace[1] = "./skybox_2";
  2081.     cubeFace[2] = "./skybox_3";
  2082.     cubeFace[3] = "./skybox_4";
  2083.     cubeFace[4] = "./skybox_5";
  2084.     cubeFace[5] = "./skybox_6";
  2085.  };
  2086.  @endtsexample
  2087.  @note The dynamic cubemap functionality in CubemapData has been depreciated in favor of ReflectorDesc.
  2088.  @see ReflectorDesc
  2089.  @ingroup GFX
  2090.   */
  2091.  class  CubemapData : public SimObject {
  2092.    public:
  2093.     /*! Update the assigned cubemaps faces. */
  2094.     virtual void updateFaces(()) {}
  2095.     /*! Returns the script filename of where the CubemapData object was defined.  This is used by the material editor. */
  2096.     virtual string getFilename(()) {}
  2097.     /*!
  2098.     @brief The 6 cubemap face textures for a static cubemap.
  2099.  
  2100. They are in the following order:
  2101.   - cubeFace[0] is -X
  2102.   - cubeFace[1] is +X
  2103.   - cubeFace[2] is -Z
  2104.   - cubeFace[3] is +Z
  2105.   - cubeFace[4] is -Y
  2106.   - cubeFace[5] is +Y
  2107.  
  2108.    
  2109.      */
  2110.     filename cubeFace;
  2111.     /*!
  2112.     Set to true if this is a dynamic cubemap.  The default is false.
  2113.    
  2114.      */
  2115.     bool dynamic;
  2116.     /*!
  2117.     The size of each dynamic cubemap face in pixels.
  2118.    
  2119.      */
  2120.     int dynamicSize;
  2121.     /*!
  2122.     The near clip distance used when rendering to the dynamic cubemap.
  2123.    
  2124.      */
  2125.     float dynamicNearDist;
  2126.     /*!
  2127.     The far clip distance used when rendering to the dynamic cubemap.
  2128.    
  2129.      */
  2130.     float dynamicFarDist;
  2131.     /*!
  2132.     The typemask used to filter the objects rendered to the dynamic cubemap.
  2133.    
  2134.      */
  2135.     int dynamicObjectTypeMask;
  2136.  
  2137.     /*! @name Ungrouped
  2138.     @{ */
  2139.     /*! */
  2140.     /// @}
  2141.  
  2142.  
  2143.     /*! @name Object
  2144.     @{ */
  2145.     /*! */
  2146.     /// @}
  2147.  
  2148.  
  2149.     /*! @name Editing
  2150.     @{ */
  2151.     /*! */
  2152.     /// @}
  2153.  
  2154.  
  2155.     /*! @name Persistence
  2156.     @{ */
  2157.     /*! */
  2158.     /// @}
  2159.  
  2160.  };
  2161.  
  2162.  /// Stub class
  2163.  ///
  2164.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2165.  ///       information was available for this class.
  2166.  class  CloudyCubemap : public CubemapData {
  2167.    public:
  2168.  };
  2169.  
  2170.  /// Stub class
  2171.  ///
  2172.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2173.  ///       information was available for this class.
  2174.  class  FoggyCubemap : public CubemapData {
  2175.    public:
  2176.  };
  2177.  
  2178.  /// Stub class
  2179.  ///
  2180.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2181.  ///       information was available for this class.
  2182.  class  DuskLight2Cubemap : public CubemapData {
  2183.    public:
  2184.  };
  2185.  
  2186.  /// Stub class
  2187.  ///
  2188.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2189.  ///       information was available for this class.
  2190.  class  DuskLightCubemap : public CubemapData {
  2191.    public:
  2192.  };
  2193.  
  2194.  /// Stub class
  2195.  ///
  2196.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2197.  ///       information was available for this class.
  2198.  class  FairCubemap : public CubemapData {
  2199.    public:
  2200.  };
  2201.  
  2202.  /// Stub class
  2203.  ///
  2204.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2205.  ///       information was available for this class.
  2206.  class  monument_04_diff_mat : public Material {
  2207.    public:
  2208.  };
  2209.  
  2210.  /// Stub class
  2211.  ///
  2212.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2213.  ///       information was available for this class.
  2214.  class  monument_03_diff_mat : public Material {
  2215.    public:
  2216.  };
  2217.  
  2218.  /// Stub class
  2219.  ///
  2220.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2221.  ///       information was available for this class.
  2222.  class  monument_02_diff_mat : public Material {
  2223.    public:
  2224.  };
  2225.  
  2226.  /// Stub class
  2227.  ///
  2228.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2229.  ///       information was available for this class.
  2230.  class  monument_01_diff_mat : public Material {
  2231.    public:
  2232.  };
  2233.  
  2234.  /// Stub class
  2235.  ///
  2236.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2237.  ///       information was available for this class.
  2238.  class  cog_diff_mat : public Material {
  2239.    public:
  2240.  };
  2241.  
  2242.  /// Stub class
  2243.  ///
  2244.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2245.  ///       information was available for this class.
  2246.  class  Forest_GC_tex_mat : public Material {
  2247.    public:
  2248.  };
  2249.  
  2250.  /// Stub class
  2251.  ///
  2252.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2253.  ///       information was available for this class.
  2254.  class  RoyalPadded_DIFFUSE_01_mat : public Material {
  2255.    public:
  2256.  };
  2257.  
  2258.  /// Stub class
  2259.  ///
  2260.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2261.  ///       information was available for this class.
  2262.  class  male_blacksmith_diff_mat : public Material {
  2263.    public:
  2264.  };
  2265.  
  2266.  /// Stub class
  2267.  ///
  2268.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2269.  ///       information was available for this class.
  2270.  class  RoyalScale_DIFFUSE_01_mat : public Material {
  2271.    public:
  2272.  };
  2273.  
  2274.  /// Stub class
  2275.  ///
  2276.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2277.  ///       information was available for this class.
  2278.  class  RoyalPlate_DIFFUSE_01_mat : public Material {
  2279.    public:
  2280.  };
  2281.  
  2282.  /// Stub class
  2283.  ///
  2284.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2285.  ///       information was available for this class.
  2286.  class  RoyalChain_DIFFUSE_01_mat : public Material {
  2287.    public:
  2288.  };
  2289.  
  2290.  /// Stub class
  2291.  ///
  2292.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2293.  ///       information was available for this class.
  2294.  class  HeavyPadded_DIFFUSE_01_mat : public Material {
  2295.    public:
  2296.  };
  2297.  
  2298.  /// Stub class
  2299.  ///
  2300.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2301.  ///       information was available for this class.
  2302.  class  RoyalLeather_DIFFUSE_01_mat : public Material {
  2303.    public:
  2304.  };
  2305.  
  2306.  /// Stub class
  2307.  ///
  2308.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2309.  ///       information was available for this class.
  2310.  class  HeavyChain_DIFFUSE_01_mat : public Material {
  2311.    public:
  2312.  };
  2313.  
  2314.  /// Stub class
  2315.  ///
  2316.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2317.  ///       information was available for this class.
  2318.  class  fabric_diff_mat : public Material {
  2319.    public:
  2320.  };
  2321.  
  2322.  /// Stub class
  2323.  ///
  2324.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2325.  ///       information was available for this class.
  2326.  class  water_diff_mat : public Material {
  2327.    public:
  2328.  };
  2329.  
  2330.  /// Stub class
  2331.  ///
  2332.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2333.  ///       information was available for this class.
  2334.  class  fountain_diff_mat : public Material {
  2335.    public:
  2336.  };
  2337.  
  2338.  /// Stub class
  2339.  ///
  2340.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2341.  ///       information was available for this class.
  2342.  class  common_plant_herbal_plants_atlas : public Material {
  2343.    public:
  2344.  };
  2345.  
  2346.  /// Stub class
  2347.  ///
  2348.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2349.  ///       information was available for this class.
  2350.  class  RoyalPadded_DIFFUSE_BLACK_BROWN_02_jpg_mat : public Material {
  2351.    public:
  2352.  };
  2353.  
  2354.  /// Stub class
  2355.  ///
  2356.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2357.  ///       information was available for this class.
  2358.  class  HeavyPadded_DIFFUSE_02_jpg_mat : public Material {
  2359.    public:
  2360.  };
  2361.  
  2362.  /// Stub class
  2363.  ///
  2364.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2365.  ///       information was available for this class.
  2366.  class  male_body_01_mat : public Material {
  2367.    public:
  2368.  };
  2369.  
  2370.  /// Stub class
  2371.  ///
  2372.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2373.  ///       information was available for this class.
  2374.  class  male_head_01_mat : public Material {
  2375.    public:
  2376.  };
  2377.  
  2378.  /// Stub class
  2379.  ///
  2380.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2381.  ///       information was available for this class.
  2382.  class  RoyalLeather_DIFFUSE_02_jpg_mat : public Material {
  2383.    public:
  2384.  };
  2385.  
  2386.  /// Stub class
  2387.  ///
  2388.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2389.  ///       information was available for this class.
  2390.  class  Rabbit_DIFFUSE_mat : public Material {
  2391.    public:
  2392.  };
  2393.  
  2394.  /// Stub class
  2395.  ///
  2396.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2397.  ///       information was available for this class.
  2398.  class  Grouse_diff_fixed2_mat : public Material {
  2399.    public:
  2400.  };
  2401.  
  2402.  /// Stub class
  2403.  ///
  2404.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2405.  ///       information was available for this class.
  2406.  class  mooze_diff2_mat : public Material {
  2407.    public:
  2408.  };
  2409.  
  2410.  /// Stub class
  2411.  ///
  2412.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2413.  ///       information was available for this class.
  2414.  class  Wolf_diff_mat : public Material {
  2415.    public:
  2416.  };
  2417.  
  2418.  /// Stub class
  2419.  ///
  2420.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2421.  ///       information was available for this class.
  2422.  class  TowerShield_DIFFUSE_HERALDY_01_jpg_mat : public Material {
  2423.    public:
  2424.  };
  2425.  
  2426.  /// Stub class
  2427.  ///
  2428.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2429.  ///       information was available for this class.
  2430.  class  PaviseShield_DIFFUSE_HERALDY_01_jpg_mat : public Material {
  2431.    public:
  2432.  };
  2433.  
  2434.  /// Stub class
  2435.  ///
  2436.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2437.  ///       information was available for this class.
  2438.  class  KiteShield_DIFFUSE_HERALDY_01_jpg_mat : public Material {
  2439.    public:
  2440.  };
  2441.  
  2442.  /// Stub class
  2443.  ///
  2444.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2445.  ///       information was available for this class.
  2446.  class  HeaterShield_DIFFUSE_01_jpg_mat : public Material {
  2447.    public:
  2448.  };
  2449.  
  2450.  /// Stub class
  2451.  ///
  2452.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2453.  ///       information was available for this class.
  2454.  class  Mutton_ready_diff_mat : public Material {
  2455.    public:
  2456.  };
  2457.  
  2458.  /// Stub class
  2459.  ///
  2460.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2461.  ///       information was available for this class.
  2462.  class  SteelRoundache_DIFFUSE_01_jpg_mat : public Material {
  2463.    public:
  2464.  };
  2465.  
  2466.  /// Stub class
  2467.  ///
  2468.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2469.  ///       information was available for this class.
  2470.  class  RoundShield_DIFFUSE_02_jpg_mat : public Material {
  2471.    public:
  2472.  };
  2473.  
  2474.  /// Stub class
  2475.  ///
  2476.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2477.  ///       information was available for this class.
  2478.  class  Buckler_DIFFUSE_01_jpg_mat : public Material {
  2479.    public:
  2480.  };
  2481.  
  2482.  /// Stub class
  2483.  ///
  2484.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2485.  ///       information was available for this class.
  2486.  class  PrimitiveShield_DIFFUSE_02_jpg_mat : public Material {
  2487.    public:
  2488.  };
  2489.  
  2490.  /// Stub class
  2491.  ///
  2492.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2493.  ///       information was available for this class.
  2494.  class  RoyalPlate_Dark_01_jpg_mat : public Material {
  2495.    public:
  2496.  };
  2497.  
  2498.  /// Stub class
  2499.  ///
  2500.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2501.  ///       information was available for this class.
  2502.  class  RoyalScale_DIFFUSE_03_jpg_mat : public Material {
  2503.    public:
  2504.  };
  2505.  
  2506.  /// Stub class
  2507.  ///
  2508.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2509.  ///       information was available for this class.
  2510.  class  RoyalChain_DIFFUSE_04_jpg_mat : public Material {
  2511.    public:
  2512.  };
  2513.  
  2514.  /// Stub class
  2515.  ///
  2516.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2517.  ///       information was available for this class.
  2518.  class  Add_Swords_DIFFUSE_02_jpg_mat : public Material {
  2519.    public:
  2520.  };
  2521.  
  2522.  /// Stub class
  2523.  ///
  2524.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2525.  ///       information was available for this class.
  2526.  class  Swas_n_Pots_DIFFUSE_01_jpg_mat : public Material {
  2527.    public:
  2528.  };
  2529.  
  2530.  /// Stub class
  2531.  ///
  2532.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2533.  ///       information was available for this class.
  2534.  class  Sickles_n_Hammers_DIFFUSE_01_jpg_mat : public Material {
  2535.    public:
  2536.  };
  2537.  
  2538.  /// Stub class
  2539.  ///
  2540.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2541.  ///       information was available for this class.
  2542.  class  Shovels_n_Picks_DIFFUSE_02_jpg_mat : public Material {
  2543.    public:
  2544.  };
  2545.  
  2546.  /// Stub class
  2547.  ///
  2548.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2549.  ///       information was available for this class.
  2550.  class  LightChain_DIFFUSE_02_mat : public Material {
  2551.    public:
  2552.  };
  2553.  
  2554.  /// Stub class
  2555.  ///
  2556.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2557.  ///       information was available for this class.
  2558.  class  LightScale_DIFFUSE_01_mat : public Material {
  2559.    public:
  2560.  };
  2561.  
  2562.  /// Stub class
  2563.  ///
  2564.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2565.  ///       information was available for this class.
  2566.  class  Ironplate_DIFFUSE_01_mat : public Material {
  2567.    public:
  2568.  };
  2569.  
  2570.  /// Stub class
  2571.  ///
  2572.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2573.  ///       information was available for this class.
  2574.  class  RegularChain_DIFFUSE_01_mat : public Material {
  2575.    public:
  2576.  };
  2577.  
  2578.  /// Stub class
  2579.  ///
  2580.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2581.  ///       information was available for this class.
  2582.  class  HeavyScale_DIFFUSE_01_mat : public Material {
  2583.    public:
  2584.  };
  2585.  
  2586.  /// Stub class
  2587.  ///
  2588.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2589.  ///       information was available for this class.
  2590.  class  Transitional_Mail_and_Plate_DIFFUSE_01_mat : public Material {
  2591.    public:
  2592.  };
  2593.  
  2594.  /// Stub class
  2595.  ///
  2596.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2597.  ///       information was available for this class.
  2598.  class  Sow_DiffuseFinal_mat : public Material {
  2599.    public:
  2600.  };
  2601.  
  2602.  /// Stub class
  2603.  ///
  2604.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2605.  ///       information was available for this class.
  2606.  class  Bear_Diffuse_mat : public Material {
  2607.    public:
  2608.  };
  2609.  
  2610.  /// Stub class
  2611.  ///
  2612.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2613.  ///       information was available for this class.
  2614.  class  BoarDiffuseFinal_mat : public Material {
  2615.    public:
  2616.  };
  2617.  
  2618.  /// Stub class
  2619.  ///
  2620.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2621.  ///       information was available for this class.
  2622.  class  SteppeMat_mat : public Material {
  2623.    public:
  2624.  };
  2625.  
  2626.  /// Stub class
  2627.  ///
  2628.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2629.  ///       information was available for this class.
  2630.  class  SwampMat_mat : public Material {
  2631.    public:
  2632.  };
  2633.  
  2634.  /// Stub class
  2635.  ///
  2636.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2637.  ///       information was available for this class.
  2638.  class  LogMat_mat : public Material {
  2639.    public:
  2640.  };
  2641.  
  2642.  /// Stub class
  2643.  ///
  2644.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2645.  ///       information was available for this class.
  2646.  class  ForestMat_mat : public Material {
  2647.    public:
  2648.  };
  2649.  
  2650.  /// Stub class
  2651.  ///
  2652.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2653.  ///       information was available for this class.
  2654.  class  female_noviceleather_cape_diff_mat : public Material {
  2655.    public:
  2656.  };
  2657.  
  2658.  /// Stub class
  2659.  ///
  2660.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2661.  ///       information was available for this class.
  2662.  class  male_noviceleather_cape_diff_mat : public Material {
  2663.    public:
  2664.  };
  2665.  
  2666.  /// Stub class
  2667.  ///
  2668.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2669.  ///       information was available for this class.
  2670.  class  male_noviceleather_detail_diff_mat : public Material {
  2671.    public:
  2672.  };
  2673.  
  2674.  /// Stub class
  2675.  ///
  2676.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2677.  ///       information was available for this class.
  2678.  class  heavyleather_armor_diff_mat : public Material {
  2679.    public:
  2680.  };
  2681.  
  2682.  /// Stub class
  2683.  ///
  2684.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2685.  ///       information was available for this class.
  2686.  class  Rock02_mat : public Material {
  2687.    public:
  2688.  };
  2689.  
  2690.  /// Stub class
  2691.  ///
  2692.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2693.  ///       information was available for this class.
  2694.  class  GrassRockMat_mat : public Material {
  2695.    public:
  2696.  };
  2697.  
  2698.  /// Stub class
  2699.  ///
  2700.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2701.  ///       information was available for this class.
  2702.  class  Rock02Mat_mat : public Material {
  2703.    public:
  2704.  };
  2705.  
  2706.  /// Stub class
  2707.  ///
  2708.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2709.  ///       information was available for this class.
  2710.  class  Rock01Mat_mat : public Material {
  2711.    public:
  2712.  };
  2713.  
  2714.  /// Stub class
  2715.  ///
  2716.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2717.  ///       information was available for this class.
  2718.  class  cloth_02_diff_mat : public Material {
  2719.    public:
  2720.  };
  2721.  
  2722.  /// Stub class
  2723.  ///
  2724.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2725.  ///       information was available for this class.
  2726.  class  female_regularscale_trousers_diff_mat : public Material {
  2727.    public:
  2728.  };
  2729.  
  2730.  /// Stub class
  2731.  ///
  2732.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2733.  ///       information was available for this class.
  2734.  class  female_regularscale_cape_diff_mat : public Material {
  2735.    public:
  2736.  };
  2737.  
  2738.  /// Stub class
  2739.  ///
  2740.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2741.  ///       information was available for this class.
  2742.  class  male_regularscale_trousers_diff_mat : public Material {
  2743.    public:
  2744.  };
  2745.  
  2746.  /// Stub class
  2747.  ///
  2748.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2749.  ///       information was available for this class.
  2750.  class  regularscale_boot_diff_mat : public Material {
  2751.    public:
  2752.  };
  2753.  
  2754.  /// Stub class
  2755.  ///
  2756.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2757.  ///       information was available for this class.
  2758.  class  regularscale_gloves_diff_mat : public Material {
  2759.    public:
  2760.  };
  2761.  
  2762.  /// Stub class
  2763.  ///
  2764.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2765.  ///       information was available for this class.
  2766.  class  male_regularscale_cape_diff_mat : public Material {
  2767.    public:
  2768.  };
  2769.  
  2770.  /// Stub class
  2771.  ///
  2772.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2773.  ///       information was available for this class.
  2774.  class  regularscale_helmet_diff_mat : public Material {
  2775.    public:
  2776.  };
  2777.  
  2778.  /// Stub class
  2779.  ///
  2780.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2781.  ///       information was available for this class.
  2782.  class  male_lamellarleather_cape_diff_mat : public Material {
  2783.    public:
  2784.  };
  2785.  
  2786.  /// Stub class
  2787.  ///
  2788.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2789.  ///       information was available for this class.
  2790.  class  male_lamellarleather_trousers_diff_mat : public Material {
  2791.    public:
  2792.  };
  2793.  
  2794.  /// Stub class
  2795.  ///
  2796.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2797.  ///       information was available for this class.
  2798.  class  lamellarleather_gloves_diff_mat : public Material {
  2799.    public:
  2800.  };
  2801.  
  2802.  /// Stub class
  2803.  ///
  2804.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2805.  ///       information was available for this class.
  2806.  class  lamellarleather_helmet_diff_mat : public Material {
  2807.    public:
  2808.  };
  2809.  
  2810.  /// Stub class
  2811.  ///
  2812.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2813.  ///       information was available for this class.
  2814.  class  female_lamellarleather_cape_diff_mat : public Material {
  2815.    public:
  2816.  };
  2817.  
  2818.  /// Stub class
  2819.  ///
  2820.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2821.  ///       information was available for this class.
  2822.  class  female_lamellarleather_trousers_diff_mat : public Material {
  2823.    public:
  2824.  };
  2825.  
  2826.  /// Stub class
  2827.  ///
  2828.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2829.  ///       information was available for this class.
  2830.  class  lamellarleather_foot_diff_mat : public Material {
  2831.    public:
  2832.  };
  2833.  
  2834.  /// Stub class
  2835.  ///
  2836.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2837.  ///       information was available for this class.
  2838.  class  male_regular_padded_trousers_diff_mat : public Material {
  2839.    public:
  2840.  };
  2841.  
  2842.  /// Stub class
  2843.  ///
  2844.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2845.  ///       information was available for this class.
  2846.  class  male_regular_padded_cape_diff_mat : public Material {
  2847.    public:
  2848.  };
  2849.  
  2850.  /// Stub class
  2851.  ///
  2852.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2853.  ///       information was available for this class.
  2854.  class  female_regular_padded_cape_diff_mat : public Material {
  2855.    public:
  2856.  };
  2857.  
  2858.  /// Stub class
  2859.  ///
  2860.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2861.  ///       information was available for this class.
  2862.  class  female_regular_padded_trousers_diff_mat : public Material {
  2863.    public:
  2864.  };
  2865.  
  2866.  /// Stub class
  2867.  ///
  2868.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2869.  ///       information was available for this class.
  2870.  class  padded_regular_helmet_diff_mat : public Material {
  2871.    public:
  2872.  };
  2873.  
  2874.  /// Stub class
  2875.  ///
  2876.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2877.  ///       information was available for this class.
  2878.  class  padded_regular_gloves_diff_mat : public Material {
  2879.    public:
  2880.  };
  2881.  
  2882.  /// Stub class
  2883.  ///
  2884.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2885.  ///       information was available for this class.
  2886.  class  male_novice_padded_cape_diff_mat : public Material {
  2887.    public:
  2888.  };
  2889.  
  2890.  /// Stub class
  2891.  ///
  2892.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2893.  ///       information was available for this class.
  2894.  class  female_novice_padded_cape_diff_mat : public Material {
  2895.    public:
  2896.  };
  2897.  
  2898.  /// Stub class
  2899.  ///
  2900.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2901.  ///       information was available for this class.
  2902.  class  male_novice_padded_detail_diff_mat : public Material {
  2903.    public:
  2904.  };
  2905.  
  2906.  /// Stub class
  2907.  ///
  2908.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2909.  ///       information was available for this class.
  2910.  class  WildCow_Diffuse_mat : public Material {
  2911.    public:
  2912.  };
  2913.  
  2914.  /// Stub class
  2915.  ///
  2916.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2917.  ///       information was available for this class.
  2918.  class  WildBull_diffuse_mat : public Material {
  2919.    public:
  2920.  };
  2921.  
  2922.  /// Stub class
  2923.  ///
  2924.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2925.  ///       information was available for this class.
  2926.  class  Cow_diffuse4_mat : public Material {
  2927.    public:
  2928.  };
  2929.  
  2930.  /// Stub class
  2931.  ///
  2932.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2933.  ///       information was available for this class.
  2934.  class  bull_diffuse4_mat : public Material {
  2935.    public:
  2936.  };
  2937.  
  2938.  /// Stub class
  2939.  ///
  2940.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2941.  ///       information was available for this class.
  2942.  class  murl_test1234_mat : public Material {
  2943.    public:
  2944.  };
  2945.  
  2946.  /// Stub class
  2947.  ///
  2948.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2949.  ///       information was available for this class.
  2950.  class  Roundshield_DFF_mat : public Material {
  2951.    public:
  2952.  };
  2953.  
  2954.  /// Stub class
  2955.  ///
  2956.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2957.  ///       information was available for this class.
  2958.  class  Milaneese_Armor_DIFFUSE_01_mat : public Material {
  2959.    public:
  2960.  };
  2961.  
  2962.  /// Stub class
  2963.  ///
  2964.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2965.  ///       information was available for this class.
  2966.  class  leather_helmet_diff_mat : public Material {
  2967.    public:
  2968.  };
  2969.  
  2970.  /// Stub class
  2971.  ///
  2972.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2973.  ///       information was available for this class.
  2974.  class  roof_tile_diff_mat : public Material {
  2975.    public:
  2976.  };
  2977.  
  2978.  /// Stub class
  2979.  ///
  2980.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2981.  ///       information was available for this class.
  2982.  class  detail_wine_mat : public Material {
  2983.    public:
  2984.  };
  2985.  
  2986.  /// Stub class
  2987.  ///
  2988.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2989.  ///       information was available for this class.
  2990.  class  Maple31_MapleBark : public Material {
  2991.    public:
  2992.  };
  2993.  
  2994.  /// Stub class
  2995.  ///
  2996.  /// @note This is a stub class to ensure a proper class hierarchy. No
  2997.  ///       information was available for this class.
  2998.  class  Maple31_MapleLeaf : public Material {
  2999.    public:
  3000.  };
  3001.  
  3002.  /// Stub class
  3003.  ///
  3004.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3005.  ///       information was available for this class.
  3006.  class  CommonHorseFootprint : public Material {
  3007.    public:
  3008.  };
  3009.  
  3010.  /// Stub class
  3011.  ///
  3012.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3013.  ///       information was available for this class.
  3014.  class  apple_tex_mat : public Material {
  3015.    public:
  3016.  };
  3017.  
  3018.  /// Stub class
  3019.  ///
  3020.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3021.  ///       information was available for this class.
  3022.  class  Oak31_OakMat : public Material {
  3023.    public:
  3024.  };
  3025.  
  3026.  /// Stub class
  3027.  ///
  3028.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3029.  ///       information was available for this class.
  3030.  class  blacksmith_atlas_diff_mat : public Material {
  3031.    public:
  3032.  };
  3033.  
  3034.  /// Stub class
  3035.  ///
  3036.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3037.  ///       information was available for this class.
  3038.  class  ruins_diff_mat : public Material {
  3039.    public:
  3040.  };
  3041.  
  3042.  /// Stub class
  3043.  ///
  3044.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3045.  ///       information was available for this class.
  3046.  class  tent_cloth_mat : public Material {
  3047.    public:
  3048.  };
  3049.  
  3050.  /// Stub class
  3051.  ///
  3052.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3053.  ///       information was available for this class.
  3054.  class  plaster_diff_mat : public Material {
  3055.    public:
  3056.  };
  3057.  
  3058.  /// Stub class
  3059.  ///
  3060.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3061.  ///       information was available for this class.
  3062.  class  elm_tex_mat : public Material {
  3063.    public:
  3064.  };
  3065.  
  3066.  /// Stub class
  3067.  ///
  3068.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3069.  ///       information was available for this class.
  3070.  class  Pig_Diffuse_2_mat : public Material {
  3071.    public:
  3072.  };
  3073.  
  3074.  /// Stub class
  3075.  ///
  3076.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3077.  ///       information was available for this class.
  3078.  class  WildHorse_D_mat : public Material {
  3079.    public:
  3080.  };
  3081.  
  3082.  /// Stub class
  3083.  ///
  3084.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3085.  ///       information was available for this class.
  3086.  class  Milaneese_Armor_DIFFUSE_01_jpg_mat : public Material {
  3087.    public:
  3088.  };
  3089.  
  3090.  /// Stub class
  3091.  ///
  3092.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3093.  ///       information was available for this class.
  3094.  class  body_01_diff_mat : public Material {
  3095.    public:
  3096.  };
  3097.  
  3098.  /// Stub class
  3099.  ///
  3100.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3101.  ///       information was available for this class.
  3102.  class  Sheep_Diffuse2_mat : public Material {
  3103.    public:
  3104.  };
  3105.  
  3106.  /// Stub class
  3107.  ///
  3108.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3109.  ///       information was available for this class.
  3110.  class  Horse_DIFFUSE_WHITE_01_mat : public Material {
  3111.    public:
  3112.  };
  3113.  
  3114.  /// Stub class
  3115.  ///
  3116.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3117.  ///       information was available for this class.
  3118.  class  stone_big_moss_diff_mat : public Material {
  3119.    public:
  3120.  };
  3121.  
  3122.  /// Stub class
  3123.  ///
  3124.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3125.  ///       information was available for this class.
  3126.  class  floor_diff_mat : public Material {
  3127.    public:
  3128.  };
  3129.  
  3130.  /// Stub class
  3131.  ///
  3132.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3133.  ///       information was available for this class.
  3134.  class  stone_big_diff_mat : public Material {
  3135.    public:
  3136.  };
  3137.  
  3138.  /// Stub class
  3139.  ///
  3140.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3141.  ///       information was available for this class.
  3142.  class  willow_mat_mat : public Material {
  3143.    public:
  3144.  };
  3145.  
  3146.  /// Stub class
  3147.  ///
  3148.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3149.  ///       information was available for this class.
  3150.  class  female_leather_cape_diff_mat : public Material {
  3151.    public:
  3152.  };
  3153.  
  3154.  /// Stub class
  3155.  ///
  3156.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3157.  ///       information was available for this class.
  3158.  class  female_leather_trousers_diff_mat : public Material {
  3159.    public:
  3160.  };
  3161.  
  3162.  /// Stub class
  3163.  ///
  3164.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3165.  ///       information was available for this class.
  3166.  class  Heavy_Horse1_DIFFUSE_05_jpg_mat : public Material {
  3167.    public:
  3168.  };
  3169.  
  3170.  /// Stub class
  3171.  ///
  3172.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3173.  ///       information was available for this class.
  3174.  class  birch21_birch_mat : public Material {
  3175.    public:
  3176.  };
  3177.  
  3178.  /// Stub class
  3179.  ///
  3180.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3181.  ///       information was available for this class.
  3182.  class  Deer_Diffuse_mat : public Material {
  3183.    public:
  3184.  };
  3185.  
  3186.  /// Stub class
  3187.  ///
  3188.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3189.  ///       information was available for this class.
  3190.  class  Weapon_Pack_06_DIFFUSE_01_mat : public Material {
  3191.    public:
  3192.  };
  3193.  
  3194.  /// Stub class
  3195.  ///
  3196.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3197.  ///       information was available for this class.
  3198.  class  shops_02_atlas_diff_mat : public Material {
  3199.    public:
  3200.  };
  3201.  
  3202.  /// Stub class
  3203.  ///
  3204.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3205.  ///       information was available for this class.
  3206.  class  rivet_diff_mat : public Material {
  3207.    public:
  3208.  };
  3209.  
  3210.  /// Stub class
  3211.  ///
  3212.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3213.  ///       information was available for this class.
  3214.  class  brick_big_02_diff_mat : public Material {
  3215.    public:
  3216.  };
  3217.  
  3218.  /// Stub class
  3219.  ///
  3220.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3221.  ///       information was available for this class.
  3222.  class  fence_wood_diff_mat : public Material {
  3223.    public:
  3224.  };
  3225.  
  3226.  /// Stub class
  3227.  ///
  3228.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3229.  ///       information was available for this class.
  3230.  class  pine_test_11_mat : public Material {
  3231.    public:
  3232.  };
  3233.  
  3234.  /// Stub class
  3235.  ///
  3236.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3237.  ///       information was available for this class.
  3238.  class  Skinny_Horse_DIFFUSE_BW_01_png_mat : public Material {
  3239.    public:
  3240.  };
  3241.  
  3242.  /// Stub class
  3243.  ///
  3244.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3245.  ///       information was available for this class.
  3246.  class  Horse_DIFFUSE_BLACK_01_png_mat : public Material {
  3247.    public:
  3248.  };
  3249.  
  3250.  /// Stub class
  3251.  ///
  3252.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3253.  ///       information was available for this class.
  3254.  class  Horse_DIFFUSE_WHITE_01_png_mat : public Material {
  3255.    public:
  3256.  };
  3257.  
  3258.  /// Stub class
  3259.  ///
  3260.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3261.  ///       information was available for this class.
  3262.  class  sprucet_mat : public Material {
  3263.    public:
  3264.  };
  3265.  
  3266.  /// Stub class
  3267.  ///
  3268.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3269.  ///       information was available for this class.
  3270.  class  Weapon_Pack_07_DIFFUSE_01_jpg_mat : public Material {
  3271.    public:
  3272.  };
  3273.  
  3274.  /// Stub class
  3275.  ///
  3276.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3277.  ///       information was available for this class.
  3278.  class  Weapon_Pack_06_DIFFUSE_01_jpg_mat : public Material {
  3279.    public:
  3280.  };
  3281.  
  3282.  /// Stub class
  3283.  ///
  3284.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3285.  ///       information was available for this class.
  3286.  class  bark_02_diff_mat : public Material {
  3287.    public:
  3288.  };
  3289.  
  3290.  /// Stub class
  3291.  ///
  3292.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3293.  ///       information was available for this class.
  3294.  class  wood_moss_01_diff_mat : public Material {
  3295.    public:
  3296.  };
  3297.  
  3298.  /// Stub class
  3299.  ///
  3300.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3301.  ///       information was available for this class.
  3302.  class  wood_roof_01_diff_mat : public Material {
  3303.    public:
  3304.  };
  3305.  
  3306.  /// Stub class
  3307.  ///
  3308.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3309.  ///       information was available for this class.
  3310.  class  thatched_02_diff_mat : public Material {
  3311.    public:
  3312.  };
  3313.  
  3314.  /// Stub class
  3315.  ///
  3316.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3317.  ///       information was available for this class.
  3318.  class  thatched_01_diff_mat : public Material {
  3319.    public:
  3320.  };
  3321.  
  3322.  /// Stub class
  3323.  ///
  3324.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3325.  ///       information was available for this class.
  3326.  class  fakhverk_atlas_01_diff_mat : public Material {
  3327.    public:
  3328.  };
  3329.  
  3330.  /// Stub class
  3331.  ///
  3332.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3333.  ///       information was available for this class.
  3334.  class  Weapon_Pack_05B_DIFFUSE_01_jpg_mat : public Material {
  3335.    public:
  3336.  };
  3337.  
  3338.  /// Stub class
  3339.  ///
  3340.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3341.  ///       information was available for this class.
  3342.  class  Weapon_Pack_05_DIFFUSE_01_jpg_mat : public Material {
  3343.    public:
  3344.  };
  3345.  
  3346.  /// Stub class
  3347.  ///
  3348.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3349.  ///       information was available for this class.
  3350.  class  Weapon_Pack_04_03_jpg_mat : public Material {
  3351.    public:
  3352.  };
  3353.  
  3354.  /// Stub class
  3355.  ///
  3356.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3357.  ///       information was available for this class.
  3358.  class  decbed_diffuce_mat : public Material {
  3359.    public:
  3360.  };
  3361.  
  3362.  /// Stub class
  3363.  ///
  3364.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3365.  ///       information was available for this class.
  3366.  class  Utensil_1_mat : public Material {
  3367.    public:
  3368.  };
  3369.  
  3370.  /// Stub class
  3371.  ///
  3372.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3373.  ///       information was available for this class.
  3374.  class  utensil_02_mat : public Material {
  3375.    public:
  3376.  };
  3377.  
  3378.  /// Stub class
  3379.  ///
  3380.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3381.  ///       information was available for this class.
  3382.  class  barrel_mat : public Material {
  3383.    public:
  3384.  };
  3385.  
  3386.  /// Stub class
  3387.  ///
  3388.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3389.  ///       information was available for this class.
  3390.  class  Utensil_d_mat : public Material {
  3391.    public:
  3392.  };
  3393.  
  3394.  /// Stub class
  3395.  ///
  3396.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3397.  ///       information was available for this class.
  3398.  class  ExpensiveDesk_mat : public Material {
  3399.    public:
  3400.  };
  3401.  
  3402.  /// Stub class
  3403.  ///
  3404.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3405.  ///       information was available for this class.
  3406.  class  sack_mat : public Material {
  3407.    public:
  3408.  };
  3409.  
  3410.  /// Stub class
  3411.  ///
  3412.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3413.  ///       information was available for this class.
  3414.  class  cloth_nobump_mat : public Material {
  3415.    public:
  3416.  };
  3417.  
  3418.  /// Stub class
  3419.  ///
  3420.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3421.  ///       information was available for this class.
  3422.  class  cloth_color_mat : public Material {
  3423.    public:
  3424.  };
  3425.  
  3426.  /// Stub class
  3427.  ///
  3428.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3429.  ///       information was available for this class.
  3430.  class  Wicker_01_mat : public Material {
  3431.    public:
  3432.  };
  3433.  
  3434.  /// Stub class
  3435.  ///
  3436.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3437.  ///       information was available for this class.
  3438.  class  Distaff_mat : public Material {
  3439.    public:
  3440.  };
  3441.  
  3442.  /// Stub class
  3443.  ///
  3444.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3445.  ///       information was available for this class.
  3446.  class  SmoothWood_mat : public Material {
  3447.    public:
  3448.  };
  3449.  
  3450.  /// Stub class
  3451.  ///
  3452.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3453.  ///       information was available for this class.
  3454.  class  ovencoal_mat : public Material {
  3455.    public:
  3456.  };
  3457.  
  3458.  /// Stub class
  3459.  ///
  3460.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3461.  ///       information was available for this class.
  3462.  class  felling_01_diff : public Material {
  3463.    public:
  3464.  };
  3465.  
  3466.  /// Stub class
  3467.  ///
  3468.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3469.  ///       information was available for this class.
  3470.  class  felling01 : public Material {
  3471.    public:
  3472.  };
  3473.  
  3474.  /// Stub class
  3475.  ///
  3476.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3477.  ///       information was available for this class.
  3478.  class  roof_planks_01_diff : public Material {
  3479.    public:
  3480.  };
  3481.  
  3482.  /// Stub class
  3483.  ///
  3484.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3485.  ///       information was available for this class.
  3486.  class  roof_planks01 : public Material {
  3487.    public:
  3488.  };
  3489.  
  3490.  /// Stub class
  3491.  ///
  3492.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3493.  ///       information was available for this class.
  3494.  class  stone_floor01 : public Material {
  3495.    public:
  3496.  };
  3497.  
  3498.  /// Stub class
  3499.  ///
  3500.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3501.  ///       information was available for this class.
  3502.  class  brick_big01 : public Material {
  3503.    public:
  3504.  };
  3505.  
  3506.  /// Stub class
  3507.  ///
  3508.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3509.  ///       information was available for this class.
  3510.  class  door_01_diff : public Material {
  3511.    public:
  3512.  };
  3513.  
  3514.  /// Stub class
  3515.  ///
  3516.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3517.  ///       information was available for this class.
  3518.  class  door01 : public Material {
  3519.    public:
  3520.  };
  3521.  
  3522.  /// Stub class
  3523.  ///
  3524.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3525.  ///       information was available for this class.
  3526.  class  whitewash_mat : public Material {
  3527.    public:
  3528.  };
  3529.  
  3530.  /// Stub class
  3531.  ///
  3532.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3533.  ///       information was available for this class.
  3534.  class  felling02 : public Material {
  3535.    public:
  3536.  };
  3537.  
  3538.  /// Stub class
  3539.  ///
  3540.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3541.  ///       information was available for this class.
  3542.  class  small_brick01 : public Material {
  3543.    public:
  3544.  };
  3545.  
  3546.  /// Stub class
  3547.  ///
  3548.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3549.  ///       information was available for this class.
  3550.  class  planks_02_diff : public Material {
  3551.    public:
  3552.  };
  3553.  
  3554.  /// Stub class
  3555.  ///
  3556.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3557.  ///       information was available for this class.
  3558.  class  planks02 : public Material {
  3559.    public:
  3560.  };
  3561.  
  3562.  /// Stub class
  3563.  ///
  3564.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3565.  ///       information was available for this class.
  3566.  class  planks_01_diff : public Material {
  3567.    public:
  3568.  };
  3569.  
  3570.  /// Stub class
  3571.  ///
  3572.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3573.  ///       information was available for this class.
  3574.  class  planks01 : public Material {
  3575.    public:
  3576.  };
  3577.  
  3578.  /// Stub class
  3579.  ///
  3580.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3581.  ///       information was available for this class.
  3582.  class  wood_diffuce_01_mat2 : public Material {
  3583.    public:
  3584.  };
  3585.  
  3586.  /// Stub class
  3587.  ///
  3588.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3589.  ///       information was available for this class.
  3590.  class  wood_floor_01_diff_mat : public Material {
  3591.    public:
  3592.  };
  3593.  
  3594.  /// Stub class
  3595.  ///
  3596.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3597.  ///       information was available for this class.
  3598.  class  brick_01_diff_mat : public Material {
  3599.    public:
  3600.  };
  3601.  
  3602.  /// Stub class
  3603.  ///
  3604.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3605.  ///       information was available for this class.
  3606.  class  shops_01_atlas_diff_mat : public Material {
  3607.    public:
  3608.  };
  3609.  
  3610.  /// Stub class
  3611.  ///
  3612.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3613.  ///       information was available for this class.
  3614.  class  Weapon_Pack_03_DIFFUSE_01_mat : public Material {
  3615.    public:
  3616.  };
  3617.  
  3618.  /// Stub class
  3619.  ///
  3620.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3621.  ///       information was available for this class.
  3622.  class  Nordic_Axe_01_jpg_mat : public Material {
  3623.    public:
  3624.  };
  3625.  
  3626.  /// Stub class
  3627.  ///
  3628.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3629.  ///       information was available for this class.
  3630.  class  Maul_DIFFUSE_01_jpg_mat : public Material {
  3631.    public:
  3632.  };
  3633.  
  3634.  /// Stub class
  3635.  ///
  3636.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3637.  ///       information was available for this class.
  3638.  class  Cudgel_01_jpg_mat : public Material {
  3639.    public:
  3640.  };
  3641.  
  3642.  /// Stub class
  3643.  ///
  3644.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3645.  ///       information was available for this class.
  3646.  class  Claymore_01_mat : public Material {
  3647.    public:
  3648.  };
  3649.  
  3650.  /// Stub class
  3651.  ///
  3652.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3653.  ///       information was available for this class.
  3654.  class  Bardiche_01_jpg_mat : public Material {
  3655.    public:
  3656.  };
  3657.  
  3658.  /// Stub class
  3659.  ///
  3660.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3661.  ///       information was available for this class.
  3662.  class  Morgenstern_02_jpg_mat : public Material {
  3663.    public:
  3664.  };
  3665.  
  3666.  /// Stub class
  3667.  ///
  3668.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3669.  ///       information was available for this class.
  3670.  class  Flanged_Mace_mat : public Material {
  3671.    public:
  3672.  };
  3673.  
  3674.  /// Stub class
  3675.  ///
  3676.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3677.  ///       information was available for this class.
  3678.  class  war_axe_mat : public Material {
  3679.    public:
  3680.  };
  3681.  
  3682.  /// Stub class
  3683.  ///
  3684.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3685.  ///       information was available for this class.
  3686.  class  ImposterMat_mat : public Material {
  3687.    public:
  3688.  };
  3689.  
  3690.  /// Stub class
  3691.  ///
  3692.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3693.  ///       information was available for this class.
  3694.  class  SpruceFolieage1_mat : public Material {
  3695.    public:
  3696.  };
  3697.  
  3698.  /// Stub class
  3699.  ///
  3700.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3701.  ///       information was available for this class.
  3702.  class  SpruceBark1_mat : public Material {
  3703.    public:
  3704.  };
  3705.  
  3706.  /// Stub class
  3707.  ///
  3708.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3709.  ///       information was available for this class.
  3710.  class  TunnelWallsRiverRockMaterial : public Material {
  3711.    public:
  3712.  };
  3713.  
  3714.  /// Stub class
  3715.  ///
  3716.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3717.  ///       information was available for this class.
  3718.  class  TunnelWallsSwampMaterial : public Material {
  3719.    public:
  3720.  };
  3721.  
  3722.  /// Stub class
  3723.  ///
  3724.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3725.  ///       information was available for this class.
  3726.  class  TunnelWallsSnowMaterial : public Material {
  3727.    public:
  3728.  };
  3729.  
  3730.  /// Stub class
  3731.  ///
  3732.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3733.  ///       information was available for this class.
  3734.  class  TunnelCeilingClayMaterial : public Material {
  3735.    public:
  3736.  };
  3737.  
  3738.  /// Stub class
  3739.  ///
  3740.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3741.  ///       information was available for this class.
  3742.  class  TunnelFloorClayMaterial : public Material {
  3743.    public:
  3744.  };
  3745.  
  3746.  /// Stub class
  3747.  ///
  3748.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3749.  ///       information was available for this class.
  3750.  class  TunnelWallsClayMaterial : public Material {
  3751.    public:
  3752.  };
  3753.  
  3754.  /// Stub class
  3755.  ///
  3756.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3757.  ///       information was available for this class.
  3758.  class  TunnelWallsSandMaterial : public Material {
  3759.    public:
  3760.  };
  3761.  
  3762.  /// Stub class
  3763.  ///
  3764.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3765.  ///       information was available for this class.
  3766.  class  TunnelWallsCopperOreFragMaterial : public Material {
  3767.    public:
  3768.  };
  3769.  
  3770.  /// Stub class
  3771.  ///
  3772.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3773.  ///       information was available for this class.
  3774.  class  TunnelWallsCopperOreMaterial : public Material {
  3775.    public:
  3776.  };
  3777.  
  3778.  /// Stub class
  3779.  ///
  3780.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3781.  ///       information was available for this class.
  3782.  class  TunnelCeilingCopperOreMaterial : public Material {
  3783.    public:
  3784.  };
  3785.  
  3786.  /// Stub class
  3787.  ///
  3788.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3789.  ///       information was available for this class.
  3790.  class  TunnelFloorCopperOreMaterial : public Material {
  3791.    public:
  3792.  };
  3793.  
  3794.  /// Stub class
  3795.  ///
  3796.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3797.  ///       information was available for this class.
  3798.  class  TunnelWallsSilverOreFragMaterial : public Material {
  3799.    public:
  3800.  };
  3801.  
  3802.  /// Stub class
  3803.  ///
  3804.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3805.  ///       information was available for this class.
  3806.  class  TunnelWallsSilverOreMaterial : public Material {
  3807.    public:
  3808.  };
  3809.  
  3810.  /// Stub class
  3811.  ///
  3812.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3813.  ///       information was available for this class.
  3814.  class  TunnelCeilingSilverOreMaterial : public Material {
  3815.    public:
  3816.  };
  3817.  
  3818.  /// Stub class
  3819.  ///
  3820.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3821.  ///       information was available for this class.
  3822.  class  TunnelFloorSilverOreMaterial : public Material {
  3823.    public:
  3824.  };
  3825.  
  3826.  /// Stub class
  3827.  ///
  3828.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3829.  ///       information was available for this class.
  3830.  class  TunnelWallsIronOreFragMaterial : public Material {
  3831.    public:
  3832.  };
  3833.  
  3834.  /// Stub class
  3835.  ///
  3836.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3837.  ///       information was available for this class.
  3838.  class  TunnelWallsIronOreMaterial : public Material {
  3839.    public:
  3840.  };
  3841.  
  3842.  /// Stub class
  3843.  ///
  3844.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3845.  ///       information was available for this class.
  3846.  class  TunnelCeilingIronOreMaterial : public Material {
  3847.    public:
  3848.  };
  3849.  
  3850.  /// Stub class
  3851.  ///
  3852.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3853.  ///       information was available for this class.
  3854.  class  TunnelFloorIronOreMaterial : public Material {
  3855.    public:
  3856.  };
  3857.  
  3858.  /// Stub class
  3859.  ///
  3860.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3861.  ///       information was available for this class.
  3862.  class  TunnelWallsGoldOreFragMaterial : public Material {
  3863.    public:
  3864.  };
  3865.  
  3866.  /// Stub class
  3867.  ///
  3868.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3869.  ///       information was available for this class.
  3870.  class  TunnelCeilingGoldOreMaterial : public Material {
  3871.    public:
  3872.  };
  3873.  
  3874.  /// Stub class
  3875.  ///
  3876.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3877.  ///       information was available for this class.
  3878.  class  TunnelFloorGoldOreMaterial : public Material {
  3879.    public:
  3880.  };
  3881.  
  3882.  /// Stub class
  3883.  ///
  3884.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3885.  ///       information was available for this class.
  3886.  class  TunnelWallsGoldOreMaterial : public Material {
  3887.    public:
  3888.  };
  3889.  
  3890.  /// Stub class
  3891.  ///
  3892.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3893.  ///       information was available for this class.
  3894.  class  TunnelWallsSlateFragMaterial : public Material {
  3895.    public:
  3896.  };
  3897.  
  3898.  /// Stub class
  3899.  ///
  3900.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3901.  ///       information was available for this class.
  3902.  class  TunnelCeilingSlateMaterial : public Material {
  3903.    public:
  3904.  };
  3905.  
  3906.  /// Stub class
  3907.  ///
  3908.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3909.  ///       information was available for this class.
  3910.  class  TunnelFloorSlateMaterial : public Material {
  3911.    public:
  3912.  };
  3913.  
  3914.  /// Stub class
  3915.  ///
  3916.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3917.  ///       information was available for this class.
  3918.  class  TunnelWallsSlateMaterial : public Material {
  3919.    public:
  3920.  };
  3921.  
  3922.  /// Stub class
  3923.  ///
  3924.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3925.  ///       information was available for this class.
  3926.  class  TunnelWallsMarbleFragMaterial : public Material {
  3927.    public:
  3928.  };
  3929.  
  3930.  /// Stub class
  3931.  ///
  3932.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3933.  ///       information was available for this class.
  3934.  class  TunnelCeilingMarbleMaterial : public Material {
  3935.    public:
  3936.  };
  3937.  
  3938.  /// Stub class
  3939.  ///
  3940.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3941.  ///       information was available for this class.
  3942.  class  TunnelFloorMarbleMaterial : public Material {
  3943.    public:
  3944.  };
  3945.  
  3946.  /// Stub class
  3947.  ///
  3948.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3949.  ///       information was available for this class.
  3950.  class  TunnelWallsMarbleMaterial : public Material {
  3951.    public:
  3952.  };
  3953.  
  3954.  /// Stub class
  3955.  ///
  3956.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3957.  ///       information was available for this class.
  3958.  class  TunnelWallsGraniteFragMaterial : public Material {
  3959.    public:
  3960.  };
  3961.  
  3962.  /// Stub class
  3963.  ///
  3964.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3965.  ///       information was available for this class.
  3966.  class  TunnelCeilingGraniteMaterial : public Material {
  3967.    public:
  3968.  };
  3969.  
  3970.  /// Stub class
  3971.  ///
  3972.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3973.  ///       information was available for this class.
  3974.  class  TunnelFloorGraniteMaterial : public Material {
  3975.    public:
  3976.  };
  3977.  
  3978.  /// Stub class
  3979.  ///
  3980.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3981.  ///       information was available for this class.
  3982.  class  TunnelWallsGraniteMaterial : public Material {
  3983.    public:
  3984.  };
  3985.  
  3986.  /// Stub class
  3987.  ///
  3988.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3989.  ///       information was available for this class.
  3990.  class  TunnelWallsRockBareMaterial : public Material {
  3991.    public:
  3992.  };
  3993.  
  3994.  /// Stub class
  3995.  ///
  3996.  /// @note This is a stub class to ensure a proper class hierarchy. No
  3997.  ///       information was available for this class.
  3998.  class  TunnelCeilingRockMaterial : public Material {
  3999.    public:
  4000.  };
  4001.  
  4002.  /// Stub class
  4003.  ///
  4004.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4005.  ///       information was available for this class.
  4006.  class  TunnelFloorRockMaterial : public Material {
  4007.    public:
  4008.  };
  4009.  
  4010.  /// Stub class
  4011.  ///
  4012.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4013.  ///       information was available for this class.
  4014.  class  TunnelWallsRockMaterial : public Material {
  4015.    public:
  4016.  };
  4017.  
  4018.  /// Stub class
  4019.  ///
  4020.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4021.  ///       information was available for this class.
  4022.  class  TunnelCeilingSteppeSoilMaterial : public Material {
  4023.    public:
  4024.  };
  4025.  
  4026.  /// Stub class
  4027.  ///
  4028.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4029.  ///       information was available for this class.
  4030.  class  TunnelFloorSteppeSoilMaterial : public Material {
  4031.    public:
  4032.  };
  4033.  
  4034.  /// Stub class
  4035.  ///
  4036.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4037.  ///       information was available for this class.
  4038.  class  TunnelWallsSteppeSoilMaterial : public Material {
  4039.    public:
  4040.  };
  4041.  
  4042.  /// Stub class
  4043.  ///
  4044.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4045.  ///       information was available for this class.
  4046.  class  TunnelCeilingMaterial : public Material {
  4047.    public:
  4048.  };
  4049.  
  4050.  /// Stub class
  4051.  ///
  4052.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4053.  ///       information was available for this class.
  4054.  class  TunnelFloorMaterial : public Material {
  4055.    public:
  4056.  };
  4057.  
  4058.  /// Stub class
  4059.  ///
  4060.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4061.  ///       information was available for this class.
  4062.  class  TunnelWallsMaterial : public Material {
  4063.    public:
  4064.  };
  4065.  
  4066.  /// Stub class
  4067.  ///
  4068.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4069.  ///       information was available for this class.
  4070.  class  newMaterial5 : public Material {
  4071.    public:
  4072.  };
  4073.  
  4074.  /// Stub class
  4075.  ///
  4076.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4077.  ///       information was available for this class.
  4078.  class  newMaterial3 : public Material {
  4079.    public:
  4080.  };
  4081.  
  4082.  /// Stub class
  4083.  ///
  4084.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4085.  ///       information was available for this class.
  4086.  class  TerrainMaterialList : public SimGroup {
  4087.    public:
  4088.  };
  4089.  
  4090.  /// Stub class
  4091.  ///
  4092.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4093.  ///       information was available for this class.
  4094.  class  treemulberry_ColorEffectR27G177B88_material : public Material {
  4095.    public:
  4096.  };
  4097.  
  4098.  /// Stub class
  4099.  ///
  4100.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4101.  ///       information was available for this class.
  4102.  class  treemulberry_fronds_material : public Material {
  4103.    public:
  4104.  };
  4105.  
  4106.  /// Stub class
  4107.  ///
  4108.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4109.  ///       information was available for this class.
  4110.  class  treemulberry_material : public Material {
  4111.    public:
  4112.  };
  4113.  
  4114.  /// Stub class
  4115.  ///
  4116.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4117.  ///       information was available for this class.
  4118.  class  treemulberry_bark_material : public Material {
  4119.    public:
  4120.  };
  4121.  
  4122.  /// Stub class
  4123.  ///
  4124.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4125.  ///       information was available for this class.
  4126.  class  treemaple_ColorEffectR27G177B88_material : public Material {
  4127.    public:
  4128.  };
  4129.  
  4130.  /// Stub class
  4131.  ///
  4132.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4133.  ///       information was available for this class.
  4134.  class  treemaple_fronds_material : public Material {
  4135.    public:
  4136.  };
  4137.  
  4138.  /// Stub class
  4139.  ///
  4140.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4141.  ///       information was available for this class.
  4142.  class  treemaple_material : public Material {
  4143.    public:
  4144.  };
  4145.  
  4146.  /// Stub class
  4147.  ///
  4148.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4149.  ///       information was available for this class.
  4150.  class  treemaple_bark_material : public Material {
  4151.    public:
  4152.  };
  4153.  
  4154.  /// Stub class
  4155.  ///
  4156.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4157.  ///       information was available for this class.
  4158.  class  defaulttree_ColorEffectR27G177B88_material : public Material {
  4159.    public:
  4160.  };
  4161.  
  4162.  /// Stub class
  4163.  ///
  4164.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4165.  ///       information was available for this class.
  4166.  class  defaulttree_fronds_material : public Material {
  4167.    public:
  4168.  };
  4169.  
  4170.  /// Stub class
  4171.  ///
  4172.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4173.  ///       information was available for this class.
  4174.  class  defaulttree_material : public Material {
  4175.    public:
  4176.  };
  4177.  
  4178.  /// Stub class
  4179.  ///
  4180.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4181.  ///       information was available for this class.
  4182.  class  defaulttree_bark_material : public Material {
  4183.    public:
  4184.  };
  4185.  
  4186.  /// Stub class
  4187.  ///
  4188.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4189.  ///       information was available for this class.
  4190.  class  ucityHealthKit : public Material {
  4191.    public:
  4192.  };
  4193.  
  4194.  /// Stub class
  4195.  ///
  4196.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4197.  ///       information was available for this class.
  4198.  class  cube_GridMaterial : public Material {
  4199.    public:
  4200.  };
  4201.  
  4202.  /// Stub class
  4203.  ///
  4204.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4205.  ///       information was available for this class.
  4206.  class  broad_Arrow_broad_Arrow_material : public Material {
  4207.    public:
  4208.  };
  4209.  
  4210.  /// Stub class
  4211.  ///
  4212.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4213.  ///       information was available for this class.
  4214.  class  bodkin_arrow_bodkin_arrow_material : public Material {
  4215.    public:
  4216.  };
  4217.  
  4218.  /// Stub class
  4219.  ///
  4220.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4221.  ///       information was available for this class.
  4222.  class  Arrow_160sm_Arrow_material : public Material {
  4223.    public:
  4224.  };
  4225.  
  4226.  /*!
  4227.  @brief The abstract base for all render bins.
  4228.  
  4229.  The render bins are used by the engine as a high level method to order and batch rendering operations.
  4230.  @ingroup RenderBin
  4231.   */
  4232.  class  RenderBinManager : public SimObject {
  4233.    public:
  4234.     /*! Returns the bin type string. */
  4235.     virtual string getBinType(()) {}
  4236.     /*!
  4237.     Sets the render bin type which limits what render instances are added to this bin.
  4238.    
  4239.      */
  4240.     string binType;
  4241.     /*!
  4242.     Defines the order for rendering in relation to other bins.
  4243.    
  4244.      */
  4245.     float renderOrder;
  4246.     /*!
  4247.     Defines the order for adding instances in relation to other bins.
  4248.    
  4249.      */
  4250.     float processAddOrder;
  4251.     /*!
  4252.     Limites the render bin to basic lighting only.
  4253.    
  4254.      */
  4255.     bool basicOnly;
  4256.  
  4257.     /*! @name Ungrouped
  4258.     @{ */
  4259.     /*! */
  4260.     /// @}
  4261.  
  4262.  
  4263.     /*! @name Object
  4264.     @{ */
  4265.     /*! */
  4266.     /// @}
  4267.  
  4268.  
  4269.     /*! @name Editing
  4270.     @{ */
  4271.     /*! */
  4272.     /// @}
  4273.  
  4274.  
  4275.     /*! @name Persistence
  4276.     @{ */
  4277.     /*! */
  4278.     /// @}
  4279.  
  4280.  };
  4281.  
  4282.  /*!
  4283.  @brief An abstract base class for render bin managers that render to a named textue target.
  4284.  
  4285.  This bin itself doesn't do any rendering work.  It offers functionality to manage a texture render target which derived render bin classes can render into.
  4286.  
  4287.  @see RenderPrePassMgr
  4288.  @ingroup RenderBin
  4289.   */
  4290.  class  RenderTexTargetBinManager : public RenderBinManager {
  4291.    public:
  4292.  
  4293.     /*! @name Ungrouped
  4294.     @{ */
  4295.     /*! */
  4296.     /// @}
  4297.  
  4298.  
  4299.     /*! @name Object
  4300.     @{ */
  4301.     /*! */
  4302.     /// @}
  4303.  
  4304.  
  4305.     /*! @name Editing
  4306.     @{ */
  4307.     /*! */
  4308.     /// @}
  4309.  
  4310.  
  4311.     /*! @name Persistence
  4312.     @{ */
  4313.     /*! */
  4314.     /// @}
  4315.  
  4316.  };
  4317.  
  4318.  /*!
  4319.  @brief Rendering Manager responsible for lighting, shadows, and global variables affecing both.
  4320.  
  4321.  Should not be exposed to TorqueScript as a game object, meant for internal use only
  4322.  
  4323.   */
  4324.  class  AdvancedLightBinManager : public RenderTexTargetBinManager {
  4325.    public:
  4326.  
  4327.     /*! @name Ungrouped
  4328.     @{ */
  4329.     /*! */
  4330.     /// @}
  4331.  
  4332.  
  4333.     /*! @name Object
  4334.     @{ */
  4335.     /*! */
  4336.     /// @}
  4337.  
  4338.  
  4339.     /*! @name Editing
  4340.     @{ */
  4341.     /*! */
  4342.     /// @}
  4343.  
  4344.  
  4345.     /*! @name Persistence
  4346.     @{ */
  4347.     /*! */
  4348.     /// @}
  4349.  
  4350.  };
  4351.  
  4352.  /// Stub class
  4353.  ///
  4354.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4355.  ///       information was available for this class.
  4356.  class  AL_LightBinMgr : public AdvancedLightBinManager {
  4357.    public:
  4358.  };
  4359.  
  4360.  /*!
  4361.  @brief The render bin which performs a z+normals prepass used in Advanced Lighting.
  4362.  
  4363.  This render bin is used in Advanced Lighting to gather all opaque mesh render instances and render them to the g-buffer for use in lighting the scene and doing effects.
  4364.  
  4365.  PostEffect and other shaders can access the output of this bin by using the #prepass texture target name.  See the edge anti-aliasing post effect for an example.
  4366.  
  4367.  @see game/core/scripts/client/postFx/edgeAA.cs
  4368.  @ingroup RenderBin
  4369.   */
  4370.  class  RenderPrePassMgr : public RenderTexTargetBinManager {
  4371.    public:
  4372.  
  4373.     /*! @name Ungrouped
  4374.     @{ */
  4375.     /*! */
  4376.     /// @}
  4377.  
  4378.  
  4379.     /*! @name Object
  4380.     @{ */
  4381.     /*! */
  4382.     /// @}
  4383.  
  4384.  
  4385.     /*! @name Editing
  4386.     @{ */
  4387.     /*! */
  4388.     /// @}
  4389.  
  4390.  
  4391.     /*! @name Persistence
  4392.     @{ */
  4393.     /*! */
  4394.     /// @}
  4395.  
  4396.  };
  4397.  
  4398.  /// Stub class
  4399.  ///
  4400.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4401.  ///       information was available for this class.
  4402.  class  AL_PrePassBin : public RenderPrePassMgr {
  4403.    public:
  4404.  };
  4405.  
  4406.  /*!
  4407.  @brief A grouping of render bin managers which forms a render pass.
  4408.  
  4409.  The render pass is used to order a set of RenderBinManager objects which are used when rendering a scene.  This class does little work itself other than managing its list of render bins.
  4410.  
  4411.  In 'core/scripts/client/renderManager.cs' you will find the DiffuseRenderPassManager which is used by the C++ engine to render the scene.
  4412.  
  4413.  @see RenderBinManager
  4414.  @ingroup RenderBin
  4415.   */
  4416.  class  RenderPassManager : public SimObject {
  4417.    public:
  4418.     /*! Returns the total number of bin managers. */
  4419.     virtual int getManagerCount(()) {}
  4420.     /*! Returns the render bin manager at the index or null if the index is out of range. */
  4421.     virtual string getManager(( int index )) {}
  4422.     /*! Add as a render bin manager to the pass. */
  4423.     virtual void addManager(( RenderBinManager  renderBin )) {}
  4424.     /*! Removes a render bin manager. */
  4425.     virtual void removeManager(( RenderBinManager  renderBin )) {}
  4426.  };
  4427.  
  4428.  /// Stub class
  4429.  ///
  4430.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4431.  ///       information was available for this class.
  4432.  class  ShadowRenderPassManager : public RenderPassManager {
  4433.    public:
  4434.  };
  4435.  
  4436.  /// Stub class
  4437.  ///
  4438.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4439.  ///       information was available for this class.
  4440.  class  BlurDepthShader : public ShaderData {
  4441.    public:
  4442.  };
  4443.  
  4444.  /*!
  4445.  @brief Material object which provides more control over surface properties.
  4446.  
  4447.  CustomMaterials allow the user to specify their own shaders via the ShaderData datablock CustomMaterials are derived from Materials, so they can hold a lot of the same properties, but it is up to the user to code how these properties are used.
  4448.  
  4449.  @tsexample
  4450.  singleton CustomMaterial( WaterBasic )
  4451.  {
  4452.     sampler["reflectMap"] = "$reflectbuff";
  4453.     sampler["refractBuff"] = "$backbuff";
  4454.  
  4455.     cubemap = NewLevelSkyCubemap;
  4456.     shader = WaterBasicShader;
  4457.     stateBlock = WaterBasicStateBlock;
  4458.     version = 2.0;
  4459.  };
  4460.  @endtsexample
  4461.  
  4462.  @see Material, GFXStateBlock, GFXShaderData
  4463.  
  4464.  @ingroup Materials
  4465.   */
  4466.  class  CustomMaterial : public Material {
  4467.    public:
  4468.     /*!
  4469.     Specifies pixel shader version for hardware, such as 2.0, 3.0, etc.
  4470.    
  4471.      */
  4472.     float version;
  4473.     /*!
  4474.     Alternate material for targeting lower end hardware.
  4475.    
  4476.      */
  4477.     Material fallback;
  4478.     /*!
  4479.     Name of a GFXShaderData for this effect.
  4480.    
  4481.      */
  4482.     string shader;
  4483.     /*!
  4484.     Name of a GFXStateBlockData for this effect.
  4485.    
  4486.      */
  4487.     GFXStateBlockData stateBlock;
  4488.     /*!
  4489.     String identifier of this material's target texture.
  4490.    
  4491.      */
  4492.     string target;
  4493.     /*!
  4494.     Flags this material as needing lights for forward rendering.
  4495.    
  4496.      */
  4497.     bool forwardLit;
  4498.  
  4499.     /*! @name Behavioral
  4500.     @{ */
  4501.     /*! */
  4502.     /// @}
  4503.  
  4504.  
  4505.     /*! @name Ungrouped
  4506.     @{ */
  4507.     /*! */
  4508.     /// @}
  4509.  
  4510.  
  4511.     /*! @name Object
  4512.     @{ */
  4513.     /*! */
  4514.     /// @}
  4515.  
  4516.  
  4517.     /*! @name Editing
  4518.     @{ */
  4519.     /*! */
  4520.     /// @}
  4521.  
  4522.  
  4523.     /*! @name Persistence
  4524.     @{ */
  4525.     /*! */
  4526.     /// @}
  4527.  
  4528.  };
  4529.  
  4530.  /// Stub class
  4531.  ///
  4532.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4533.  ///       information was available for this class.
  4534.  class  BL_ProjectedShadowMaterial : public CustomMaterial {
  4535.    public:
  4536.  };
  4537.  
  4538.  /// Stub class
  4539.  ///
  4540.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4541.  ///       information was available for this class.
  4542.  class  BL_ProjectedShadowShaderData : public ShaderData {
  4543.    public:
  4544.  };
  4545.  
  4546.  /*!
  4547.  @brief A state block description for rendering.
  4548.  
  4549.  This object is used with ShaderData in CustomMaterial and PostEffect to define the render state.
  4550.  @tsexample
  4551.  singleton GFXStateBlockData( PFX_DOFDownSampleStateBlock )
  4552.  {
  4553.     zDefined = true;
  4554.     zEnable = false;
  4555.     zWriteEnable = false;
  4556.  
  4557.     samplersDefined = true;
  4558.     samplerStates[0] = SamplerClampLinear;
  4559.     samplerStates[1] = SamplerClampPoint;
  4560.  
  4561.     // Copy the clamped linear sampler, but change
  4562.     // the u coord to wrap for this special case.
  4563.     samplerStates[2] = new GFXSamplerStateData( : SamplerClampLinear )
  4564.     {
  4565.        addressModeU = GFXAddressWrap;
  4566.     };
  4567.  };
  4568.  @endtsexample
  4569.  @note The 'xxxxDefined' fields are used to know what groups of fields are modified when combining multiple state blocks in material processing.  You should take care to enable the right ones when setting values.
  4570.  @ingroup GFX
  4571.   */
  4572.  class  GFXStateBlockData : public SimObject {
  4573.    public:
  4574.  
  4575.     /*! @name Alpha Blending
  4576.     @{ */
  4577.     /*! */
  4578.     /*!
  4579.     Set to true if the alpha blend state is not all defaults.
  4580.    
  4581.      */
  4582.     bool blendDefined;
  4583.     /*!
  4584.     Enables alpha blending.  The default is false.
  4585.    
  4586.      */
  4587.     bool blendEnable;
  4588.     /*!
  4589.     The source blend state.  The default is GFXBlendOne.
  4590.    
  4591.      */
  4592.     GFXBlend blendSrc;
  4593.     /*!
  4594.     The destination blend state.  The default is GFXBlendZero.
  4595.    
  4596.      */
  4597.     GFXBlend blendDest;
  4598.     /*!
  4599.     The arithmetic operation applied to alpha blending.  The default is GFXBlendOpAdd.
  4600.    
  4601.      */
  4602.     GFXBlendOp blendOp;
  4603.     /// @}
  4604.  
  4605.  
  4606.     /*! @name Separate Alpha Blending
  4607.     @{ */
  4608.     /*! */
  4609.     /*!
  4610.     Set to true if the seperate alpha blend state is not all defaults.
  4611.    
  4612.      */
  4613.     bool separateAlphaBlendDefined;
  4614.     /*!
  4615.     Enables the separate blend mode for the alpha channel.  The default is false.
  4616.    
  4617.      */
  4618.     bool separateAlphaBlendEnable;
  4619.     /*!
  4620.     The source blend state.  The default is GFXBlendOne.
  4621.    
  4622.      */
  4623.     GFXBlend separateAlphaBlendSrc;
  4624.     /*!
  4625.     The destination blend state.  The default is GFXBlendZero.
  4626.    
  4627.      */
  4628.     GFXBlend separateAlphaBlendDest;
  4629.     /*!
  4630.     The arithmetic operation applied to separate alpha blending.  The default is GFXBlendOpAdd.
  4631.    
  4632.      */
  4633.     GFXBlendOp separateAlphaBlendOp;
  4634.     /// @}
  4635.  
  4636.  
  4637.     /*! @name Alpha Test
  4638.     @{ */
  4639.     /*! */
  4640.     /*!
  4641.     Set to true if the alpha test state is not all defaults.
  4642.    
  4643.      */
  4644.     bool alphaDefined;
  4645.     /*!
  4646.     Enables per-pixel alpha testing.  The default is false.
  4647.    
  4648.      */
  4649.     bool alphaTestEnable;
  4650.     /*!
  4651.     The test function used to accept or reject a pixel based on its alpha value.  The default is GFXCmpGreaterEqual.
  4652.    
  4653.      */
  4654.     GFXCmpFunc alphaTestFunc;
  4655.     /*!
  4656.     The reference alpha value against which pixels are tested.  The default is zero.
  4657.    
  4658.      */
  4659.     int alphaTestRef;
  4660.     /// @}
  4661.  
  4662.  
  4663.     /*! @name Color Write
  4664.     @{ */
  4665.     /*! */
  4666.     /*!
  4667.     Set to true if the color write state is not all defaults.
  4668.    
  4669.      */
  4670.     bool colorWriteDefined;
  4671.     /*!
  4672.     Enables red channel writes.  The default is true.
  4673.    
  4674.      */
  4675.     bool colorWriteRed;
  4676.     /*!
  4677.     Enables blue channel writes.  The default is true.
  4678.    
  4679.      */
  4680.     bool colorWriteBlue;
  4681.     /*!
  4682.     Enables green channel writes.  The default is true.
  4683.    
  4684.      */
  4685.     bool colorWriteGreen;
  4686.     /*!
  4687.     Enables alpha channel writes.  The default is true.
  4688.    
  4689.      */
  4690.     bool colorWriteAlpha;
  4691.     /// @}
  4692.  
  4693.  
  4694.     /*! @name Culling
  4695.     @{ */
  4696.     /*! */
  4697.     /*!
  4698.     Set to true if the culling state is not all defaults.
  4699.    
  4700.      */
  4701.     bool cullDefined;
  4702.     /*!
  4703.     Defines how back facing triangles are culled if at all.  The default is GFXCullCCW.
  4704.    
  4705.      */
  4706.     GFXCullMode cullMode;
  4707.     /// @}
  4708.  
  4709.  
  4710.     /*! @name Depth
  4711.     @{ */
  4712.     /*! */
  4713.     /*!
  4714.     Set to true if the depth state is not all defaults.
  4715.    
  4716.      */
  4717.     bool zDefined;
  4718.     /*!
  4719.     Enables z-buffer reads.  The default is true.
  4720.    
  4721.      */
  4722.     bool zEnable;
  4723.     /*!
  4724.     Enables z-buffer writes.  The default is true.
  4725.    
  4726.      */
  4727.     bool zWriteEnable;
  4728.     /*!
  4729.     The depth comparision function which a pixel must pass to be written to the z-buffer.  The default is GFXCmpLess.
  4730.    
  4731.      */
  4732.     GFXCmpFunc zFunc;
  4733.     /*!
  4734.     A floating-point bias used when comparing depth values.  The default is zero.
  4735.    
  4736.      */
  4737.     float zBias;
  4738.     /*!
  4739.     An additional floating-point bias based on the maximum depth slop of the triangle being rendered.  The default is zero.
  4740.    
  4741.      */
  4742.     float zSlopeBias;
  4743.     /// @}
  4744.  
  4745.  
  4746.     /*! @name Stencil
  4747.     @{ */
  4748.     /*! */
  4749.     /*!
  4750.     Set to true if the stencil state is not all defaults.
  4751.    
  4752.      */
  4753.     bool stencilDefined;
  4754.     /*!
  4755.     Enables stenciling.  The default is false.
  4756.    
  4757.      */
  4758.     bool stencilEnable;
  4759.     /*!
  4760.     The stencil operation to perform if the stencil test fails.  The default is GFXStencilOpKeep.
  4761.    
  4762.      */
  4763.     GFXStencilOp stencilFailOp;
  4764.     /*!
  4765.     The stencil operation to perform if the stencil test passes and the depth test fails.  The default is GFXStencilOpKeep.
  4766.    
  4767.      */
  4768.     GFXStencilOp stencilZFailOp;
  4769.     /*!
  4770.     The stencil operation to perform if both the stencil and the depth tests pass.  The default is GFXStencilOpKeep.
  4771.    
  4772.      */
  4773.     GFXStencilOp stencilPassOp;
  4774.     /*!
  4775.     The comparison function to test the reference value to a stencil buffer entry.  The default is GFXCmpNever.
  4776.    
  4777.      */
  4778.     GFXCmpFunc stencilFunc;
  4779.     /*!
  4780.     The reference value for the stencil test.  The default is zero.
  4781.    
  4782.      */
  4783.     int stencilRef;
  4784.     /*!
  4785.     The mask applied to the reference value and each stencil buffer entry to determine the significant bits for the stencil test. The default is 0xFFFFFFFF.
  4786.    
  4787.      */
  4788.     int stencilMask;
  4789.     /*!
  4790.     The write mask applied to values written into the stencil buffer. The default is 0xFFFFFFFF.
  4791.    
  4792.      */
  4793.     int stencilWriteMask;
  4794.     /// @}
  4795.  
  4796.  
  4797.     /*! @name Fixed Function
  4798.     @{ */
  4799.     /*! */
  4800.     /*!
  4801.     Enables fixed function lighting when rendering without a shader on geometry with vertex normals.  The default is false.
  4802.    
  4803.      */
  4804.     bool ffLighting;
  4805.     /*!
  4806.     Enables fixed function vertex coloring when rendering without a shader.  The default is false.
  4807.    
  4808.      */
  4809.     bool vertexColorEnable;
  4810.     /// @}
  4811.  
  4812.  
  4813.     /*! @name Sampler States
  4814.     @{ */
  4815.     /*! */
  4816.     /*!
  4817.     Set to true if the sampler states are not all defaults.
  4818.    
  4819.      */
  4820.     bool samplersDefined;
  4821.     /*!
  4822.     The array of texture sampler states.
  4823. @note Not all graphics devices support 16 samplers.  In general all systems support 4 samplers with most modern cards doing 8.
  4824.    
  4825.      */
  4826.     GFXSamplerStateData samplerStates;
  4827.     /*!
  4828.     The color used for multiple-texture blending with the GFXTATFactor texture-blending argument or the GFXTOPBlendFactorAlpha texture-blending operation.  The default is opaque white (255, 255, 255, 255).
  4829.    
  4830.      */
  4831.     ColorI textureFactor;
  4832.     /// @}
  4833.  
  4834.  
  4835.     /*! @name Ungrouped
  4836.     @{ */
  4837.     /*! */
  4838.     /// @}
  4839.  
  4840.  
  4841.     /*! @name Object
  4842.     @{ */
  4843.     /*! */
  4844.     /// @}
  4845.  
  4846.  
  4847.     /*! @name Editing
  4848.     @{ */
  4849.     /*! */
  4850.     /// @}
  4851.  
  4852.  
  4853.     /*! @name Persistence
  4854.     @{ */
  4855.     /*! */
  4856.     /// @}
  4857.  
  4858.  };
  4859.  
  4860.  /// Stub class
  4861.  ///
  4862.  /// @note This is a stub class to ensure a proper class hierarchy. No
  4863.  ///       information was available for this class.
  4864.  class  BL_ProjectedShadowSBData : public GFXStateBlockData {
  4865.    public:
  4866.  };
  4867.  
  4868.  /*!
  4869.  @brief A fullscreen shader effect.
  4870.  
  4871.  @section PFXTextureIdentifiers
  4872.  
  4873.  @ingroup Rendering
  4874.   */
  4875.  class  PostEffect : public SimGroup {
  4876.    public:
  4877.     virtual Script onEnabled(( string this )) {}
  4878.     virtual Script viewDisassembly(( string this )) {}
  4879.     virtual Script InspectVars(( string this )) {}
  4880.        /*! Called when this object is first created and registered. */
  4881.        void onAdd();
  4882.  
  4883.        /*! Called when an effect is processed but before textures are bound. This allows the user to change texture related paramaters or macros at runtime.
  4884. @tsexample
  4885. function SSAOPostFx::preProcess( %this )
  4886. {
  4887.    if ( $SSAOPostFx::quality !$= %this.quality )
  4888.    {
  4889.       %this.quality = mClamp( mRound( $SSAOPostFx::quality ), 0, 2 );
  4890.      
  4891.       %this.setShaderMacro( "QUALITY", %this.quality );
  4892.    }
  4893.    %this.targetScale = $SSAOPostFx::targetScale;
  4894. }
  4895. @endtsexample
  4896. @see setShaderConst
  4897. @see setShaderMacro */
  4898.        void preProcess();
  4899.  
  4900.        /*! Called immediate before processing this effect. This is the user's chance to set the value of shader uniforms (constants).
  4901. @see setShaderConst */
  4902.        void setShaderConsts();
  4903.  
  4904.        /*! Called when this effect becomes enabled. If the user returns false from this callback the effect will not be enabled.
  4905. @return True to allow this effect to be enabled. */
  4906.        bool onEnabled();
  4907.  
  4908.        /*! Called when this effect becomes disabled. */
  4909.        void onDisabled();
  4910.  
  4911.     /*! Reloads the effect shader and textures. */
  4912.     virtual void reload(()) {}
  4913.     /*! Enables the effect. */
  4914.     virtual void enable(()) {}
  4915.     /*! Disables the effect. */
  4916.     virtual void disable(()) {}
  4917.     /*! Toggles the effect between enabled / disabled.
  4918. @return True if effect is enabled. */
  4919.     virtual bool toggle(()) {}
  4920.     /*! @return True if the effect is enabled. */
  4921.     virtual bool isEnabled(()) {}
  4922.     /*! Sets the value of a uniform defined in the shader. This will usually be called within the setShaderConsts callback. Array type constants are not supported.
  4923. @param name Name of the constanst, prefixed with '$'.
  4924. @param value Value to set, space seperate values with more than one element.
  4925. @tsexample
  4926. function MyPfx::setShaderConsts( %this )
  4927. {
  4928.    // example float4 uniform
  4929.    %this.setShaderConst( "$colorMod", "1.0 0.9 1.0 1.0" );
  4930.    // example float1 uniform
  4931.    %this.setShaderConst( "$strength", "3.0" );
  4932.    // example integer uniform
  4933.    %this.setShaderConst( "$loops", "5" );}
  4934. @endtsexample */
  4935.     virtual void setShaderConst(( string name, string value )) {}
  4936.     /*! Sets the texture in the shader */
  4937.     virtual void setTexture(( int texture_slot, string texture_name )) {}
  4938.     /*! @return Width over height of the backbuffer. */
  4939.     virtual float getAspectRatio(()) {}
  4940.     /*! Dumps this PostEffect shader's disassembly to a temporary text file.
  4941. @return Full path to the dumped file or an empty string if failed. */
  4942.     virtual string dumpShaderDisassembly(()) {}
  4943.     /*! Adds a macro to the effect's shader or sets an existing one's value. This will usually be called within the onAdd or preProcess callback.
  4944. @param key lval of the macro.@param value rval of the macro, or may be empty.@tsexample
  4945. function MyPfx::onAdd( %this )
  4946. {
  4947.    %this.setShaderMacro( "NUM_SAMPLES", "10" );
  4948.    %this.setShaderMacro( "HIGH_QUALITY_MODE" );
  4949.    
  4950.    // In the shader looks like...
  4951.    // #define NUM_SAMPLES 10
  4952.    // #define HIGH_QUALITY_MODE
  4953. }
  4954. @endtsexample */
  4955.     virtual void setShaderMacro(( string key, string value="" )) {}
  4956.     /*! Remove a shader macro. This will usually be called within the preProcess callback.
  4957. @param key Macro to remove. */
  4958.     virtual void removeShaderMacro(( string key )) {}
  4959.     /*! Remove all shader macros. */
  4960.     virtual void clearShaderMacros(()) {}
  4961.     /*!
  4962.     Name of a GFXShaderData for this effect.
  4963.    
  4964.      */
  4965.     string shader;
  4966.     /*!
  4967.     Name of a GFXStateBlockData for this effect.
  4968.    
  4969.      */
  4970.     GFXStateBlockData stateBlock;
  4971.     /*!
  4972.     String identifier of this effect's target texture.
  4973. @see PFXTextureIdentifiers
  4974.    
  4975.      */
  4976.     string target;
  4977.     /*!
  4978.     Optional string identifier for this effect's target depth/stencil texture.
  4979. @see PFXTextureIdentifiers
  4980.    
  4981.      */
  4982.     string targetDepthStencil;
  4983.     /*!
  4984.     If targetSize is zero this is used to set a relative size from the current target.
  4985.    
  4986.      */
  4987.     Point2F targetScale;
  4988.     /*!
  4989.     If non-zero this is used as the absolute target size.
  4990.    
  4991.      */
  4992.     Point2I targetSize;
  4993.     /*!
  4994.     Format of the target texture, not applicable if writing to the backbuffer.
  4995.    
  4996.      */
  4997.     GFXFormat targetFormat;
  4998.     /*!
  4999.     Color to which the target texture is cleared before rendering.
  5000.    
  5001.      */
  5002.     ColorF targetClearColor;
  5003.     /*!
  5004.     Describes when the target texture should be cleared.
  5005.    
  5006.      */
  5007.     PFXTargetClear targetClear;
  5008.     /*!
  5009.     Input textures to this effect ( samplers ).
  5010. @see PFXTextureIdentifiers
  5011.    
  5012.      */
  5013.     filename texture;
  5014.     /*!
  5015.     When to process this effect during the frame.
  5016.    
  5017.      */
  5018.     PFXRenderTime renderTime;
  5019.     /*!
  5020.     Name of a renderBin, used if renderTime is PFXBeforeBin or PFXAfterBin.
  5021.    
  5022.      */
  5023.     string renderBin;
  5024.     /*!
  5025.     PostEffects are processed in DESCENDING order of renderPriority if more than one has the same renderBin/Time.
  5026.    
  5027.      */
  5028.     float renderPriority;
  5029.     /*!
  5030.     Is this effect processed during reflection render passes.
  5031.    
  5032.      */
  5033.     bool allowReflectPass;
  5034.     /*!
  5035.     Is the effect on.
  5036.    
  5037.      */
  5038.     bool isEnabled;
  5039.     /*!
  5040.     Allows you to turn on a PostEffect for only a single frame.
  5041.    
  5042.      */
  5043.     bool onThisFrame;
  5044.     /*!
  5045.     Allows you to turn on a PostEffect for only a single frame.
  5046.    
  5047.      */
  5048.     bool oneFrameOnly;
  5049.     /*!
  5050.     Skip processing of this PostEffect and its children even if its parent is enabled. Parent and sibling PostEffects in the chain are still processed.
  5051.    
  5052.      */
  5053.     bool skip;
  5054.  
  5055.     /*! @name Ungrouped
  5056.     @{ */
  5057.     /*! */
  5058.     /// @}
  5059.  
  5060.  
  5061.     /*! @name Object
  5062.     @{ */
  5063.     /*! */
  5064.     /// @}
  5065.  
  5066.  
  5067.     /*! @name Editing
  5068.     @{ */
  5069.     /*! */
  5070.     /// @}
  5071.  
  5072.  
  5073.     /*! @name Persistence
  5074.     @{ */
  5075.     /*! */
  5076.     /// @}
  5077.  
  5078.  };
  5079.  
  5080.  /// Stub class
  5081.  ///
  5082.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5083.  ///       information was available for this class.
  5084.  class  BL_ShadowFilterPostFx : public PostEffect {
  5085.    public:
  5086.  };
  5087.  
  5088.  /// Stub class
  5089.  ///
  5090.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5091.  ///       information was available for this class.
  5092.  class  BL_ShadowFilterSB : public GFXStateBlockData {
  5093.    public:
  5094.  };
  5095.  
  5096.  /// Stub class
  5097.  ///
  5098.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5099.  ///       information was available for this class.
  5100.  class  BL_ShadowFilterShaderH : public ShaderData {
  5101.    public:
  5102.  };
  5103.  
  5104.  /// Stub class
  5105.  ///
  5106.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5107.  ///       information was available for this class.
  5108.  class  BL_ShadowFilterShaderV : public ShaderData {
  5109.    public:
  5110.  };
  5111.  
  5112.  /// Stub class
  5113.  ///
  5114.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5115.  ///       information was available for this class.
  5116.  class  AL_ShadowVizOverlayCtrl : public GuiControl {
  5117.    public:
  5118.  };
  5119.  
  5120.  /// Stub class
  5121.  ///
  5122.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5123.  ///       information was available for this class.
  5124.  class  AL_ShadowLabelTextProfile : public GuiControlProfile {
  5125.    public:
  5126.  };
  5127.  
  5128.  /// Stub class
  5129.  ///
  5130.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5131.  ///       information was available for this class.
  5132.  class  AL_ShadowVisualizeMaterial : public CustomMaterial {
  5133.    public:
  5134.  };
  5135.  
  5136.  /// Stub class
  5137.  ///
  5138.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5139.  ///       information was available for this class.
  5140.  class  AL_ShadowVisualizeShader : public ShaderData {
  5141.    public:
  5142.  };
  5143.  
  5144.  class  AL_LightSpecularVisualize : public PostEffect {
  5145.    public:
  5146.     virtual Script onEnabled(( string this )) {}
  5147.  };
  5148.  
  5149.  /// Stub class
  5150.  ///
  5151.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5152.  ///       information was available for this class.
  5153.  class  AL_LightSpecularVisualizeShader : public ShaderData {
  5154.    public:
  5155.  };
  5156.  
  5157.  class  AL_LightColorVisualize : public PostEffect {
  5158.    public:
  5159.     virtual Script onEnabled(( string this )) {}
  5160.  };
  5161.  
  5162.  /// Stub class
  5163.  ///
  5164.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5165.  ///       information was available for this class.
  5166.  class  AL_LightColorVisualizeShader : public ShaderData {
  5167.    public:
  5168.  };
  5169.  
  5170.  class  AL_NormalsVisualize : public PostEffect {
  5171.    public:
  5172.     virtual Script onEnabled(( string this )) {}
  5173.  };
  5174.  
  5175.  /// Stub class
  5176.  ///
  5177.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5178.  ///       information was available for this class.
  5179.  class  AL_NormalsVisualizeShader : public ShaderData {
  5180.    public:
  5181.  };
  5182.  
  5183.  class  AL_DepthVisualize : public PostEffect {
  5184.    public:
  5185.     virtual Script onEnabled(( string this )) {}
  5186.  };
  5187.  
  5188.  /// Stub class
  5189.  ///
  5190.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5191.  ///       information was available for this class.
  5192.  class  AL_DepthVisualizeShader : public ShaderData {
  5193.    public:
  5194.  };
  5195.  
  5196.  /// Stub class
  5197.  ///
  5198.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5199.  ///       information was available for this class.
  5200.  class  AL_DefaultVisualizeState : public GFXStateBlockData {
  5201.    public:
  5202.  };
  5203.  
  5204.  /// Stub class
  5205.  ///
  5206.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5207.  ///       information was available for this class.
  5208.  class  AL_DepthVisualizeState : public GFXStateBlockData {
  5209.    public:
  5210.  };
  5211.  
  5212.  /// Stub class
  5213.  ///
  5214.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5215.  ///       information was available for this class.
  5216.  class  AL_ParticlePointLightMaterial : public CustomMaterial {
  5217.    public:
  5218.  };
  5219.  
  5220.  /// Stub class
  5221.  ///
  5222.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5223.  ///       information was available for this class.
  5224.  class  AL_ParticlePointLightShader : public ShaderData {
  5225.    public:
  5226.  };
  5227.  
  5228.  /// Stub class
  5229.  ///
  5230.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5231.  ///       information was available for this class.
  5232.  class  AL_DefaultShadowMaterial : public Material {
  5233.    public:
  5234.  };
  5235.  
  5236.  /// Stub class
  5237.  ///
  5238.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5239.  ///       information was available for this class.
  5240.  class  AL_DefaultPrePassMaterial : public Material {
  5241.    public:
  5242.  };
  5243.  
  5244.  /// Stub class
  5245.  ///
  5246.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5247.  ///       information was available for this class.
  5248.  class  AL_SpotLightMaterial : public CustomMaterial {
  5249.    public:
  5250.  };
  5251.  
  5252.  /// Stub class
  5253.  ///
  5254.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5255.  ///       information was available for this class.
  5256.  class  AL_SpotLightShader : public ShaderData {
  5257.    public:
  5258.  };
  5259.  
  5260.  /// Stub class
  5261.  ///
  5262.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5263.  ///       information was available for this class.
  5264.  class  AL_PointLightMaterial : public CustomMaterial {
  5265.    public:
  5266.  };
  5267.  
  5268.  /// Stub class
  5269.  ///
  5270.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5271.  ///       information was available for this class.
  5272.  class  AL_PointLightShader : public ShaderData {
  5273.    public:
  5274.  };
  5275.  
  5276.  /// Stub class
  5277.  ///
  5278.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5279.  ///       information was available for this class.
  5280.  class  AL_ConvexLightState : public GFXStateBlockData {
  5281.    public:
  5282.  };
  5283.  
  5284.  /// Stub class
  5285.  ///
  5286.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5287.  ///       information was available for this class.
  5288.  class  AL_VectorLightMaterial : public CustomMaterial {
  5289.    public:
  5290.  };
  5291.  
  5292.  /// Stub class
  5293.  ///
  5294.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5295.  ///       information was available for this class.
  5296.  class  AL_VectorLightShader : public ShaderData {
  5297.    public:
  5298.  };
  5299.  
  5300.  /// Stub class
  5301.  ///
  5302.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5303.  ///       information was available for this class.
  5304.  class  AL_VectorLightState : public GFXStateBlockData {
  5305.    public:
  5306.  };
  5307.  
  5308.  /*!
  5309.  @brief A render bin which uses object callbacks for rendering.
  5310.  
  5311.  This render bin gathers object render instances and calls its delegate method to perform rendering.  It is used infrequently for specialized scene objects which perform custom rendering.
  5312.  
  5313.  @ingroup RenderBin
  5314.   */
  5315.  class  RenderObjectMgr : public RenderBinManager {
  5316.    public:
  5317.  
  5318.     /*! @name Ungrouped
  5319.     @{ */
  5320.     /*! */
  5321.     /// @}
  5322.  
  5323.  
  5324.     /*! @name Object
  5325.     @{ */
  5326.     /*! */
  5327.     /// @}
  5328.  
  5329.  
  5330.     /*! @name Editing
  5331.     @{ */
  5332.     /*! */
  5333.     /// @}
  5334.  
  5335.  
  5336.     /*! @name Persistence
  5337.     @{ */
  5338.     /*! */
  5339.     /// @}
  5340.  
  5341.  };
  5342.  
  5343.  /// Stub class
  5344.  ///
  5345.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5346.  ///       information was available for this class.
  5347.  class  EditorBin : public RenderObjectMgr {
  5348.    public:
  5349.  };
  5350.  
  5351.  /*!
  5352.  @brief A render bin for the glow pass.
  5353.  
  5354.  When the glow buffer PostEffect is enabled this bin gathers mesh render instances with glow materials and renders them to the #glowbuffer offscreen render target.
  5355.  
  5356.  This render target is then used by the 'GlowPostFx' PostEffect to blur and render the glowing portions of the screen.
  5357.  
  5358.  @ingroup RenderBin
  5359.   */
  5360.  class  RenderGlowMgr : public RenderTexTargetBinManager {
  5361.    public:
  5362.  
  5363.     /*! @name Ungrouped
  5364.     @{ */
  5365.     /*! */
  5366.     /// @}
  5367.  
  5368.  
  5369.     /*! @name Object
  5370.     @{ */
  5371.     /*! */
  5372.     /// @}
  5373.  
  5374.  
  5375.     /*! @name Editing
  5376.     @{ */
  5377.     /*! */
  5378.     /// @}
  5379.  
  5380.  
  5381.     /*! @name Persistence
  5382.     @{ */
  5383.     /*! */
  5384.     /// @}
  5385.  
  5386.  };
  5387.  
  5388.  /// Stub class
  5389.  ///
  5390.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5391.  ///       information was available for this class.
  5392.  class  GlowBin : public RenderGlowMgr {
  5393.    public:
  5394.  };
  5395.  
  5396.  /// Stub class
  5397.  ///
  5398.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5399.  ///       information was available for this class.
  5400.  class  ObjTranslucentBin : public RenderObjectMgr {
  5401.    public:
  5402.  };
  5403.  
  5404.  /*!
  5405.  @brief Abstract base class for RenderFormatToken, used to manipulate what goes on in the render manager
  5406.  
  5407.  You cannot actually instantiate RenderPassToken, only its child: RenderFormatToken. RenderFormatToken is an implementation which changes the format of the back buffer and/or the depth buffer.
  5408.  
  5409.  The RenderPassStateBin manager changes the rendering state associated with a token it is declared with. In stock Torque 3D, a single example exists in the way of AL_FormatToken (found in renderManager.cs). In that script file, all the render managers are intialized, and a single RenderFormatToken is used. This implementation basically exists to ensure Advanced Lighting works with MSAA.
  5410.  
  5411.  @see RenderFormatToken
  5412.  @see RenderPassStateBin
  5413.  @see game/core/scripts/client/renderManager.cs
  5414.  @ingroup RenderBin
  5415.   */
  5416.  class  RenderPassStateToken : public SimObject {
  5417.    public:
  5418.     /*! @brief Enables the token. */
  5419.     virtual void enable(()) {}
  5420.     /*! @brief Disables the token. */
  5421.     virtual void disable(()) {}
  5422.     /*! @brief Toggles the token from enabled to disabled or vice versa. */
  5423.     virtual void toggle(()) {}
  5424.     /*!
  5425.     Enables or disables this token.
  5426.    
  5427.      */
  5428.     bool enabled;
  5429.  
  5430.     /*! @name Ungrouped
  5431.     @{ */
  5432.     /*! */
  5433.     /// @}
  5434.  
  5435.  
  5436.     /*! @name Object
  5437.     @{ */
  5438.     /*! */
  5439.     /// @}
  5440.  
  5441.  
  5442.     /*! @name Editing
  5443.     @{ */
  5444.     /*! */
  5445.     /// @}
  5446.  
  5447.  
  5448.     /*! @name Persistence
  5449.     @{ */
  5450.     /*! */
  5451.     /// @}
  5452.  
  5453.  };
  5454.  
  5455.  /*!
  5456.  @brief Used to change the render target format when rendering in AL.
  5457.  
  5458.  RenderFormatToken is an implementation which changes the format of the back buffer and/or the depth buffer.
  5459.  
  5460.  The RenderPassStateBin manager changes the rendering state associated with this token. In stock Torque 3D, a single example exists in the way of AL_FormatToken (found in renderManager.cs). In that script file, all the render managers are intialized, and a single RenderFormatToken is used. This implementation basically exists to ensure Advanced Lighting works with MSAA.
  5461.  
  5462.  The actions for this token toggle the format of the back/depth buffers and it lets you specify a custom shader to "copy" the data so it can be reformatted or altered. This is done through the variables copyEffect and resolveEffect (which are post processes just like fog or glow)
  5463.  
  5464.  @tsexample
  5465.  // This token, and the associated render managers, ensure that driver MSAA does not get used for Advanced Lighting renders.
  5466.  // The 'AL_FormatResolve' PostEffect copies the result to the backbuffer.
  5467.  new RenderFormatToken(AL_FormatToken)
  5468.  {
  5469.     enabled = "false";
  5470.  
  5471.     format = "GFXFormatR8G8B8A8";
  5472.     depthFormat = "GFXFormatD24S8";
  5473.     aaLevel = 0; // -1 = match backbuffer
  5474.  
  5475.     // The contents of the back buffer before this format token is executed
  5476.     // is provided in $inTex
  5477.     copyEffect = "AL_FormatCopy";
  5478.  
  5479.     // The contents of the render target created by this format token is
  5480.     // provided in $inTex
  5481.     resolveEffect = "AL_FormatCopy";
  5482.  };
  5483.  @endtsexample
  5484.  
  5485.  @see RenderPassToken
  5486.  
  5487.  @see RenderPassStateBin
  5488.  @see game/core/scripts/client/renderManager.cs
  5489.  @ingroup GFX
  5490.   */
  5491.  class  RenderFormatToken : public RenderPassStateToken {
  5492.    public:
  5493.     /*!
  5494.     Sets the color buffer format for this token.
  5495.    
  5496.      */
  5497.     GFXFormat format;
  5498.     /*!
  5499.     Sets the depth/stencil buffer format for this token.
  5500.    
  5501.      */
  5502.     GFXFormat depthFormat;
  5503.     /*!
  5504.     This PostEffect will be run when the render target is changed to the format specified by this token. It is used to copy/format data into the token rendertarget
  5505.    
  5506.      */
  5507.     PostEffect copyEffect;
  5508.     /*!
  5509.     This PostEffect will be run when the render target is changed back to the format active prior to this token. It is used to copy/format data from the token rendertarget to the backbuffer.
  5510.    
  5511.      */
  5512.     PostEffect resolveEffect;
  5513.     /*!
  5514.     Anti-ailiasing level for the this token. 0 disables, -1 uses adapter default.
  5515.    
  5516.      */
  5517.     int aaLevel;
  5518.  
  5519.     /*! @name Ungrouped
  5520.     @{ */
  5521.     /*! */
  5522.     /// @}
  5523.  
  5524.  
  5525.     /*! @name Object
  5526.     @{ */
  5527.     /*! */
  5528.     /// @}
  5529.  
  5530.  
  5531.     /*! @name Editing
  5532.     @{ */
  5533.     /*! */
  5534.     /// @}
  5535.  
  5536.  
  5537.     /*! @name Persistence
  5538.     @{ */
  5539.     /*! */
  5540.     /// @}
  5541.  
  5542.  };
  5543.  
  5544.  /// Stub class
  5545.  ///
  5546.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5547.  ///       information was available for this class.
  5548.  class  AL_FormatToken : public RenderFormatToken {
  5549.    public:
  5550.  };
  5551.  
  5552.  /// Stub class
  5553.  ///
  5554.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5555.  ///       information was available for this class.
  5556.  class  DiffuseRenderPassManager : public RenderPassManager {
  5557.    public:
  5558.  };
  5559.  
  5560.  /// Stub class
  5561.  ///
  5562.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5563.  ///       information was available for this class.
  5564.  class  AL_FormatCopy : public PostEffect {
  5565.    public:
  5566.  };
  5567.  
  5568.  /// Stub class
  5569.  ///
  5570.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5571.  ///       information was available for this class.
  5572.  class  AL_FormatTokenState : public GFXStateBlockData {
  5573.    public:
  5574.  };
  5575.  
  5576.  /// Stub class
  5577.  ///
  5578.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5579.  ///       information was available for this class.
  5580.  class  PhysicsCleanupSet : public SimSet {
  5581.    public:
  5582.  };
  5583.  
  5584.  class  TwitchPlayPanelDlg : public GuiControl {
  5585.    public:
  5586.     virtual Script setMicVolume(( string this )) {}
  5587.     virtual Script setPlaybackVolume(( string this )) {}
  5588.     virtual Script pauseStreaming(()) {}
  5589.     virtual Script stopStreaming(( string this )) {}
  5590.     virtual Script init(( string this )) {}
  5591.     virtual Script onWake(( string this )) {}
  5592.  };
  5593.  
  5594.  class  TwitchStartPanelDlg : public GuiControl {
  5595.    public:
  5596.     virtual Script onResolutionChanged(( string this )) {}
  5597.     virtual Script startStreaming(( string this )) {}
  5598.     virtual Script init(( string this )) {}
  5599.     virtual Script onWake(( string this )) {}
  5600.  };
  5601.  
  5602.  class  TwitchLoginDlg : public GuiControl {
  5603.    public:
  5604.     virtual Script onLoginFailed(( string this )) {}
  5605.     virtual Script onLoginSuccess(( string this )) {}
  5606.     virtual Script Login(( string this )) {}
  5607.     virtual Script onWake(( string this )) {}
  5608.  };
  5609.  
  5610.  /// Stub class
  5611.  ///
  5612.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5613.  ///       information was available for this class.
  5614.  class  LoadingProgressTooltip : public GuiMLTextCtrl {
  5615.    public:
  5616.  };
  5617.  
  5618.  /// Stub class
  5619.  ///
  5620.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5621.  ///       information was available for this class.
  5622.  class  LoadingProgressTxt : public GuiTextCtrl {
  5623.    public:
  5624.  };
  5625.  
  5626.  class  LoadingGui : public GuiChunkedBitmapCtrl {
  5627.    public:
  5628.     virtual Script onSleep(( string this )) {}
  5629.     virtual Script onWake(( string this )) {}
  5630.     virtual Script onAdd(( string this )) {}
  5631.  };
  5632.  
  5633.  /// Stub class
  5634.  ///
  5635.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5636.  ///       information was available for this class.
  5637.  class  PlayersScrollProfile : public GuiControlProfile {
  5638.    public:
  5639.  };
  5640.  
  5641.  class  OptionsPlayersDlg {
  5642.    public:
  5643.     virtual Script _closeDialog(( string this )) {}
  5644.     virtual Script onSleep(()) {}
  5645.     virtual Script onWake(()) {}
  5646.  };
  5647.  
  5648.  /*!
  5649.  @brief A control that allows to select a value from a drop-down list.
  5650.  
  5651.  For a nearly identical GUI with additional features, use GuiPopUpMenuCtrlEx.
  5652.  
  5653.  @tsexample
  5654.  new GuiPopUpMenuCtrl()
  5655.  {
  5656.     maxPopupHeight = "200";
  5657.     sbUsesNAColor = "0";
  5658.     reverseTextList = "0";
  5659.     bitmapBounds = "16 16";
  5660.     maxLength = "1024";
  5661.     position = "56 31";
  5662.     extent = "64 64";
  5663.     minExtent = "8 2";
  5664.     profile = "GuiPopUpMenuProfile";
  5665.     tooltipProfile = "GuiToolTipProfile";
  5666.  };
  5667.  @endtsexample
  5668.  
  5669.  @note This is definitely going to be deprecated soon.
  5670.  
  5671.  @see GuiPopUpMenuCtrlEx for more features and better explanations.
  5672.  @ingroup GuiControls
  5673.   */
  5674.  class  GuiPopUpMenuCtrl : public GuiTextCtrl {
  5675.    public:
  5676.     virtual void add((string name, int idNum, int scheme=0)) {}
  5677.     virtual void addScheme((int id, ColorI fontColor, ColorI fontColorHL, ColorI fontColorSEL)) {}
  5678.     virtual string getText() {}
  5679.     /*! Clear the popup list. */
  5680.     virtual void clear() {}
  5681.     /*! Sort the list alphabetically. */
  5682.     virtual void sort() {}
  5683.     /*! Sort the list by ID. */
  5684.     virtual void sortID() {}
  5685.     virtual void forceOnAction() {}
  5686.     virtual void forceClose() {}
  5687.     virtual int getSelected() {}
  5688.     virtual void setSelected((int id, [scriptCallback=true])) {}
  5689.     virtual void setFirstSelected(([scriptCallback=true])) {}
  5690.     virtual void setNoneSelected() {}
  5691.     virtual string getTextById((int id)) {}
  5692.     virtual void changeTextById(( int id, string text )) {}
  5693.     /*! This fills the popup with a classrep's field enumeration type info.
  5694.  
  5695. More of a helper function than anything.   If console access to the field list is added, at least for the enumerated types, then this should go away.. */
  5696.     virtual void setEnumContent((string class, string enum)) {}
  5697.     /*! Returns the position of the first entry containing the specified text. */
  5698.     virtual int findText((string text)) {}
  5699.     /*! Get the size of the menu - the number of entries in it. */
  5700.     virtual int size() {}
  5701.     virtual void replaceText((bool doReplaceText)) {}
  5702.     virtual void clearEntry((S32 entry)) {}
  5703.     /*!
  5704.      */
  5705.     int maxPopupHeight;
  5706.     /*!
  5707.      */
  5708.     bool sbUsesNAColor;
  5709.     /*!
  5710.      */
  5711.     bool reverseTextList;
  5712.     /*!
  5713.      */
  5714.     filename bitmap;
  5715.     /*!
  5716.      */
  5717.     Point2I bitmapBounds;
  5718.  
  5719.     /*! @name Layout
  5720.     @{ */
  5721.     /*! */
  5722.     /// @}
  5723.  
  5724.  
  5725.     /*! @name Layout
  5726.     @{ */
  5727.     /*! */
  5728.     /// @}
  5729.  
  5730.  
  5731.     /*! @name Control
  5732.     @{ */
  5733.     /*! */
  5734.     /// @}
  5735.  
  5736.  
  5737.     /*! @name ToolTip
  5738.     @{ */
  5739.     /*! */
  5740.     /// @}
  5741.  
  5742.  
  5743.     /*! @name Editing
  5744.     @{ */
  5745.     /*! */
  5746.     /// @}
  5747.  
  5748.  
  5749.     /*! @name Localization
  5750.     @{ */
  5751.     /*! */
  5752.     /// @}
  5753.  
  5754.  
  5755.     /*! @name Ungrouped
  5756.     @{ */
  5757.     /*! */
  5758.     /// @}
  5759.  
  5760.  
  5761.     /*! @name Object
  5762.     @{ */
  5763.     /*! */
  5764.     /// @}
  5765.  
  5766.  
  5767.     /*! @name Editing
  5768.     @{ */
  5769.     /*! */
  5770.     /// @}
  5771.  
  5772.  
  5773.     /*! @name Persistence
  5774.     @{ */
  5775.     /*! */
  5776.     /// @}
  5777.  
  5778.  };
  5779.  
  5780.  class  OptAudioDeviceList : public GuiPopUpMenuCtrl {
  5781.    public:
  5782.     virtual Script onSelect(( string this, string id, string text )) {}
  5783.  };
  5784.  
  5785.  class  OptionsAudioDlg : public GuiControl {
  5786.    public:
  5787.     virtual Script saveSettings(( string this )) {}
  5788.     virtual Script cancelAndClose(( string this )) {}
  5789.     virtual Script _updatePushToTalk(( string this )) {}
  5790.     virtual Script onSleep(( string this )) {}
  5791.     virtual Script onWake(( string this )) {}
  5792.  };
  5793.  
  5794.  class  OptionsVideoDlg : public GuiControl {
  5795.    public:
  5796.     virtual Script saveSettings(( string this )) {}
  5797.     virtual Script _cancelAndClose(( string this )) {}
  5798.     virtual Script presetPopUpMenuChanged(( string this )) {}
  5799.     virtual Script _applyAndClose(( string this )) {}
  5800.     virtual Script _autoDetectQuality(( string this )) {}
  5801.     virtual Script _updateApplyState(( string this )) {}
  5802.     virtual Script applyGraphics(( string this, string testNeedApply )) {}
  5803.     virtual Script buildVideoMode(( string this )) {}
  5804.     virtual Script initResMenu(( string this )) {}
  5805.     virtual Script _txtEditShadowDistanceChanged(( string this )) {}
  5806.     virtual Script _shadowDistanceSliderChanged(( string this )) {}
  5807.     virtual Script _txtEditGrassRenderingDistanceChanged(( string this )) {}
  5808.     virtual Script _grassRenderingDistanceSliderChanged(( string this )) {}
  5809.     virtual Script LightRaysChanged(( string this )) {}
  5810.     virtual Script ColorGradingChanged(( string this )) {}
  5811.     virtual Script DepthOfFieldChanged(( string this )) {}
  5812.     virtual Script AmbientOcclusionChanged(( string this )) {}
  5813.     virtual Script ReflectionsMenuChanged(( string this )) {}
  5814.     virtual Script ShadowsMenuChanged(( string this )) {}
  5815.     virtual Script AAQualityChanged(( string this )) {}
  5816.     virtual Script _txtEditBrightnessChanged(( string this )) {}
  5817.     virtual Script _brightnessSliderChanged(( string this )) {}
  5818.     virtual Script _autoAdjustClick(( string this )) {}
  5819.     virtual Script _txtEditObjectChanged(( string this )) {}
  5820.     virtual Script _objectSliderChanged(( string this )) {}
  5821.     virtual Script _txtEditTreeDistanceChanged(( string this )) {}
  5822.     virtual Script _treeDistanceSliderChanged(( string this )) {}
  5823.     virtual Script _txtEditTreeChanged(( string this )) {}
  5824.     virtual Script _treeSliderChanged(( string this )) {}
  5825.     virtual Script _txtEditHugeChanged(( string this )) {}
  5826.     virtual Script _hugeSliderChanged(( string this )) {}
  5827.     virtual Script _txtEditBigChanged(( string this )) {}
  5828.     virtual Script _bigSliderChanged(( string this )) {}
  5829.     virtual Script _txtEditSmallChanged(( string this )) {}
  5830.     virtual Script _smallSliderChanged(( string this )) {}
  5831.     virtual Script onSleep(()) {}
  5832.     virtual Script onWake(( string this )) {}
  5833.     virtual Script setPane(( string this, string pane )) {}
  5834.  };
  5835.  
  5836.  class  GraphicsQualityPopup {
  5837.    public:
  5838.     virtual Script apply(( string this, string qualityGroup, string testNeedApply )) {}
  5839.     virtual Script init(( string this, string qualityGroup )) {}
  5840.  };
  5841.  
  5842.  /// Stub class
  5843.  ///
  5844.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5845.  ///       information was available for this class.
  5846.  class  cmCoreMessageBoxDlg : public GuiControl {
  5847.    public:
  5848.  };
  5849.  
  5850.  /// Stub class
  5851.  ///
  5852.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5853.  ///       information was available for this class.
  5854.  class  cmMessageIDBoxDlg : public GuiControl {
  5855.    public:
  5856.  };
  5857.  
  5858.  class  MessageBoxInputText {
  5859.    public:
  5860.     virtual Script onSleep(( string this )) {}
  5861.  };
  5862.  
  5863.  /// Stub class
  5864.  ///
  5865.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5866.  ///       information was available for this class.
  5867.  class  CmTreeCutProgressDlgProgress : public GuiProgressCtrl {
  5868.    public:
  5869.  };
  5870.  
  5871.  /// Stub class
  5872.  ///
  5873.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5874.  ///       information was available for this class.
  5875.  class  CmTreeCutProgressDlgFrame : public GuiWindowCtrl {
  5876.    public:
  5877.  };
  5878.  
  5879.  /// Stub class
  5880.  ///
  5881.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5882.  ///       information was available for this class.
  5883.  class  CmTreeCutProgressDlg : public GuiControl {
  5884.    public:
  5885.  };
  5886.  
  5887.  /// Stub class
  5888.  ///
  5889.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5890.  ///       information was available for this class.
  5891.  class  IODropdownMenu : public GuiPopUpMenuCtrl {
  5892.    public:
  5893.  };
  5894.  
  5895.  /// Stub class
  5896.  ///
  5897.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5898.  ///       information was available for this class.
  5899.  class  IOInputText : public GuiTextCtrl {
  5900.    public:
  5901.  };
  5902.  
  5903.  /// Stub class
  5904.  ///
  5905.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5906.  ///       information was available for this class.
  5907.  class  IOInputCheckbox : public GuiCheckBoxCtrl {
  5908.    public:
  5909.  };
  5910.  
  5911.  /// Stub class
  5912.  ///
  5913.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5914.  ///       information was available for this class.
  5915.  class  IODropdownText : public GuiMLTextCtrl {
  5916.    public:
  5917.  };
  5918.  
  5919.  /// Stub class
  5920.  ///
  5921.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5922.  ///       information was available for this class.
  5923.  class  IODropdownFrame : public GuiWindowCtrl {
  5924.    public:
  5925.  };
  5926.  
  5927.  class  IODropdownDlg : public GuiControl {
  5928.    public:
  5929.     virtual Script onSleep(( string this )) {}
  5930.  };
  5931.  
  5932.  /// Stub class
  5933.  ///
  5934.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5935.  ///       information was available for this class.
  5936.  class  MessagePopText : public GuiMLTextCtrl {
  5937.    public:
  5938.  };
  5939.  
  5940.  /// Stub class
  5941.  ///
  5942.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5943.  ///       information was available for this class.
  5944.  class  MessagePopFrame : public GuiWindowCtrl {
  5945.    public:
  5946.  };
  5947.  
  5948.  /// Stub class
  5949.  ///
  5950.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5951.  ///       information was available for this class.
  5952.  class  MessagePopupDlg : public GuiControl {
  5953.    public:
  5954.  };
  5955.  
  5956.  /// Stub class
  5957.  ///
  5958.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5959.  ///       information was available for this class.
  5960.  class  MBOKCancelDetailsInfoText : public GuiMLTextCtrl {
  5961.    public:
  5962.  };
  5963.  
  5964.  /// Stub class
  5965.  ///
  5966.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5967.  ///       information was available for this class.
  5968.  class  MBOKCancelDetailsScroll : public GuiScrollCtrl {
  5969.    public:
  5970.  };
  5971.  
  5972.  /// Stub class
  5973.  ///
  5974.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5975.  ///       information was available for this class.
  5976.  class  MBOKCancelDetailsButton : public GuiButtonCtrl {
  5977.    public:
  5978.  };
  5979.  
  5980.  /// Stub class
  5981.  ///
  5982.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5983.  ///       information was available for this class.
  5984.  class  MBOKCancelDetailsText : public GuiMLTextCtrl {
  5985.    public:
  5986.  };
  5987.  
  5988.  /// Stub class
  5989.  ///
  5990.  /// @note This is a stub class to ensure a proper class hierarchy. No
  5991.  ///       information was available for this class.
  5992.  class  MBOKCancelDetailsFrame : public GuiWindowCtrl {
  5993.    public:
  5994.  };
  5995.  
  5996.  class  MessageBoxOKCancelDetailsDlg : public GuiControl {
  5997.    public:
  5998.     virtual Script onSleep(( string this )) {}
  5999.  };
  6000.  
  6001.  /// Stub class
  6002.  ///
  6003.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6004.  ///       information was available for this class.
  6005.  class  MBOKCancelText : public GuiMLTextCtrl {
  6006.    public:
  6007.  };
  6008.  
  6009.  /// Stub class
  6010.  ///
  6011.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6012.  ///       information was available for this class.
  6013.  class  MBOKCancelFrame : public GuiWindowCtrl {
  6014.    public:
  6015.  };
  6016.  
  6017.  class  MessageBoxOKCancelDlg : public GuiControl {
  6018.    public:
  6019.     virtual Script onSleep(( string this )) {}
  6020.  };
  6021.  
  6022.  /// Stub class
  6023.  ///
  6024.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6025.  ///       information was available for this class.
  6026.  class  MBYesNoCancelText : public GuiMLTextCtrl {
  6027.    public:
  6028.  };
  6029.  
  6030.  /// Stub class
  6031.  ///
  6032.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6033.  ///       information was available for this class.
  6034.  class  MBYesNoCancelFrame : public GuiWindowCtrl {
  6035.    public:
  6036.  };
  6037.  
  6038.  /// Stub class
  6039.  ///
  6040.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6041.  ///       information was available for this class.
  6042.  class  MessageBoxYesNoCancelDlg : public GuiControl {
  6043.    public:
  6044.  };
  6045.  
  6046.  /// Stub class
  6047.  ///
  6048.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6049.  ///       information was available for this class.
  6050.  class  MBYesNoText : public GuiMLTextCtrl {
  6051.    public:
  6052.  };
  6053.  
  6054.  /// Stub class
  6055.  ///
  6056.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6057.  ///       information was available for this class.
  6058.  class  MBYesNoFrame : public GuiWindowCtrl {
  6059.    public:
  6060.  };
  6061.  
  6062.  class  MessageBoxYesNoDlg : public GuiControl {
  6063.    public:
  6064.     virtual Script onSleep(( string this )) {}
  6065.  };
  6066.  
  6067.  /// Stub class
  6068.  ///
  6069.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6070.  ///       information was available for this class.
  6071.  class  MBOKText : public GuiMLTextCtrl {
  6072.    public:
  6073.  };
  6074.  
  6075.  /// Stub class
  6076.  ///
  6077.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6078.  ///       information was available for this class.
  6079.  class  MBOKFrame : public GuiWindowCtrl {
  6080.    public:
  6081.  };
  6082.  
  6083.  class  MessageBoxOKDlg : public GuiControl {
  6084.    public:
  6085.     virtual Script onSleep(( string this )) {}
  6086.  };
  6087.  
  6088.  class  NetGraphGui {
  6089.    public:
  6090.     virtual Script toggleKey(()) {}
  6091.     virtual Script updateStats(()) {}
  6092.  };
  6093.  
  6094.  /// Stub class
  6095.  ///
  6096.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6097.  ///       information was available for this class.
  6098.  class  NetGraphNetGraph5PosProfile : public GuiControlProfile {
  6099.    public:
  6100.  };
  6101.  
  6102.  /// Stub class
  6103.  ///
  6104.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6105.  ///       information was available for this class.
  6106.  class  NetGraphNetGraph4PosProfile : public GuiControlProfile {
  6107.    public:
  6108.  };
  6109.  
  6110.  /// Stub class
  6111.  ///
  6112.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6113.  ///       information was available for this class.
  6114.  class  NetGraphNetGraph3PosProfile : public GuiControlProfile {
  6115.    public:
  6116.  };
  6117.  
  6118.  /// Stub class
  6119.  ///
  6120.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6121.  ///       information was available for this class.
  6122.  class  NetGraphNetGraph2PosProfile : public GuiControlProfile {
  6123.    public:
  6124.  };
  6125.  
  6126.  /// Stub class
  6127.  ///
  6128.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6129.  ///       information was available for this class.
  6130.  class  NetGraphNetGraph1PosProfile : public GuiControlProfile {
  6131.    public:
  6132.  };
  6133.  
  6134.  /// Stub class
  6135.  ///
  6136.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6137.  ///       information was available for this class.
  6138.  class  NetGraphNetGraph0PosProfile : public GuiControlProfile {
  6139.    public:
  6140.  };
  6141.  
  6142.  /// Stub class
  6143.  ///
  6144.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6145.  ///       information was available for this class.
  6146.  class  NetGraphKeyContainerProfile : public GuiControlProfile {
  6147.    public:
  6148.  };
  6149.  
  6150.  /// Stub class
  6151.  ///
  6152.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6153.  ///       information was available for this class.
  6154.  class  NetGraphControlCommandActivatedProfile : public GuiControlProfile {
  6155.    public:
  6156.  };
  6157.  
  6158.  /// Stub class
  6159.  ///
  6160.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6161.  ///       information was available for this class.
  6162.  class  NetGraphControlCommandProfile : public GuiControlProfile {
  6163.    public:
  6164.  };
  6165.  
  6166.  /// Stub class
  6167.  ///
  6168.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6169.  ///       information was available for this class.
  6170.  class  NetGraphProfile : public GuiControlProfile {
  6171.    public:
  6172.  };
  6173.  
  6174.  /// Stub class
  6175.  ///
  6176.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6177.  ///       information was available for this class.
  6178.  class  ppOptionsOk1 : public GuiButtonCtrl {
  6179.    public:
  6180.  };
  6181.  
  6182.  /// Stub class
  6183.  ///
  6184.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6185.  ///       information was available for this class.
  6186.  class  ppOptionsApply : public GuiButtonCtrl {
  6187.    public:
  6188.  };
  6189.  
  6190.  /// Stub class
  6191.  ///
  6192.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6193.  ///       information was available for this class.
  6194.  class  ppOptionsQualityLabel : public GuiTextCtrl {
  6195.    public:
  6196.  };
  6197.  
  6198.  /// Stub class
  6199.  ///
  6200.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6201.  ///       information was available for this class.
  6202.  class  ppOptionsQuality : public GuiPopUpMenuCtrl {
  6203.    public:
  6204.  };
  6205.  
  6206.  /// Stub class
  6207.  ///
  6208.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6209.  ///       information was available for this class.
  6210.  class  ppOptionsDOFBlurCurveFarLabel : public GuiTextCtrl {
  6211.    public:
  6212.  };
  6213.  
  6214.  /// Stub class
  6215.  ///
  6216.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6217.  ///       information was available for this class.
  6218.  class  ppOptionsDOFBurCurveNearLabel : public GuiTextCtrl {
  6219.    public:
  6220.  };
  6221.  
  6222.  /// Stub class
  6223.  ///
  6224.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6225.  ///       information was available for this class.
  6226.  class  ppOptionsDOFFocusRangeMaxLabel : public GuiTextCtrl {
  6227.    public:
  6228.  };
  6229.  
  6230.  /// Stub class
  6231.  ///
  6232.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6233.  ///       information was available for this class.
  6234.  class  ppOptionsDOFFocusRangeMinLabel : public GuiTextCtrl {
  6235.    public:
  6236.  };
  6237.  
  6238.  /// Stub class
  6239.  ///
  6240.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6241.  ///       information was available for this class.
  6242.  class  ppOptionsDOFFarBlurMaxLabel : public GuiTextCtrl {
  6243.    public:
  6244.  };
  6245.  
  6246.  /// Stub class
  6247.  ///
  6248.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6249.  ///       information was available for this class.
  6250.  class  ppOptionsDOFNearBlurMaxLabel : public GuiTextCtrl {
  6251.    public:
  6252.  };
  6253.  
  6254.  /*!
  6255.  @brief A single page in a GuiTabBookCtrl.
  6256.  
  6257.  @tsexample
  6258.  
  6259.  new GuiTabPageCtrl()
  6260.  {
  6261.     fitBook = "1";
  6262.     //Properties not specific to this control have been omitted from this example.
  6263.  };
  6264.  @endtsexample
  6265.  
  6266.   */
  6267.  class  GuiTabPageCtrl : public GuiTextCtrl {
  6268.    public:
  6269.     /*! Select this page in its tab book. */
  6270.     virtual void select(()) {}
  6271.     /*!
  6272.     Determines whether to resize this page when it is added to the tab book. If true, the page will be resized according to the tab book extents and <i>tabPosition</i> property.
  6273.    
  6274.      */
  6275.     bool fitBook;
  6276.  
  6277.     /*! @name Layout
  6278.     @{ */
  6279.     /*! */
  6280.     /// @}
  6281.  
  6282.  
  6283.     /*! @name Layout
  6284.     @{ */
  6285.     /*! */
  6286.     /// @}
  6287.  
  6288.  
  6289.     /*! @name Control
  6290.     @{ */
  6291.     /*! */
  6292.     /// @}
  6293.  
  6294.  
  6295.     /*! @name ToolTip
  6296.     @{ */
  6297.     /*! */
  6298.     /// @}
  6299.  
  6300.  
  6301.     /*! @name Editing
  6302.     @{ */
  6303.     /*! */
  6304.     /// @}
  6305.  
  6306.  
  6307.     /*! @name Localization
  6308.     @{ */
  6309.     /*! */
  6310.     /// @}
  6311.  
  6312.  
  6313.     /*! @name Ungrouped
  6314.     @{ */
  6315.     /*! */
  6316.     /// @}
  6317.  
  6318.  
  6319.     /*! @name Object
  6320.     @{ */
  6321.     /*! */
  6322.     /// @}
  6323.  
  6324.  
  6325.     /*! @name Editing
  6326.     @{ */
  6327.     /*! */
  6328.     /// @}
  6329.  
  6330.  
  6331.     /*! @name Persistence
  6332.     @{ */
  6333.     /*! */
  6334.     /// @}
  6335.  
  6336.  };
  6337.  
  6338.  /// Stub class
  6339.  ///
  6340.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6341.  ///       information was available for this class.
  6342.  class  ppOptionsDOFAutoFocusTab : public GuiTabPageCtrl {
  6343.    public:
  6344.  };
  6345.  
  6346.  /// Stub class
  6347.  ///
  6348.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6349.  ///       information was available for this class.
  6350.  class  ppOptionsDOFGeneralTab : public GuiTabPageCtrl {
  6351.    public:
  6352.  };
  6353.  
  6354.  /// Stub class
  6355.  ///
  6356.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6357.  ///       information was available for this class.
  6358.  class  ppOptionsDOFTab : public GuiTabPageCtrl {
  6359.    public:
  6360.  };
  6361.  
  6362.  /// Stub class
  6363.  ///
  6364.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6365.  ///       information was available for this class.
  6366.  class  ppOptionsLightRaysBrightnessScalarLabel : public GuiTextCtrl {
  6367.    public:
  6368.  };
  6369.  
  6370.  /// Stub class
  6371.  ///
  6372.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6373.  ///       information was available for this class.
  6374.  class  ppOptionsLightRaysTab : public GuiTabPageCtrl {
  6375.    public:
  6376.  };
  6377.  
  6378.  /// Stub class
  6379.  ///
  6380.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6381.  ///       information was available for this class.
  6382.  class  ppOptionsSSAODistanceLabel : public GuiTextCtrl {
  6383.    public:
  6384.  };
  6385.  
  6386.  /// Stub class
  6387.  ///
  6388.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6389.  ///       information was available for this class.
  6390.  class  ppOptionsSSAODarknessLabel : public GuiTextCtrl {
  6391.    public:
  6392.  };
  6393.  
  6394.  /// Stub class
  6395.  ///
  6396.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6397.  ///       information was available for this class.
  6398.  class  ppOptionsSSAORadiusLabel : public GuiTextCtrl {
  6399.    public:
  6400.  };
  6401.  
  6402.  /// Stub class
  6403.  ///
  6404.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6405.  ///       information was available for this class.
  6406.  class  ppOptionsEnableSSLODebug : public GuiCheckBoxCtrl {
  6407.    public:
  6408.  };
  6409.  
  6410.  /// Stub class
  6411.  ///
  6412.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6413.  ///       information was available for this class.
  6414.  class  ppOptionsSSAOTab : public GuiTabPageCtrl {
  6415.    public:
  6416.  };
  6417.  
  6418.  /*!
  6419.  @brief A container
  6420.  
  6421.  @tsexample
  6422.  // Create
  6423.  @endtsexample
  6424.  
  6425.  @note Only GuiTabPageCtrls must be added to GuiTabBookCtrls.  If an object of a different class is added to the control, it will be reassigned to either the active page or the tab book's parent.
  6426.  
  6427.  @see GuiTabPageCtrl
  6428.   */
  6429.  class  GuiTabBookCtrl : public GuiContainer {
  6430.    public:
  6431.        /*! Called when a new tab page is selected.
  6432.  
  6433. @param text Text of the page header for the tab that is being selected.
  6434. @param index Index of the tab page being selected. */
  6435.        void onTabSelected( String text, int index );
  6436.  
  6437.        /*! Called when the user right-clicks on a tab page header.
  6438.  
  6439. @param text Text of the page header for the tab that is being selected.
  6440. @param index Index of the tab page being selected. */
  6441.        void onTabRightClick( String text, int index );
  6442.  
  6443.     /*! Add a new tab page to the control.
  6444.  
  6445. @param title Title text for the tab page header. */
  6446.     virtual void addPage(( string title="" )) {}
  6447.     /*! Set the selected tab page.
  6448.  
  6449. @param index Index of the tab page. */
  6450.     virtual void selectPage(( int index )) {}
  6451.     /*! Get the index of the currently selected tab page.
  6452.  
  6453. @return Index of the selected tab page or -1 if no tab page is selected. */
  6454.     virtual int getSelectedPage(()) {}
  6455.  
  6456.     /*! @name TabBook
  6457.     @{ */
  6458.     /*! */
  6459.     /*!
  6460.     Where to place the tab page headers.
  6461.    
  6462.      */
  6463.     GuiTabPosition tabPosition;
  6464.     /*!
  6465.     Spacing to put between individual tab page headers.
  6466.    
  6467.      */
  6468.     int tabMargin;
  6469.     /*!
  6470.     Minimum width allocated to a tab page header.
  6471.    
  6472.      */
  6473.     int minTabWidth;
  6474.     /*!
  6475.     Height of tab page headers.
  6476.    
  6477.      */
  6478.     int tabHeight;
  6479.     /*!
  6480.     Whether reordering tabs with the mouse is allowed.
  6481.    
  6482.      */
  6483.     bool allowReorder;
  6484.     /*!
  6485.     Index of page to select on first onWake() call (-1 to disable).
  6486.    
  6487.      */
  6488.     int defaultPage;
  6489.     /*!
  6490.     Index of currently selected page.
  6491.    
  6492.      */
  6493.     int selectedPage;
  6494.     /*!
  6495.     X offset of first tab page header.
  6496.    
  6497.      */
  6498.     int frontTabPadding;
  6499.     /// @}
  6500.  
  6501.  
  6502.     /*! @name Layout
  6503.     @{ */
  6504.     /*! */
  6505.     /// @}
  6506.  
  6507.  
  6508.     /*! @name Layout
  6509.     @{ */
  6510.     /*! */
  6511.     /// @}
  6512.  
  6513.  
  6514.     /*! @name Control
  6515.     @{ */
  6516.     /*! */
  6517.     /// @}
  6518.  
  6519.  
  6520.     /*! @name ToolTip
  6521.     @{ */
  6522.     /*! */
  6523.     /// @}
  6524.  
  6525.  
  6526.     /*! @name Editing
  6527.     @{ */
  6528.     /*! */
  6529.     /// @}
  6530.  
  6531.  
  6532.     /*! @name Localization
  6533.     @{ */
  6534.     /*! */
  6535.     /// @}
  6536.  
  6537.  
  6538.     /*! @name Ungrouped
  6539.     @{ */
  6540.     /*! */
  6541.     /// @}
  6542.  
  6543.  
  6544.     /*! @name Object
  6545.     @{ */
  6546.     /*! */
  6547.     /// @}
  6548.  
  6549.  
  6550.     /*! @name Editing
  6551.     @{ */
  6552.     /*! */
  6553.     /// @}
  6554.  
  6555.  
  6556.     /*! @name Persistence
  6557.     @{ */
  6558.     /*! */
  6559.     /// @}
  6560.  
  6561.  };
  6562.  
  6563.  /// Stub class
  6564.  ///
  6565.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6566.  ///       information was available for this class.
  6567.  class  ppOptionsTabBook : public GuiTabBookCtrl {
  6568.    public:
  6569.  };
  6570.  
  6571.  /// Stub class
  6572.  ///
  6573.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6574.  ///       information was available for this class.
  6575.  class  ppOptionsWindow : public GuiWindowCtrl {
  6576.    public:
  6577.  };
  6578.  
  6579.  /// Stub class
  6580.  ///
  6581.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6582.  ///       information was available for this class.
  6583.  class  SSAOVizPostFx : public PostEffect {
  6584.    public:
  6585.  };
  6586.  
  6587.  /// Stub class
  6588.  ///
  6589.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6590.  ///       information was available for this class.
  6591.  class  SSAOApplyShader : public ShaderData {
  6592.    public:
  6593.  };
  6594.  
  6595.  /// Stub class
  6596.  ///
  6597.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6598.  ///       information was available for this class.
  6599.  class  SSAOBlurXShader : public ShaderData {
  6600.    public:
  6601.  };
  6602.  
  6603.  /// Stub class
  6604.  ///
  6605.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6606.  ///       information was available for this class.
  6607.  class  SSAOBlurYShader : public ShaderData {
  6608.    public:
  6609.  };
  6610.  
  6611.  /// Stub class
  6612.  ///
  6613.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6614.  ///       information was available for this class.
  6615.  class  SSAOShader : public ShaderData {
  6616.    public:
  6617.  };
  6618.  
  6619.  /// Stub class
  6620.  ///
  6621.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6622.  ///       information was available for this class.
  6623.  class  SSAOApplyStateBlock : public GFXStateBlockData {
  6624.    public:
  6625.  };
  6626.  
  6627.  /// Stub class
  6628.  ///
  6629.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6630.  ///       information was available for this class.
  6631.  class  SSAOBlurStateBlock : public GFXStateBlockData {
  6632.    public:
  6633.  };
  6634.  
  6635.  /// Stub class
  6636.  ///
  6637.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6638.  ///       information was available for this class.
  6639.  class  SSAOStateBlock : public GFXStateBlockData {
  6640.    public:
  6641.  };
  6642.  
  6643.  class  SSAOPostFx : public PostEffect {
  6644.    public:
  6645.     virtual Script onDisabled(( string this )) {}
  6646.     virtual Script onEnabled(( string this )) {}
  6647.     virtual Script setShaderConsts(( string this )) {}
  6648.  };
  6649.  
  6650.  class  SMAAFxStep3 : public PostEffect {
  6651.    public:
  6652.     virtual Script setShaderConsts(( string this )) {}
  6653.  };
  6654.  
  6655.  class  SMAAFxStep2 : public PostEffect {
  6656.    public:
  6657.     virtual Script setShaderConsts(( string this )) {}
  6658.  };
  6659.  
  6660.  class  SMAAFx : public PostEffect {
  6661.    public:
  6662.     virtual Script setShaderConsts(( string this )) {}
  6663.  };
  6664.  
  6665.  /// Stub class
  6666.  ///
  6667.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6668.  ///       information was available for this class.
  6669.  class  SMAA_NeighborhoodBlendingShader : public ShaderData {
  6670.    public:
  6671.  };
  6672.  
  6673.  /// Stub class
  6674.  ///
  6675.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6676.  ///       information was available for this class.
  6677.  class  SMAA_NeighborhoodBlendingStateBlock : public GFXStateBlockData {
  6678.    public:
  6679.  };
  6680.  
  6681.  /// Stub class
  6682.  ///
  6683.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6684.  ///       information was available for this class.
  6685.  class  SMAA_BlendWeightCalculationShader : public ShaderData {
  6686.    public:
  6687.  };
  6688.  
  6689.  /// Stub class
  6690.  ///
  6691.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6692.  ///       information was available for this class.
  6693.  class  SMAA_BlendWeightCalculationStateBlock : public GFXStateBlockData {
  6694.    public:
  6695.  };
  6696.  
  6697.  /// Stub class
  6698.  ///
  6699.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6700.  ///       information was available for this class.
  6701.  class  SMAA_EdgeDetectionShader : public ShaderData {
  6702.    public:
  6703.  };
  6704.  
  6705.  /// Stub class
  6706.  ///
  6707.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6708.  ///       information was available for this class.
  6709.  class  SMAA_EdgeDetectStateBlock : public GFXStateBlockData {
  6710.    public:
  6711.  };
  6712.  
  6713.  /*!
  6714.  @brief A sampler state used by GFXStateBlockData.
  6715.  
  6716.  The samplers define how a texture will be sampled when used from the shader or fixed function device
  6717.  @tsexample
  6718.  singleton GFXSamplerStateData(SamplerClampLinear)
  6719.  {
  6720.     textureColorOp = GFXTOPModulate;
  6721.     addressModeU = GFXAddressClamp;
  6722.     addressModeV = GFXAddressClamp;
  6723.     addressModeW = GFXAddressClamp;
  6724.     magFilter = GFXTextureFilterLinear;
  6725.     minFilter = GFXTextureFilterLinear;
  6726.     mipFilter = GFXTextureFilterLinear;
  6727.  };
  6728.  @endtsexample
  6729.  There are a few predefined samplers in the core scripts which you can use with GFXStateBlockData for the most common rendering cases:
  6730.    - SamplerClampLinear
  6731.    - SamplerClampPoint
  6732.    - SamplerWrapLinear
  6733.    - SamplerWrapPoint
  6734.  
  6735.  @see GFXStateBlockData
  6736.  @ingroup GFX
  6737.   */
  6738.  class  GFXSamplerStateData : public SimObject {
  6739.    public:
  6740.  
  6741.     /*! @name Ungrouped
  6742.     @{ */
  6743.     /*! */
  6744.     /// @}
  6745.  
  6746.  
  6747.     /*! @name Object
  6748.     @{ */
  6749.     /*! */
  6750.     /// @}
  6751.  
  6752.  
  6753.     /*! @name Editing
  6754.     @{ */
  6755.     /*! */
  6756.     /// @}
  6757.  
  6758.  
  6759.     /*! @name Persistence
  6760.     @{ */
  6761.     /*! */
  6762.     /// @}
  6763.  
  6764.  
  6765.     /*! @name Color Op
  6766.     @{ */
  6767.     /*! */
  6768.     /*!
  6769.     The texture color blending operation.  The default value is GFXTOPDisable which disables the sampler.
  6770.    
  6771.      */
  6772.     GFXTextureOp textureColorOp;
  6773.     /*!
  6774.     The first color argument for the texture stage.  The default value is GFXTACurrent.
  6775.    
  6776.      */
  6777.     GFXTextureArgument colorArg1;
  6778.     /*!
  6779.     The second color argument for the texture stage.  The default value is GFXTATexture.
  6780.    
  6781.      */
  6782.     GFXTextureArgument colorArg2;
  6783.     /*!
  6784.     The third color argument for triadic operations (multiply, add, and linearly interpolate).  The default value is GFXTACurrent.
  6785.    
  6786.      */
  6787.     GFXTextureArgument colorArg3;
  6788.     /// @}
  6789.  
  6790.  
  6791.     /*! @name Alpha Op
  6792.     @{ */
  6793.     /*! */
  6794.     /*!
  6795.     The texture alpha blending operation.  The default value is GFXTOPModulate.
  6796.    
  6797.      */
  6798.     GFXTextureOp alphaOp;
  6799.     /*!
  6800.     The first alpha argument for the texture stage.  The default value is GFXTATexture.
  6801.    
  6802.      */
  6803.     GFXTextureArgument alphaArg1;
  6804.     /*!
  6805.     The second alpha argument for the texture stage.  The default value is GFXTADiffuse.
  6806.    
  6807.      */
  6808.     GFXTextureArgument alphaArg2;
  6809.     /*!
  6810.     The third alpha channel selector operand for triadic operations (multiply, add, and linearly interpolate).  The default value is GFXTACurrent.
  6811.    
  6812.      */
  6813.     GFXTextureArgument alphaArg3;
  6814.     /// @}
  6815.  
  6816.  
  6817.     /*! @name Address Mode
  6818.     @{ */
  6819.     /*! */
  6820.     /*!
  6821.     The texture address mode for the u coordinate.  The default is GFXAddressWrap.
  6822.    
  6823.      */
  6824.     GFXTextureAddressMode addressModeU;
  6825.     /*!
  6826.     The texture address mode for the v coordinate.  The default is GFXAddressWrap.
  6827.    
  6828.      */
  6829.     GFXTextureAddressMode addressModeV;
  6830.     /*!
  6831.     The texture address mode for the w coordinate.  The default is GFXAddressWrap.
  6832.    
  6833.      */
  6834.     GFXTextureAddressMode addressModeW;
  6835.     /// @}
  6836.  
  6837.  
  6838.     /*! @name Filter State
  6839.     @{ */
  6840.     /*! */
  6841.     /*!
  6842.     The texture magnification filter.  The default is GFXTextureFilterLinear.
  6843.    
  6844.      */
  6845.     GFXTextureFilterType magFilter;
  6846.     /*!
  6847.     The texture minification filter.  The default is GFXTextureFilterLinear.
  6848.    
  6849.      */
  6850.     GFXTextureFilterType minFilter;
  6851.     /*!
  6852.     The texture mipmap filter used during minification.  The default is GFXTextureFilterLinear.
  6853.    
  6854.      */
  6855.     GFXTextureFilterType mipFilter;
  6856.     /*!
  6857.     The mipmap level of detail bias.  The default value is zero.
  6858.    
  6859.      */
  6860.     float mipLODBias;
  6861.     /*!
  6862.     The maximum texture anisotropy.  The default value is 1.
  6863.    
  6864.      */
  6865.     int maxAnisotropy;
  6866.     /// @}
  6867.  
  6868.     /*!
  6869.     Sets the texture transform state.  The default is GFXTTFFDisable.
  6870.    
  6871.      */
  6872.     GFXTextureTransformFlags textureTransform;
  6873.     /*!
  6874.     The selection of the destination register for the result of this stage.  The default is GFXTACurrent.
  6875.    
  6876.      */
  6877.     GFXTextureArgument resultArg;
  6878.  };
  6879.  
  6880.  /// Stub class
  6881.  ///
  6882.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6883.  ///       information was available for this class.
  6884.  class  SamplerSMAA : public GFXSamplerStateData {
  6885.    public:
  6886.  };
  6887.  
  6888.  /// Stub class
  6889.  ///
  6890.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6891.  ///       information was available for this class.
  6892.  class  PFX_SelectionShader : public ShaderData {
  6893.    public:
  6894.  };
  6895.  
  6896.  /// Stub class
  6897.  ///
  6898.  /// @note This is a stub class to ensure a proper class hierarchy. No
  6899.  ///       information was available for this class.
  6900.  class  PFX_DefaultSelectionStateBlock : public GFXStateBlockData {
  6901.    public:
  6902.  };
  6903.  
  6904.  class  SelectionPostFX : public PostEffect {
  6905.    public:
  6906.     virtual Script setShaderConsts(( string this )) {}
  6907.  };
  6908.  
  6909.  class  ppOptionsEnableHDRDebug {
  6910.    public:
  6911.     virtual Script onAction(( string this )) {}
  6912.  };
  6913.  
  6914.  class  ppOptionsNVDistRoll {
  6915.    public:
  6916.     virtual Script onMouseDragged(( string this )) {}
  6917.  };
  6918.  
  6919.  class  ppOptionsNVDistFreq {
  6920.    public:
  6921.     virtual Script onMouseDragged(( string this )) {}
  6922.  };
  6923.  
  6924.  class  ppOptionsNVDistMul {
  6925.    public:
  6926.     virtual Script onMouseDragged(( string this )) {}
  6927.  };
  6928.  
  6929.  class  ppOptionsNVHighMul {
  6930.    public:
  6931.     virtual Script onMouseDragged(( string this )) {}
  6932.  };
  6933.  
  6934.  class  ppOptionsNVLowMul {
  6935.    public:
  6936.     virtual Script onMouseDragged(( string this )) {}
  6937.  };
  6938.  
  6939.  class  ppOptionsNVBright {
  6940.    public:
  6941.     virtual Script onMouseDragged(( string this )) {}
  6942.  };
  6943.  
  6944.  class  ppOptionsSharpenStrength {
  6945.    public:
  6946.     virtual Script onMouseDragged(( string this )) {}
  6947.  };
  6948.  
  6949.  class  ppOptionsSharpenWidth {
  6950.    public:
  6951.     virtual Script onMouseDragged(( string this )) {}
  6952.  };
  6953.  
  6954.  class  ppOptionsSharpenRange {
  6955.    public:
  6956.     virtual Script onMouseDragged(( string this )) {}
  6957.  };
  6958.  
  6959.  class  ppOptionsDOFBlurCurveFarSlider : public GuiSliderCtrl {
  6960.    public:
  6961.     virtual Script onMouseDragged(( string this )) {}
  6962.  };
  6963.  
  6964.  class  ppOptionsDOFBlurCurveNearSlider : public GuiSliderCtrl {
  6965.    public:
  6966.     virtual Script onMouseDragged(( string this )) {}
  6967.  };
  6968.  
  6969.  class  ppOptionsDOFFocusRangeMaxSlider : public GuiSliderCtrl {
  6970.    public:
  6971.     virtual Script onMouseDragged(( string this )) {}
  6972.  };
  6973.  
  6974.  class  ppOptionsDOFFocusRangeMinSlider : public GuiSliderCtrl {
  6975.    public:
  6976.     virtual Script onMouseDragged(( string this )) {}
  6977.  };
  6978.  
  6979.  class  ppOptionsDOFFarBlurMaxSlider : public GuiSliderCtrl {
  6980.    public:
  6981.     virtual Script onMouseDragged(( string this )) {}
  6982.  };
  6983.  
  6984.  class  ppOptionsDOFFarBlurMinSlider : public GuiSliderCtrl {
  6985.    public:
  6986.     virtual Script onMouseDragged(( string this )) {}
  6987.  };
  6988.  
  6989.  class  ppOptionsDOFEnableAutoFocus : public GuiCheckBoxCtrl {
  6990.    public:
  6991.     virtual Script onAction(( string this )) {}
  6992.  };
  6993.  
  6994.  class  ppOptionsDOFEnableDOF : public GuiCheckBoxCtrl {
  6995.    public:
  6996.     virtual Script onAction(( string this )) {}
  6997.  };
  6998.  
  6999.  class  ppOptionsLightRaysBrightScalar : public GuiSliderCtrl {
  7000.    public:
  7001.     virtual Script onMouseDragged(( string this )) {}
  7002.  };
  7003.  
  7004.  class  ppOptionsHDREffectsBlueShiftColorBaseColor {
  7005.    public:
  7006.     virtual Script onAction(( string this )) {}
  7007.  };
  7008.  
  7009.  class  ppOptionsHDREffectsBlueShiftColorBlend {
  7010.    public:
  7011.     virtual Script onAction(( string this )) {}
  7012.  };
  7013.  
  7014.  class  ppOptionsHDREffectsBlueShift {
  7015.    public:
  7016.     virtual Script onAction(( string this )) {}
  7017.  };
  7018.  
  7019.  class  ppOptionsHDRBloomText {
  7020.    public:
  7021.     virtual Script onReturn(( string this )) {}
  7022.  };
  7023.  
  7024.  class  ppOptionsHDRBloom {
  7025.    public:
  7026.     virtual Script onMouseDragged(( string this )) {}
  7027.  };
  7028.  
  7029.  class  ppOptionsHDRBloomBlurStdDevText {
  7030.    public:
  7031.     virtual Script onReturn(( string this )) {}
  7032.  };
  7033.  
  7034.  class  ppOptionsHDRBloomBlurStdDev {
  7035.    public:
  7036.     virtual Script onMouseDragged(( string this )) {}
  7037.  };
  7038.  
  7039.  class  ppOptionsHDRBloomBlurMeanText {
  7040.    public:
  7041.     virtual Script onReturn(( string this )) {}
  7042.  };
  7043.  
  7044.  class  ppOptionsHDRBloomBlurMean {
  7045.    public:
  7046.     virtual Script onMouseDragged(( string this )) {}
  7047.  };
  7048.  
  7049.  class  ppOptionsHDRBloomBlurMultiplierText {
  7050.    public:
  7051.     virtual Script onReturn(( string this )) {}
  7052.  };
  7053.  
  7054.  class  ppOptionsHDRBloomBlurMultiplier {
  7055.    public:
  7056.     virtual Script onMouseDragged(( string this )) {}
  7057.  };
  7058.  
  7059.  class  ppOptionsHDRBloomBlurBrightPassThresholdText {
  7060.    public:
  7061.     virtual Script onReturn(( string this )) {}
  7062.  };
  7063.  
  7064.  class  ppOptionsHDRBloomBlurBrightPassThreshold {
  7065.    public:
  7066.     virtual Script onMouseDragged(( string this )) {}
  7067.  };
  7068.  
  7069.  class  ppOptionsHDRBrightnessAdaptRateText {
  7070.    public:
  7071.     virtual Script onReturn(( string this )) {}
  7072.  };
  7073.  
  7074.  class  ppOptionsHDRBrightnessAdaptRate {
  7075.    public:
  7076.     virtual Script onMouseDragged(( string this )) {}
  7077.  };
  7078.  
  7079.  class  ppOptionsHDRMinLuminanceText {
  7080.    public:
  7081.     virtual Script onReturn(( string this )) {}
  7082.  };
  7083.  
  7084.  class  ppOptionsHDRMinLuminance {
  7085.    public:
  7086.     virtual Script onMouseDragged(( string this )) {}
  7087.  };
  7088.  
  7089.  class  ppOptionsHDRKeyValueText {
  7090.    public:
  7091.     virtual Script onReturn(( string this )) {}
  7092.  };
  7093.  
  7094.  class  ppOptionsHDRKeyValue {
  7095.    public:
  7096.     virtual Script onMouseDragged(( string this )) {}
  7097.  };
  7098.  
  7099.  class  ppOptionsHDRToneMappingAmountText {
  7100.    public:
  7101.     virtual Script onReturn(( string this )) {}
  7102.  };
  7103.  
  7104.  class  ppOptionsHDRToneMappingAmount {
  7105.    public:
  7106.     virtual Script onMouseDragged(( string this )) {}
  7107.  };
  7108.  
  7109.  class  ppOptionsSSAODistance : public GuiSliderCtrl {
  7110.    public:
  7111.     virtual Script onMouseDragged(( string this )) {}
  7112.  };
  7113.  
  7114.  class  ppOptionsSSAODarkness : public GuiSliderCtrl {
  7115.    public:
  7116.     virtual Script onMouseDragged(( string this )) {}
  7117.  };
  7118.  
  7119.  class  ppOptionsSSAORadius : public GuiSliderCtrl {
  7120.    public:
  7121.     virtual Script onMouseDragged(( string this )) {}
  7122.  };
  7123.  
  7124.  class  ppOptionsSSAOQuality {
  7125.    public:
  7126.     virtual Script onSelect(( string this, string id, string text )) {}
  7127.  };
  7128.  
  7129.  class  ppOptionsLoadPreset {
  7130.    public:
  7131.     virtual Script onClick(()) {}
  7132.  };
  7133.  
  7134.  class  ppOptionsSavePreset {
  7135.    public:
  7136.     virtual Script onClick(()) {}
  7137.  };
  7138.  
  7139.  class  ppOptionsEnableNV {
  7140.    public:
  7141.     virtual Script onAction(( string this )) {}
  7142.  };
  7143.  
  7144.  class  ppOptionsEnableSharpness {
  7145.    public:
  7146.     virtual Script onAction(( string this )) {}
  7147.  };
  7148.  
  7149.  class  ppOptionsEnableDOF : public GuiCheckBoxCtrl {
  7150.    public:
  7151.     virtual Script onAction(( string this )) {}
  7152.  };
  7153.  
  7154.  class  ppOptionsEnableLightRays : public GuiCheckBoxCtrl {
  7155.    public:
  7156.     virtual Script onAction(( string this )) {}
  7157.  };
  7158.  
  7159.  class  ppOptionsEnableHDR {
  7160.    public:
  7161.     virtual Script onAction(( string this )) {}
  7162.  };
  7163.  
  7164.  class  ppOptionsEnableSSAO : public GuiCheckBoxCtrl {
  7165.    public:
  7166.     virtual Script onAction(( string this )) {}
  7167.  };
  7168.  
  7169.  class  ppOptionsEnableColorGrading {
  7170.    public:
  7171.     virtual Script onAction(( string this )) {}
  7172.  };
  7173.  
  7174.  class  ppOptionsEnableVignette {
  7175.    public:
  7176.     virtual Script onAction(( string this )) {}
  7177.  };
  7178.  
  7179.  class  PostFXManager : public GuiControl {
  7180.    public:
  7181.     virtual Script savePresetHandler(( string fileName )) {}
  7182.     virtual Script savePresetFile(( string this )) {}
  7183.     virtual Script loadPresetHandler(( string fileName )) {}
  7184.     virtual Script loadPresetFile(()) {}
  7185.     virtual Script settingsApplyDefaultPreset(( string this )) {}
  7186.     virtual Script settingsApplyAll(( string this, string sFrom )) {}
  7187.     virtual Script settingsApplyNightVision(( string this )) {}
  7188.     virtual Script settingsApplySharpen(( string this )) {}
  7189.     virtual Script settingsApplyDOF(( string this )) {}
  7190.     virtual Script settingsApplyLightRays(( string this )) {}
  7191.     virtual Script settingsApplyHDR(( string this )) {}
  7192.     virtual Script settingsApplySSAO(( string this )) {}
  7193.     virtual Script settingsApplyFromPreset(( string this )) {}
  7194.     virtual Script settingsRefreshAll(( string this )) {}
  7195.     virtual Script settingsRefreshNightVision(( string this )) {}
  7196.     virtual Script settingsRefreshSharpness(( string this )) {}
  7197.     virtual Script settingsRefreshDOF(( string this )) {}
  7198.     virtual Script settingsRefreshLightrays(( string this )) {}
  7199.     virtual Script settingsRefreshHDR(( string this )) {}
  7200.     virtual Script settingsRefreshSSAO(( string this )) {}
  7201.     virtual Script settingsEffectSetEnabled(( string this, string sName, string bEnable )) {}
  7202.     virtual Script settingsSetEnabled(( string this, string bEnablePostFX )) {}
  7203.     virtual Script getEnableResultFromControl(( string this, string control )) {}
  7204.     virtual Script onDialogPush(( string this )) {}
  7205.  };
  7206.  
  7207.  /// Stub class
  7208.  ///
  7209.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7210.  ///       information was available for this class.
  7211.  class  PixelizePFX : public PostEffect {
  7212.    public:
  7213.  };
  7214.  
  7215.  /// Stub class
  7216.  ///
  7217.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7218.  ///       information was available for this class.
  7219.  class  PixelizeSB : public GFXStateBlockData {
  7220.    public:
  7221.  };
  7222.  
  7223.  /// Stub class
  7224.  ///
  7225.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7226.  ///       information was available for this class.
  7227.  class  PixelizeShader : public ShaderData {
  7228.    public:
  7229.  };
  7230.  
  7231.  class  MLAAFx : public PostEffect {
  7232.    public:
  7233.     virtual Script setShaderConsts(( string this )) {}
  7234.  };
  7235.  
  7236.  /// Stub class
  7237.  ///
  7238.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7239.  ///       information was available for this class.
  7240.  class  MLAA_NeighborhoodBlendingShader : public ShaderData {
  7241.    public:
  7242.  };
  7243.  
  7244.  /// Stub class
  7245.  ///
  7246.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7247.  ///       information was available for this class.
  7248.  class  MLAA_NeighborhoodBlendingStateBlock : public GFXStateBlockData {
  7249.    public:
  7250.  };
  7251.  
  7252.  /// Stub class
  7253.  ///
  7254.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7255.  ///       information was available for this class.
  7256.  class  MLAA_BlendWeightCalculationShader : public ShaderData {
  7257.    public:
  7258.  };
  7259.  
  7260.  /// Stub class
  7261.  ///
  7262.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7263.  ///       information was available for this class.
  7264.  class  MLAA_BlendWeightCalculationStateBlock : public GFXStateBlockData {
  7265.    public:
  7266.  };
  7267.  
  7268.  /// Stub class
  7269.  ///
  7270.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7271.  ///       information was available for this class.
  7272.  class  MLAA_EdgeDetectionShader : public ShaderData {
  7273.    public:
  7274.  };
  7275.  
  7276.  /// Stub class
  7277.  ///
  7278.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7279.  ///       information was available for this class.
  7280.  class  MLAA_EdgeDetectStateBlock : public GFXStateBlockData {
  7281.    public:
  7282.  };
  7283.  
  7284.  class  LightRayPostFX : public PostEffect {
  7285.    public:
  7286.     virtual Script setShaderConsts(( string this )) {}
  7287.     virtual Script preProcess(( string this )) {}
  7288.  };
  7289.  
  7290.  /// Stub class
  7291.  ///
  7292.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7293.  ///       information was available for this class.
  7294.  class  LightRayStateBlock : public GFXStateBlockData {
  7295.    public:
  7296.  };
  7297.  
  7298.  /// Stub class
  7299.  ///
  7300.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7301.  ///       information was available for this class.
  7302.  class  LightRayShader : public ShaderData {
  7303.    public:
  7304.  };
  7305.  
  7306.  /// Stub class
  7307.  ///
  7308.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7309.  ///       information was available for this class.
  7310.  class  LightRayOccludeShader : public ShaderData {
  7311.    public:
  7312.  };
  7313.  
  7314.  class  LuminanceVisPostFX : public PostEffect {
  7315.    public:
  7316.     virtual Script onDisabled(( string this )) {}
  7317.     virtual Script onEnabled(( string this )) {}
  7318.     virtual Script setShaderConsts(( string this )) {}
  7319.  };
  7320.  
  7321.  /// Stub class
  7322.  ///
  7323.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7324.  ///       information was available for this class.
  7325.  class  LuminanceVisStateBlock : public GFXStateBlockData {
  7326.    public:
  7327.  };
  7328.  
  7329.  /// Stub class
  7330.  ///
  7331.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7332.  ///       information was available for this class.
  7333.  class  LuminanceVisShader : public ShaderData {
  7334.    public:
  7335.  };
  7336.  
  7337.  class  HDRPostFX : public PostEffect {
  7338.    public:
  7339.     virtual Script onDisabled(( string this )) {}
  7340.     virtual Script onEnabled(( string this )) {}
  7341.     virtual Script setShaderConsts(( string this )) {}
  7342.  };
  7343.  
  7344.  /// Stub class
  7345.  ///
  7346.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7347.  ///       information was available for this class.
  7348.  class  HDRStateBlock : public GFXStateBlockData {
  7349.    public:
  7350.  };
  7351.  
  7352.  /// Stub class
  7353.  ///
  7354.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7355.  ///       information was available for this class.
  7356.  class  HDR_CombineStateBlock : public GFXStateBlockData {
  7357.    public:
  7358.  };
  7359.  
  7360.  /// Stub class
  7361.  ///
  7362.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7363.  ///       information was available for this class.
  7364.  class  HDR_DownSampleStateBlock : public GFXStateBlockData {
  7365.    public:
  7366.  };
  7367.  
  7368.  /// Stub class
  7369.  ///
  7370.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7371.  ///       information was available for this class.
  7372.  class  HDR_SampleStateBlock : public GFXStateBlockData {
  7373.    public:
  7374.  };
  7375.  
  7376.  /// Stub class
  7377.  ///
  7378.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7379.  ///       information was available for this class.
  7380.  class  HDR_CombineShader : public ShaderData {
  7381.    public:
  7382.  };
  7383.  
  7384.  /// Stub class
  7385.  ///
  7386.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7387.  ///       information was available for this class.
  7388.  class  HDR_CalcAdaptedLumShader : public ShaderData {
  7389.    public:
  7390.  };
  7391.  
  7392.  /// Stub class
  7393.  ///
  7394.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7395.  ///       information was available for this class.
  7396.  class  HDR_DownSampleLumShader : public ShaderData {
  7397.    public:
  7398.  };
  7399.  
  7400.  /// Stub class
  7401.  ///
  7402.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7403.  ///       information was available for this class.
  7404.  class  HDR_SampleLumShader : public ShaderData {
  7405.    public:
  7406.  };
  7407.  
  7408.  /// Stub class
  7409.  ///
  7410.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7411.  ///       information was available for this class.
  7412.  class  HDR_BloomGaussBlurVShader : public ShaderData {
  7413.    public:
  7414.  };
  7415.  
  7416.  /// Stub class
  7417.  ///
  7418.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7419.  ///       information was available for this class.
  7420.  class  HDR_BloomGaussBlurHShader : public ShaderData {
  7421.    public:
  7422.  };
  7423.  
  7424.  /// Stub class
  7425.  ///
  7426.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7427.  ///       information was available for this class.
  7428.  class  HDR_DownScale4x4Shader : public ShaderData {
  7429.    public:
  7430.  };
  7431.  
  7432.  /// Stub class
  7433.  ///
  7434.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7435.  ///       information was available for this class.
  7436.  class  HDR_BrightPassShader : public ShaderData {
  7437.    public:
  7438.  };
  7439.  
  7440.  /// Stub class
  7441.  ///
  7442.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7443.  ///       information was available for this class.
  7444.  class  GlowPostFx : public PostEffect {
  7445.    public:
  7446.  };
  7447.  
  7448.  /// Stub class
  7449.  ///
  7450.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7451.  ///       information was available for this class.
  7452.  class  PFX_GlowCombineStateBlock : public GFXStateBlockData {
  7453.    public:
  7454.  };
  7455.  
  7456.  /// Stub class
  7457.  ///
  7458.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7459.  ///       information was available for this class.
  7460.  class  PFX_GlowBlurHorzShader : public ShaderData {
  7461.    public:
  7462.  };
  7463.  
  7464.  /// Stub class
  7465.  ///
  7466.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7467.  ///       information was available for this class.
  7468.  class  PFX_GlowBlurVertShader : public ShaderData {
  7469.    public:
  7470.  };
  7471.  
  7472.  /// Stub class
  7473.  ///
  7474.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7475.  ///       information was available for this class.
  7476.  class  PFX_FXAAShader : public ShaderData {
  7477.    public:
  7478.  };
  7479.  
  7480.  class  FXAA : public PostEffect {
  7481.    public:
  7482.     virtual Script setShaderConsts(()) {}
  7483.  };
  7484.  
  7485.  /// Stub class
  7486.  ///
  7487.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7488.  ///       information was available for this class.
  7489.  class  PFX_DefaultFXAAStateBlock : public GFXStateBlockData {
  7490.    public:
  7491.  };
  7492.  
  7493.  /// Stub class
  7494.  ///
  7495.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7496.  ///       information was available for this class.
  7497.  class  UnderwaterFogPostFx : public PostEffect {
  7498.    public:
  7499.  };
  7500.  
  7501.  /// Stub class
  7502.  ///
  7503.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7504.  ///       information was available for this class.
  7505.  class  UnderwaterFogPassStateBlock : public GFXStateBlockData {
  7506.    public:
  7507.  };
  7508.  
  7509.  /// Stub class
  7510.  ///
  7511.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7512.  ///       information was available for this class.
  7513.  class  UnderwaterFogPassShader : public ShaderData {
  7514.    public:
  7515.  };
  7516.  
  7517.  class  FogPostFx : public PostEffect {
  7518.    public:
  7519.     virtual Script onEnabled(( string this )) {}
  7520.  };
  7521.  
  7522.  /// Stub class
  7523.  ///
  7524.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7525.  ///       information was available for this class.
  7526.  class  FogPassStateBlock : public GFXStateBlockData {
  7527.    public:
  7528.  };
  7529.  
  7530.  /// Stub class
  7531.  ///
  7532.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7533.  ///       information was available for this class.
  7534.  class  FogPassShader : public ShaderData {
  7535.    public:
  7536.  };
  7537.  
  7538.  class  FlashFx : public PostEffect {
  7539.    public:
  7540.     virtual Script setShaderConsts(( string this )) {}
  7541.  };
  7542.  
  7543.  /// Stub class
  7544.  ///
  7545.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7546.  ///       information was available for this class.
  7547.  class  PFX_FlashShader : public ShaderData {
  7548.    public:
  7549.  };
  7550.  
  7551.  /// Stub class
  7552.  ///
  7553.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7554.  ///       information was available for this class.
  7555.  class  PFX_FilmGrainShader : public ShaderData {
  7556.    public:
  7557.  };
  7558.  
  7559.  class  FilmGrainPostFx : public PostEffect {
  7560.    public:
  7561.     virtual Script preProcess(( string this )) {}
  7562.     virtual Script setShaderConsts(( string this )) {}
  7563.  };
  7564.  
  7565.  /// Stub class
  7566.  ///
  7567.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7568.  ///       information was available for this class.
  7569.  class  PFX_DefaultFilmGrainStateBlock : public GFXStateBlockData {
  7570.    public:
  7571.  };
  7572.  
  7573.  /// Stub class
  7574.  ///
  7575.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7576.  ///       information was available for this class.
  7577.  class  Debug_EdgeAAPostEffect : public PostEffect {
  7578.    public:
  7579.  };
  7580.  
  7581.  /// Stub class
  7582.  ///
  7583.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7584.  ///       information was available for this class.
  7585.  class  EdgeAAPostEffect : public PostEffect {
  7586.    public:
  7587.  };
  7588.  
  7589.  /// Stub class
  7590.  ///
  7591.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7592.  ///       information was available for this class.
  7593.  class  EdgeDetectPostEffect : public PostEffect {
  7594.    public:
  7595.  };
  7596.  
  7597.  /// Stub class
  7598.  ///
  7599.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7600.  ///       information was available for this class.
  7601.  class  PFX_EdgeAADebugShader : public ShaderData {
  7602.    public:
  7603.  };
  7604.  
  7605.  /// Stub class
  7606.  ///
  7607.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7608.  ///       information was available for this class.
  7609.  class  PFX_EdgeAAShader : public ShaderData {
  7610.    public:
  7611.  };
  7612.  
  7613.  /// Stub class
  7614.  ///
  7615.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7616.  ///       information was available for this class.
  7617.  class  PFX_EdgeAADetectShader : public ShaderData {
  7618.    public:
  7619.  };
  7620.  
  7621.  /// Stub class
  7622.  ///
  7623.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7624.  ///       information was available for this class.
  7625.  class  PFX_DefaultEdgeAAStateBlock : public GFXStateBlockData {
  7626.    public:
  7627.  };
  7628.  
  7629.  /// Stub class
  7630.  ///
  7631.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7632.  ///       information was available for this class.
  7633.  class  PFX_DrunkShader : public ShaderData {
  7634.    public:
  7635.  };
  7636.  
  7637.  /// Stub class
  7638.  ///
  7639.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7640.  ///       information was available for this class.
  7641.  class  PFX_DrunkStateBlock : public GFXStateBlockData {
  7642.    public:
  7643.  };
  7644.  
  7645.  class  DrunkPostFX : public PostEffect {
  7646.    public:
  7647.     virtual Script setShaderConsts(( string this )) {}
  7648.  };
  7649.  
  7650.  /// Stub class
  7651.  ///
  7652.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7653.  ///       information was available for this class.
  7654.  class  DOFFinalPFX : public PostEffect {
  7655.    public:
  7656.  };
  7657.  
  7658.  /// Stub class
  7659.  ///
  7660.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7661.  ///       information was available for this class.
  7662.  class  DOFSmallBlur : public PostEffect {
  7663.    public:
  7664.  };
  7665.  
  7666.  /// Stub class
  7667.  ///
  7668.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7669.  ///       information was available for this class.
  7670.  class  DOFCalcCoC : public PostEffect {
  7671.    public:
  7672.  };
  7673.  
  7674.  /// Stub class
  7675.  ///
  7676.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7677.  ///       information was available for this class.
  7678.  class  DOFBlurX : public PostEffect {
  7679.    public:
  7680.  };
  7681.  
  7682.  /// Stub class
  7683.  ///
  7684.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7685.  ///       information was available for this class.
  7686.  class  DOFBlurY : public PostEffect {
  7687.    public:
  7688.  };
  7689.  
  7690.  /// Stub class
  7691.  ///
  7692.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7693.  ///       information was available for this class.
  7694.  class  PFX_DOFFinalShader : public ShaderData {
  7695.    public:
  7696.  };
  7697.  
  7698.  /// Stub class
  7699.  ///
  7700.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7701.  ///       information was available for this class.
  7702.  class  PFX_DOFSmallBlurShader : public ShaderData {
  7703.    public:
  7704.  };
  7705.  
  7706.  /// Stub class
  7707.  ///
  7708.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7709.  ///       information was available for this class.
  7710.  class  PFX_DOFCalcCoCShader : public ShaderData {
  7711.    public:
  7712.  };
  7713.  
  7714.  /// Stub class
  7715.  ///
  7716.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7717.  ///       information was available for this class.
  7718.  class  PFX_DOFBlurXShader : public ShaderData {
  7719.    public:
  7720.  };
  7721.  
  7722.  /// Stub class
  7723.  ///
  7724.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7725.  ///       information was available for this class.
  7726.  class  PFX_DOFBlurYShader : public ShaderData {
  7727.    public:
  7728.  };
  7729.  
  7730.  /// Stub class
  7731.  ///
  7732.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7733.  ///       information was available for this class.
  7734.  class  PFX_DOFDownSampleShader : public ShaderData {
  7735.    public:
  7736.  };
  7737.  
  7738.  /// Stub class
  7739.  ///
  7740.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7741.  ///       information was available for this class.
  7742.  class  PFX_DOFFinalStateBlock : public GFXStateBlockData {
  7743.    public:
  7744.  };
  7745.  
  7746.  /// Stub class
  7747.  ///
  7748.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7749.  ///       information was available for this class.
  7750.  class  PFX_DOFBlurStateBlock : public GFXStateBlockData {
  7751.    public:
  7752.  };
  7753.  
  7754.  /// Stub class
  7755.  ///
  7756.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7757.  ///       information was available for this class.
  7758.  class  PFX_DOFDownSampleStateBlock : public GFXStateBlockData {
  7759.    public:
  7760.  };
  7761.  
  7762.  /// Stub class
  7763.  ///
  7764.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7765.  ///       information was available for this class.
  7766.  class  PFX_DOFCalcCoCStateBlock : public GFXStateBlockData {
  7767.    public:
  7768.  };
  7769.  
  7770.  /// Stub class
  7771.  ///
  7772.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7773.  ///       information was available for this class.
  7774.  class  PFX_DefaultDOFStateBlock : public GFXStateBlockData {
  7775.    public:
  7776.  };
  7777.  
  7778.  class  DOFPostEffect : public PostEffect {
  7779.    public:
  7780.     virtual Script autoFocus(( string this )) {}
  7781.     virtual Script setShaderConsts(( string this )) {}
  7782.     virtual Script setLerpDist(( string this, string d0, string d1, string d2 )) {}
  7783.     virtual Script onAdd(( string this )) {}
  7784.     /*!  Set the parameters that control how the near and far equations are calculated
  7785.  from the focal distance. If you are not using auto focus you will need to call
  7786.  setFocusParams PRIOR to calling setFocalDist.
  7787.  */
  7788.     virtual Script setFocusParams(( string this, string nearBlurMax, string farBlurMax, string minRange, string maxRange, string nearSlope, string farSlope )) {}
  7789.     /*!  This method sets auto focus enabled or disabled. Makes use of the parameters set
  7790.  by setFocusParams. When auto focus is enabled it determine the focal depth
  7791.  by performing a raycast at the screen-center.
  7792.  */
  7793.     virtual Script setAutoFocus(( string this, string enabled )) {}
  7794.     /*!  This method is for manually controlling the focal distance. It will have no
  7795.  effect if auto focus is currently enabled. Makes use of the parameters set by
  7796.  setFocusParams.
  7797.  */
  7798.     virtual Script setFocalDist(( string this, string dist )) {}
  7799.  };
  7800.  
  7801.  /// Stub class
  7802.  ///
  7803.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7804.  ///       information was available for this class.
  7805.  class  AL_SpecMapVisualize : public PostEffect {
  7806.    public:
  7807.  };
  7808.  
  7809.  /// Stub class
  7810.  ///
  7811.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7812.  ///       information was available for this class.
  7813.  class  AL_SpecMapShader : public ShaderData {
  7814.    public:
  7815.  };
  7816.  
  7817.  /// Stub class
  7818.  ///
  7819.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7820.  ///       information was available for this class.
  7821.  class  AL_ColorBufferVisualize : public PostEffect {
  7822.    public:
  7823.  };
  7824.  
  7825.  /// Stub class
  7826.  ///
  7827.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7828.  ///       information was available for this class.
  7829.  class  AL_ColorBufferShader : public ShaderData {
  7830.    public:
  7831.  };
  7832.  
  7833.  /// Stub class
  7834.  ///
  7835.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7836.  ///       information was available for this class.
  7837.  class  AL_DeferredShadingFinalize : public PostEffect {
  7838.    public:
  7839.  };
  7840.  
  7841.  /// Stub class
  7842.  ///
  7843.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7844.  ///       information was available for this class.
  7845.  class  SMBlurX : public PostEffect {
  7846.    public:
  7847.  };
  7848.  
  7849.  /// Stub class
  7850.  ///
  7851.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7852.  ///       information was available for this class.
  7853.  class  AL_DeferredShading : public PostEffect {
  7854.    public:
  7855.  };
  7856.  
  7857.  /// Stub class
  7858.  ///
  7859.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7860.  ///       information was available for this class.
  7861.  class  SMBlurStateBlock : public GFXStateBlockData {
  7862.    public:
  7863.  };
  7864.  
  7865.  /// Stub class
  7866.  ///
  7867.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7868.  ///       information was available for this class.
  7869.  class  SMBlurXShader : public ShaderData {
  7870.    public:
  7871.  };
  7872.  
  7873.  /// Stub class
  7874.  ///
  7875.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7876.  ///       information was available for this class.
  7877.  class  SMBlurYShader : public ShaderData {
  7878.    public:
  7879.  };
  7880.  
  7881.  /// Stub class
  7882.  ///
  7883.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7884.  ///       information was available for this class.
  7885.  class  SMDownSampleStateBlock : public GFXStateBlockData {
  7886.    public:
  7887.  };
  7888.  
  7889.  /// Stub class
  7890.  ///
  7891.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7892.  ///       information was available for this class.
  7893.  class  SMDownSampleShader : public ShaderData {
  7894.    public:
  7895.  };
  7896.  
  7897.  /// Stub class
  7898.  ///
  7899.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7900.  ///       information was available for this class.
  7901.  class  AL_DeferredShader : public ShaderData {
  7902.    public:
  7903.  };
  7904.  
  7905.  /// Stub class
  7906.  ///
  7907.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7908.  ///       information was available for this class.
  7909.  class  AL_DeferredShadingState : public GFXStateBlockData {
  7910.    public:
  7911.  };
  7912.  
  7913.  /// Stub class
  7914.  ///
  7915.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7916.  ///       information was available for this class.
  7917.  class  DeferredColorShader : public ShaderData {
  7918.    public:
  7919.  };
  7920.  
  7921.  /// Stub class
  7922.  ///
  7923.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7924.  ///       information was available for this class.
  7925.  class  ClearGBufferShader : public ShaderData {
  7926.    public:
  7927.  };
  7928.  
  7929.  class  ColorGradingPostFx : public PostEffect {
  7930.    public:
  7931.     virtual Script setShaderConsts(( string this )) {}
  7932.     virtual Script preProcess(( string this )) {}
  7933.  };
  7934.  
  7935.  /// Stub class
  7936.  ///
  7937.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7938.  ///       information was available for this class.
  7939.  class  ColorGradingBlock : public GFXStateBlockData {
  7940.    public:
  7941.  };
  7942.  
  7943.  /// Stub class
  7944.  ///
  7945.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7946.  ///       information was available for this class.
  7947.  class  ColorGradingShader : public ShaderData {
  7948.    public:
  7949.  };
  7950.  
  7951.  class  ChromaticLensPostFX : public PostEffect {
  7952.    public:
  7953.     virtual Script setShaderConsts(( string this )) {}
  7954.  };
  7955.  
  7956.  /// Stub class
  7957.  ///
  7958.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7959.  ///       information was available for this class.
  7960.  class  PFX_ChromaticLensShader : public ShaderData {
  7961.    public:
  7962.  };
  7963.  
  7964.  /// Stub class
  7965.  ///
  7966.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7967.  ///       information was available for this class.
  7968.  class  PFX_DefaultChromaticLensStateBlock : public GFXStateBlockData {
  7969.    public:
  7970.  };
  7971.  
  7972.  class  ComboPFX : public PostEffect {
  7973.    public:
  7974.     virtual Script setShaderConsts(( string this )) {}
  7975.     virtual Script preProcess(( string this )) {}
  7976.  };
  7977.  
  7978.  /// Stub class
  7979.  ///
  7980.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7981.  ///       information was available for this class.
  7982.  class  PFX_ComboPFXShader : public ShaderData {
  7983.    public:
  7984.  };
  7985.  
  7986.  /// Stub class
  7987.  ///
  7988.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7989.  ///       information was available for this class.
  7990.  class  PFX_DefaultComboPFXStateBlock : public GFXStateBlockData {
  7991.    public:
  7992.  };
  7993.  
  7994.  /// Stub class
  7995.  ///
  7996.  /// @note This is a stub class to ensure a proper class hierarchy. No
  7997.  ///       information was available for this class.
  7998.  class  PFXSet : public SimSet {
  7999.    public:
  8000.  };
  8001.  
  8002.  /// Stub class
  8003.  ///
  8004.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8005.  ///       information was available for this class.
  8006.  class  BackgroundImagePFX : public PostEffect {
  8007.    public:
  8008.  };
  8009.  
  8010.  /// Stub class
  8011.  ///
  8012.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8013.  ///       information was available for this class.
  8014.  class  PFX_BackgroundImageShader : public ShaderData {
  8015.    public:
  8016.  };
  8017.  
  8018.  /// Stub class
  8019.  ///
  8020.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8021.  ///       information was available for this class.
  8022.  class  PFX_PassthruShader : public ShaderData {
  8023.    public:
  8024.  };
  8025.  
  8026.  /// Stub class
  8027.  ///
  8028.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8029.  ///       information was available for this class.
  8030.  class  PFX_DefaultStateBlock : public GFXStateBlockData {
  8031.    public:
  8032.  };
  8033.  
  8034.  /// Stub class
  8035.  ///
  8036.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8037.  ///       information was available for this class.
  8038.  class  ForestOrdSBData : public GFXStateBlockData {
  8039.    public:
  8040.  };
  8041.  
  8042.  /// Stub class
  8043.  ///
  8044.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8045.  ///       information was available for this class.
  8046.  class  ForestOrdShaderData : public ShaderData {
  8047.    public:
  8048.  };
  8049.  
  8050.  /// Stub class
  8051.  ///
  8052.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8053.  ///       information was available for this class.
  8054.  class  EShoreTerrainShaderData : public ShaderData {
  8055.    public:
  8056.  };
  8057.  
  8058.  /// Stub class
  8059.  ///
  8060.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8061.  ///       information was available for this class.
  8062.  class  EProxyPreRenderShaderData : public ShaderData {
  8063.    public:
  8064.  };
  8065.  
  8066.  /// Stub class
  8067.  ///
  8068.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8069.  ///       information was available for this class.
  8070.  class  EProxyPreRenderSBData : public GFXStateBlockData {
  8071.    public:
  8072.  };
  8073.  
  8074.  /// Stub class
  8075.  ///
  8076.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8077.  ///       information was available for this class.
  8078.  class  ERenderManShaderData : public ShaderData {
  8079.    public:
  8080.  };
  8081.  
  8082.  /// Stub class
  8083.  ///
  8084.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8085.  ///       information was available for this class.
  8086.  class  BasicCloudsShader : public ShaderData {
  8087.    public:
  8088.  };
  8089.  
  8090.  /// Stub class
  8091.  ///
  8092.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8093.  ///       information was available for this class.
  8094.  class  CloudLayerShader : public ShaderData {
  8095.    public:
  8096.  };
  8097.  
  8098.  /// Stub class
  8099.  ///
  8100.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8101.  ///       information was available for this class.
  8102.  class  ScatterSkySimpleShaderData : public ShaderData {
  8103.    public:
  8104.  };
  8105.  
  8106.  /// Stub class
  8107.  ///
  8108.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8109.  ///       information was available for this class.
  8110.  class  ScatterSkyShaderData : public ShaderData {
  8111.    public:
  8112.  };
  8113.  
  8114.  /// Stub class
  8115.  ///
  8116.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8117.  ///       information was available for this class.
  8118.  class  ScatterSkySBData : public GFXStateBlockData {
  8119.    public:
  8120.  };
  8121.  
  8122.  /// Stub class
  8123.  ///
  8124.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8125.  ///       information was available for this class.
  8126.  class  UnderwaterBasic : public CustomMaterial {
  8127.    public:
  8128.  };
  8129.  
  8130.  /// Stub class
  8131.  ///
  8132.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8133.  ///       information was available for this class.
  8134.  class  UnderWaterBasicShader : public ShaderData {
  8135.    public:
  8136.  };
  8137.  
  8138.  /// Stub class
  8139.  ///
  8140.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8141.  ///       information was available for this class.
  8142.  class  WaterBasic : public CustomMaterial {
  8143.    public:
  8144.  };
  8145.  
  8146.  /// Stub class
  8147.  ///
  8148.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8149.  ///       information was available for this class.
  8150.  class  UnderWaterBasicStateBlock : public GFXStateBlockData {
  8151.    public:
  8152.  };
  8153.  
  8154.  /// Stub class
  8155.  ///
  8156.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8157.  ///       information was available for this class.
  8158.  class  WaterBasicStateBlock : public GFXStateBlockData {
  8159.    public:
  8160.  };
  8161.  
  8162.  /// Stub class
  8163.  ///
  8164.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8165.  ///       information was available for this class.
  8166.  class  WaterBasicShader : public ShaderData {
  8167.    public:
  8168.  };
  8169.  
  8170.  /// Stub class
  8171.  ///
  8172.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8173.  ///       information was available for this class.
  8174.  class  Underwater : public CustomMaterial {
  8175.    public:
  8176.  };
  8177.  
  8178.  /// Stub class
  8179.  ///
  8180.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8181.  ///       information was available for this class.
  8182.  class  UnderWaterShader : public ShaderData {
  8183.    public:
  8184.  };
  8185.  
  8186.  /// Stub class
  8187.  ///
  8188.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8189.  ///       information was available for this class.
  8190.  class  WaterEnvClipped : public CustomMaterial {
  8191.    public:
  8192.  };
  8193.  
  8194.  /// Stub class
  8195.  ///
  8196.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8197.  ///       information was available for this class.
  8198.  class  water : public CustomMaterial {
  8199.    public:
  8200.  };
  8201.  
  8202.  /// Stub class
  8203.  ///
  8204.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8205.  ///       information was available for this class.
  8206.  class  UnderWaterStateBlock : public GFXStateBlockData {
  8207.    public:
  8208.  };
  8209.  
  8210.  /// Stub class
  8211.  ///
  8212.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8213.  ///       information was available for this class.
  8214.  class  WaterStateBlock : public GFXStateBlockData {
  8215.    public:
  8216.  };
  8217.  
  8218.  /// Stub class
  8219.  ///
  8220.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8221.  ///       information was available for this class.
  8222.  class  WaterSampler : public GFXSamplerStateData {
  8223.    public:
  8224.  };
  8225.  
  8226.  /// Stub class
  8227.  ///
  8228.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8229.  ///       information was available for this class.
  8230.  class  WaterShaderEnvClipped : public ShaderData {
  8231.    public:
  8232.  };
  8233.  
  8234.  /// Stub class
  8235.  ///
  8236.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8237.  ///       information was available for this class.
  8238.  class  WaterShader : public ShaderData {
  8239.    public:
  8240.  };
  8241.  
  8242.  /// Stub class
  8243.  ///
  8244.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8245.  ///       information was available for this class.
  8246.  class  TerrainClaimSBData : public GFXStateBlockData {
  8247.    public:
  8248.  };
  8249.  
  8250.  /// Stub class
  8251.  ///
  8252.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8253.  ///       information was available for this class.
  8254.  class  TerrainClaimShaderData : public ShaderData {
  8255.    public:
  8256.  };
  8257.  
  8258.  /// Stub class
  8259.  ///
  8260.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8261.  ///       information was available for this class.
  8262.  class  TerrainHighlightSBData : public GFXStateBlockData {
  8263.    public:
  8264.  };
  8265.  
  8266.  /// Stub class
  8267.  ///
  8268.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8269.  ///       information was available for this class.
  8270.  class  TerrainHighlightShaderData : public ShaderData {
  8271.    public:
  8272.  };
  8273.  
  8274.  /// Stub class
  8275.  ///
  8276.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8277.  ///       information was available for this class.
  8278.  class  TerrainBlendShader : public ShaderData {
  8279.    public:
  8280.  };
  8281.  
  8282.  /// Stub class
  8283.  ///
  8284.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8285.  ///       information was available for this class.
  8286.  class  fxFoliageReplicatorShader : public ShaderData {
  8287.    public:
  8288.  };
  8289.  
  8290.  /// Stub class
  8291.  ///
  8292.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8293.  ///       information was available for this class.
  8294.  class  reflect : public ShaderData {
  8295.    public:
  8296.  };
  8297.  
  8298.  /// Stub class
  8299.  ///
  8300.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8301.  ///       information was available for this class.
  8302.  class  ReflectBump : public ShaderData {
  8303.    public:
  8304.  };
  8305.  
  8306.  /// Stub class
  8307.  ///
  8308.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8309.  ///       information was available for this class.
  8310.  class  OffscreenParticleCompositeShaderData : public ShaderData {
  8311.    public:
  8312.  };
  8313.  
  8314.  /// Stub class
  8315.  ///
  8316.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8317.  ///       information was available for this class.
  8318.  class  ParticlesShaderData : public ShaderData {
  8319.    public:
  8320.  };
  8321.  
  8322.  /// Stub class
  8323.  ///
  8324.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8325.  ///       information was available for this class.
  8326.  class  _DebugInterior_ : public ShaderData {
  8327.    public:
  8328.  };
  8329.  
  8330.  /// Stub class
  8331.  ///
  8332.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8333.  ///       information was available for this class.
  8334.  class  SamplerWrapNoFilter : public GFXSamplerStateData {
  8335.    public:
  8336.  };
  8337.  
  8338.  /// Stub class
  8339.  ///
  8340.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8341.  ///       information was available for this class.
  8342.  class  SamplerWrapPoint : public GFXSamplerStateData {
  8343.    public:
  8344.  };
  8345.  
  8346.  /// Stub class
  8347.  ///
  8348.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8349.  ///       information was available for this class.
  8350.  class  SamplerWrapLinear : public GFXSamplerStateData {
  8351.    public:
  8352.  };
  8353.  
  8354.  /// Stub class
  8355.  ///
  8356.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8357.  ///       information was available for this class.
  8358.  class  SamplerClampPoint : public GFXSamplerStateData {
  8359.    public:
  8360.  };
  8361.  
  8362.  /// Stub class
  8363.  ///
  8364.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8365.  ///       information was available for this class.
  8366.  class  SamplerClampLinear : public GFXSamplerStateData {
  8367.    public:
  8368.  };
  8369.  
  8370.  /// Stub class
  8371.  ///
  8372.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8373.  ///       information was available for this class.
  8374.  class  WarnMatCubeMap : public CubemapData {
  8375.    public:
  8376.  };
  8377.  
  8378.  /// Stub class
  8379.  ///
  8380.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8381.  ///       information was available for this class.
  8382.  class  WarningMaterial : public Material {
  8383.    public:
  8384.  };
  8385.  
  8386.  /// Stub class
  8387.  ///
  8388.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8389.  ///       information was available for this class.
  8390.  class  Corona_Mat : public Material {
  8391.    public:
  8392.  };
  8393.  
  8394.  /// Stub class
  8395.  ///
  8396.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8397.  ///       information was available for this class.
  8398.  class  Moon_Mat : public Material {
  8399.    public:
  8400.  };
  8401.  
  8402.  /// Stub class
  8403.  ///
  8404.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8405.  ///       information was available for this class.
  8406.  class  Moon_Glow_Mat : public Material {
  8407.    public:
  8408.  };
  8409.  
  8410.  /// Stub class
  8411.  ///
  8412.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8413.  ///       information was available for this class.
  8414.  class  NightCubemap : public CubemapData {
  8415.    public:
  8416.  };
  8417.  
  8418.  /// Stub class
  8419.  ///
  8420.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8421.  ///       information was available for this class.
  8422.  class  DarkBlueSky : public Material {
  8423.    public:
  8424.  };
  8425.  
  8426.  /// Stub class
  8427.  ///
  8428.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8429.  ///       information was available for this class.
  8430.  class  NewLevelSkyCubemap : public CubemapData {
  8431.    public:
  8432.  };
  8433.  
  8434.  /// Stub class
  8435.  ///
  8436.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8437.  ///       information was available for this class.
  8438.  class  GreySkyCubemap : public CubemapData {
  8439.    public:
  8440.  };
  8441.  
  8442.  /// Stub class
  8443.  ///
  8444.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8445.  ///       information was available for this class.
  8446.  class  DesertSkyMat : public Material {
  8447.    public:
  8448.  };
  8449.  
  8450.  /// Stub class
  8451.  ///
  8452.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8453.  ///       information was available for this class.
  8454.  class  DesertSkyCubemap : public CubemapData {
  8455.    public:
  8456.  };
  8457.  
  8458.  /// Stub class
  8459.  ///
  8460.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8461.  ///       information was available for this class.
  8462.  class  BlankSkyMat : public Material {
  8463.    public:
  8464.  };
  8465.  
  8466.  /// Stub class
  8467.  ///
  8468.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8469.  ///       information was available for this class.
  8470.  class  BlankSkyCubemap : public CubemapData {
  8471.    public:
  8472.  };
  8473.  
  8474.  /// Stub class
  8475.  ///
  8476.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8477.  ///       information was available for this class.
  8478.  class  BlackSkyMat : public Material {
  8479.    public:
  8480.  };
  8481.  
  8482.  /// Stub class
  8483.  ///
  8484.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8485.  ///       information was available for this class.
  8486.  class  BlackSkyCubemap : public CubemapData {
  8487.    public:
  8488.  };
  8489.  
  8490.  /// Stub class
  8491.  ///
  8492.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8493.  ///       information was available for this class.
  8494.  class  portal5_portal_lightray : public Material {
  8495.    public:
  8496.  };
  8497.  
  8498.  /// Stub class
  8499.  ///
  8500.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8501.  ///       information was available for this class.
  8502.  class  portal5_portal_top : public Material {
  8503.    public:
  8504.  };
  8505.  
  8506.  /// Stub class
  8507.  ///
  8508.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8509.  ///       information was available for this class.
  8510.  class  noshapetext_noshape_mat : public Material {
  8511.    public:
  8512.  };
  8513.  
  8514.  /// Stub class
  8515.  ///
  8516.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8517.  ///       information was available for this class.
  8518.  class  noshapetext_lambert1 : public Material {
  8519.    public:
  8520.  };
  8521.  
  8522.  /// Stub class
  8523.  ///
  8524.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8525.  ///       information was available for this class.
  8526.  class  noshape_NoShape : public Material {
  8527.    public:
  8528.  };
  8529.  
  8530.  /// Stub class
  8531.  ///
  8532.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8533.  ///       information was available for this class.
  8534.  class  CameraMat : public Material {
  8535.    public:
  8536.  };
  8537.  
  8538.  /// Stub class
  8539.  ///
  8540.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8541.  ///       information was available for this class.
  8542.  class  SimpleConeMat : public Material {
  8543.    public:
  8544.  };
  8545.  
  8546.  /// Stub class
  8547.  ///
  8548.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8549.  ///       information was available for this class.
  8550.  class  OctahedronMat : public Material {
  8551.    public:
  8552.  };
  8553.  
  8554.  /// Stub class
  8555.  ///
  8556.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8557.  ///       information was available for this class.
  8558.  class  Grid512_Red_Mat : public Material {
  8559.    public:
  8560.  };
  8561.  
  8562.  /// Stub class
  8563.  ///
  8564.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8565.  ///       information was available for this class.
  8566.  class  Grid512_OrangeLines_Mat : public Material {
  8567.    public:
  8568.  };
  8569.  
  8570.  /// Stub class
  8571.  ///
  8572.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8573.  ///       information was available for this class.
  8574.  class  Grid512_Orange_Mat : public Material {
  8575.    public:
  8576.  };
  8577.  
  8578.  /// Stub class
  8579.  ///
  8580.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8581.  ///       information was available for this class.
  8582.  class  Grid512_GreyBase_Mat : public Material {
  8583.    public:
  8584.  };
  8585.  
  8586.  /// Stub class
  8587.  ///
  8588.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8589.  ///       information was available for this class.
  8590.  class  Grid512_Grey_Mat : public Material {
  8591.    public:
  8592.  };
  8593.  
  8594.  /// Stub class
  8595.  ///
  8596.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8597.  ///       information was available for this class.
  8598.  class  Grid512_Green_Mat : public Material {
  8599.    public:
  8600.  };
  8601.  
  8602.  /// Stub class
  8603.  ///
  8604.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8605.  ///       information was available for this class.
  8606.  class  Grid512_ForestGreenLines_Mat : public Material {
  8607.    public:
  8608.  };
  8609.  
  8610.  /// Stub class
  8611.  ///
  8612.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8613.  ///       information was available for this class.
  8614.  class  Grid512_ForestGreen_Mat : public Material {
  8615.    public:
  8616.  };
  8617.  
  8618.  /// Stub class
  8619.  ///
  8620.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8621.  ///       information was available for this class.
  8622.  class  Grid512_Blue_Mat : public Material {
  8623.    public:
  8624.  };
  8625.  
  8626.  /// Stub class
  8627.  ///
  8628.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8629.  ///       information was available for this class.
  8630.  class  Grid512_Black_Mat : public Material {
  8631.    public:
  8632.  };
  8633.  
  8634.  /// Stub class
  8635.  ///
  8636.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8637.  ///       information was available for this class.
  8638.  class  TimberHeavyMaterial : public Material {
  8639.    public:
  8640.  };
  8641.  
  8642.  /// Stub class
  8643.  ///
  8644.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8645.  ///       information was available for this class.
  8646.  class  TimberLightMaterial : public Material {
  8647.    public:
  8648.  };
  8649.  
  8650.  /// Stub class
  8651.  ///
  8652.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8653.  ///       information was available for this class.
  8654.  class  DefaultRoadMaterialOther : public Material {
  8655.    public:
  8656.  };
  8657.  
  8658.  /// Stub class
  8659.  ///
  8660.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8661.  ///       information was available for this class.
  8662.  class  DefaultRoadMaterialTop : public Material {
  8663.    public:
  8664.  };
  8665.  
  8666.  /// Stub class
  8667.  ///
  8668.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8669.  ///       information was available for this class.
  8670.  class  empty : public Material {
  8671.    public:
  8672.  };
  8673.  
  8674.  /// Stub class
  8675.  ///
  8676.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8677.  ///       information was available for this class.
  8678.  class  BlankWhite : public Material {
  8679.    public:
  8680.  };
  8681.  
  8682.  /// Stub class
  8683.  ///
  8684.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8685.  ///       information was available for this class.
  8686.  class  DefaultDecalRoadMaterial : public Material {
  8687.    public:
  8688.  };
  8689.  
  8690.  class  CenterPrintText : public GuiMLTextCtrl {
  8691.    public:
  8692.     virtual Script onResize(( string this, string width, string height )) {}
  8693.  };
  8694.  
  8695.  class  bottomPrintText : public GuiMLTextCtrl {
  8696.    public:
  8697.     virtual Script onResize(( string this, string width, string height )) {}
  8698.  };
  8699.  
  8700.  /*!
  8701.  @brief Used by GUIConsole system internally.
  8702.  
  8703.   */
  8704.  class  GuiConsoleTextCtrl : public GuiControl {
  8705.    public:
  8706.  
  8707.     /*! @name GuiConsoleTextCtrl
  8708.     @{ */
  8709.     /*! */
  8710.     /*!
  8711.      */
  8712.     string expression;
  8713.     /// @}
  8714.  
  8715.  
  8716.     /*! @name Layout
  8717.     @{ */
  8718.     /*! */
  8719.     /// @}
  8720.  
  8721.  
  8722.     /*! @name Control
  8723.     @{ */
  8724.     /*! */
  8725.     /// @}
  8726.  
  8727.  
  8728.     /*! @name ToolTip
  8729.     @{ */
  8730.     /*! */
  8731.     /// @}
  8732.  
  8733.  
  8734.     /*! @name Editing
  8735.     @{ */
  8736.     /*! */
  8737.     /// @}
  8738.  
  8739.  
  8740.     /*! @name Localization
  8741.     @{ */
  8742.     /*! */
  8743.     /// @}
  8744.  
  8745.  
  8746.     /*! @name Ungrouped
  8747.     @{ */
  8748.     /*! */
  8749.     /// @}
  8750.  
  8751.  
  8752.     /*! @name Object
  8753.     @{ */
  8754.     /*! */
  8755.     /// @}
  8756.  
  8757.  
  8758.     /*! @name Editing
  8759.     @{ */
  8760.     /*! */
  8761.     /// @}
  8762.  
  8763.  
  8764.     /*! @name Persistence
  8765.     @{ */
  8766.     /*! */
  8767.     /// @}
  8768.  
  8769.  };
  8770.  
  8771.  /// Stub class
  8772.  ///
  8773.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8774.  ///       information was available for this class.
  8775.  class  TextOverlayControl : public GuiConsoleTextCtrl {
  8776.    public:
  8777.  };
  8778.  
  8779.  /// Stub class
  8780.  ///
  8781.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8782.  ///       information was available for this class.
  8783.  class  FrameOverlayGui : public GuiControl {
  8784.    public:
  8785.  };
  8786.  
  8787.  class  QuickEditDropDownTextEditCtrl {
  8788.    public:
  8789.     virtual Script updateFromChild(( string this, string ctrl )) {}
  8790.     virtual Script onRenameItem(()) {}
  8791.  };
  8792.  
  8793.  class  AggregateControl {
  8794.    public:
  8795.     virtual Script callMethod(( string this, string method, string args )) {}
  8796.     virtual Script onAction(()) {}
  8797.     virtual Script updateFromChild(( string this, string child )) {}
  8798.     virtual Script getValue(( string this )) {}
  8799.     virtual Script setValue(( string this, string val, string child )) {}
  8800.  };
  8801.  
  8802.  /// Stub class
  8803.  ///
  8804.  /// @note This is a stub class to ensure a proper class hierarchy. No
  8805.  ///       information was available for this class.
  8806.  class  ConsoleVarDlg : public GuiControl {
  8807.    public:
  8808.  };
  8809.  
  8810.  /*!
  8811.  @brief The on-screen, in-game console. Calls getLog() to get the on-screen console entries, then renders them as needed.
  8812.  
  8813.  @tsexample
  8814.     new GuiConsole()
  8815.         {
  8816.             //Properties not specific to this control have been omitted from this example.
  8817.         };
  8818.  @endtsexample
  8819.  
  8820.  @see GuiControl
  8821.  
  8822.   */
  8823.  class  GuiConsole : public GuiArrayCtrl {
  8824.    public:
  8825.        /*! Called when a message in the log is clicked.
  8826.  
  8827. @param level Diagnostic level of the message.
  8828. @param message Message text.
  8829.  */
  8830.        void onMessageSelected( ConsoleLogEntry::Level level, string message );
  8831.  
  8832.  
  8833.     /*! @name Layout
  8834.     @{ */
  8835.     /*! */
  8836.     /// @}
  8837.  
  8838.  
  8839.     /*! @name Control
  8840.     @{ */
  8841.     /*! */
  8842.     /// @}
  8843.  
  8844.  
  8845.     /*! @name ToolTip
  8846.     @{ */
  8847.     /*! */
  8848.     /// @}
  8849.  
  8850.  
  8851.     /*! @name Editing
  8852.     @{ */
  8853.     /*! */
  8854.     /// @}
  8855.  
  8856.  
  8857.     /*! @name Localization
  8858.     @{ */
  8859.     /*! */
  8860.     /// @}
  8861.  
  8862.  
  8863.     /*! @name Ungrouped
  8864.     @{ */
  8865.     /*! */
  8866.     /// @}
  8867.  
  8868.  
  8869.     /*! @name Object
  8870.     @{ */
  8871.     /*! */
  8872.     /// @}
  8873.  
  8874.  
  8875.     /*! @name Editing
  8876.     @{ */
  8877.     /*! */
  8878.     /// @}
  8879.  
  8880.  
  8881.     /*! @name Persistence
  8882.     @{ */
  8883.     /*! */
  8884.     /// @}
  8885.  
  8886.  };
  8887.  
  8888.  class  ConsoleMessageLogView : public GuiConsole {
  8889.    public:
  8890.     virtual Script onMessageSelected(( string this, string level, string message )) {}
  8891.  };
  8892.  
  8893.  /*!
  8894.  @brief Text entry element of a GuiConsole.
  8895.  
  8896.  @tsexample
  8897.  new GuiConsoleEditCtrl(ConsoleEntry)
  8898.  {
  8899.     profile = "ConsoleTextEditProfile";
  8900.     horizSizing = "width";
  8901.     vertSizing = "top";
  8902.     position = "0 462";
  8903.     extent = "640 18";
  8904.     minExtent = "8 8";
  8905.     visible = "1";
  8906.     altCommand = "ConsoleEntry::eval();";
  8907.     helpTag = "0";
  8908.     maxLength = "255";
  8909.     historySize = "40";
  8910.     password = "0";
  8911.     tabComplete = "0";
  8912.     sinkAllKeyEvents = "1";
  8913.     useSiblingScroller = "1";
  8914.  };
  8915.  @endtsexample
  8916.  
  8917.   */
  8918.  class  GuiConsoleEditCtrl : public GuiTextEditCtrl {
  8919.    public:
  8920.  
  8921.     /*! @name GuiConsoleEditCtrl
  8922.     @{ */
  8923.     /*! */
  8924.     /*!
  8925.      */
  8926.     bool useSiblingScroller;
  8927.     /// @}
  8928.  
  8929.  
  8930.     /*! @name Text Input
  8931.     @{ */
  8932.     /*! */
  8933.     /// @}
  8934.  
  8935.  
  8936.     /*! @name Layout
  8937.     @{ */
  8938.     /*! */
  8939.     /// @}
  8940.  
  8941.  
  8942.     /*! @name Layout
  8943.     @{ */
  8944.     /*! */
  8945.     /// @}
  8946.  
  8947.  
  8948.     /*! @name Control
  8949.     @{ */
  8950.     /*! */
  8951.     /// @}
  8952.  
  8953.  
  8954.     /*! @name ToolTip
  8955.     @{ */
  8956.     /*! */
  8957.     /// @}
  8958.  
  8959.  
  8960.     /*! @name Editing
  8961.     @{ */
  8962.     /*! */
  8963.     /// @}
  8964.  
  8965.  
  8966.     /*! @name Localization
  8967.     @{ */
  8968.     /*! */
  8969.     /// @}
  8970.  
  8971.  
  8972.     /*! @name Ungrouped
  8973.     @{ */
  8974.     /*! */
  8975.     /// @}
  8976.  
  8977.  
  8978.     /*! @name Object
  8979.     @{ */
  8980.     /*! */
  8981.     /// @}
  8982.  
  8983.  
  8984.     /*! @name Editing
  8985.     @{ */
  8986.     /*! */
  8987.     /// @}
  8988.  
  8989.  
  8990.     /*! @name Persistence
  8991.     @{ */
  8992.     /*! */
  8993.     /// @}
  8994.  
  8995.  };
  8996.  
  8997.  class  ConsoleEntry : public GuiConsoleEditCtrl {
  8998.    public:
  8999.     virtual Script eval(()) {}
  9000.  };
  9001.  
  9002.  class  ConsoleDlg : public GuiControl {
  9003.    public:
  9004.     virtual Script setAlpha(( string this, string alpha )) {}
  9005.     virtual Script showWindow(( string this )) {}
  9006.     virtual Script hideWindow(( string this )) {}
  9007.  };
  9008.  
  9009.  /// Stub class
  9010.  ///
  9011.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9012.  ///       information was available for this class.
  9013.  class  OptRemapInputCtrl : public GuiInputCtrl {
  9014.    public:
  9015.  };
  9016.  
  9017.  /// Stub class
  9018.  ///
  9019.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9020.  ///       information was available for this class.
  9021.  class  RemapDlg : public GuiControl {
  9022.    public:
  9023.  };
  9024.  
  9025.  /*!
  9026.  @brief A canvas on which rendering occurs.
  9027.  
  9028.  @section GuiCanvas_contents What a GUICanvas Can Contain...
  9029.  
  9030.  @subsection GuiCanvas_content_contentcontrol Content Control
  9031.  A content control is the top level GuiControl for a screen. This GuiControl will be the parent control for all other GuiControls on that particular screen.
  9032.  
  9033.  @subsection GuiCanvas_content_dialogs Dialogs
  9034.  
  9035.  A dialog is essentially another screen, only it gets overlaid on top of the current content control, and all input goes to the dialog. This is most akin to the "Open File" dialog box found in most operating systems. When you choose to open a file, and the "Open File" dialog pops up, you can no longer send input to the application, and must complete or cancel the open file request. Torque keeps track of layers of dialogs. The dialog with the highest layer is on top and will get all the input, unless the dialog is modeless, which is a profile option.
  9036.  
  9037.  @see GuiControlProfile
  9038.  
  9039.  @section GuiCanvas_dirty Dirty Rectangles
  9040.  
  9041.  The GuiCanvas is based on dirty regions. Every frame the canvas paints only the areas of the canvas that are 'dirty' or need updating. In most cases, this only is the area under the mouse cursor. This is why if you look in guiCanvas.cc the call to glClear is commented out. What you will see is a black screen, except in the dirty regions, where the screen will be painted normally. If you are making an animated GuiControl you need to add your control to the dirty areas of the canvas.
  9042.  
  9043.  @see GuiControl
  9044.  
  9045.  @ingroup GuiCore
  9046.   */
  9047.  class  GuiCanvas : public GuiControl {
  9048.    public:
  9049.     virtual Script onFullScreenToggled(( string this, string newValue )) {}
  9050.     virtual Script attemptFullscreenToggle(( string this )) {}
  9051.     virtual Script onLoseFocus(( string this )) {}
  9052.     /*! @brief Get the GuiControl which is being used as the content.
  9053.  
  9054. @tsexample
  9055. Canvas.getContent();
  9056. @endtsexample
  9057.  
  9058. @return ID of current content control */
  9059.     virtual int getContent(()) {}
  9060.     /*! @brief Set the content of the canvas to a specified control.
  9061.  
  9062. @param ctrl ID or name of GuiControl to set content to
  9063.  
  9064. @tsexample
  9065. Canvas.setContent(PlayGui);
  9066. @endtsexample
  9067.  
  9068.  */
  9069.     virtual void setContent(( GuiControl ctrl )) {}
  9070.     /*! @hide */
  9071.     virtual void pushDialog((GuiControl ctrl, int layer=0, bool center=false)) {}
  9072.     /*! @hide */
  9073.     virtual void popDialog((GuiControl ctrl=NULL)) {}
  9074.     /*! @hide */
  9075.     virtual void popLayer((int layer)) {}
  9076.     /*! @brief Turns on the mouse cursor.
  9077.  
  9078. @tsexample
  9079. Canvas.cursorOn();
  9080. @endtsexample
  9081.  
  9082.  */
  9083.     virtual void cursorOn(()) {}
  9084.     /*! @brief Turns on the mouse off.
  9085.  
  9086. @tsexample
  9087. Canvas.cursorOff();
  9088. @endtsexample
  9089.  
  9090.  */
  9091.     virtual void cursorOff(()) {}
  9092.     /*! @brief Sets the cursor for the canvas.
  9093.  
  9094. @param cursor Name of the GuiCursor to use
  9095.  
  9096. @tsexample
  9097. Canvas.setCursor("DefaultCursor");
  9098. @endtsexample
  9099.  
  9100.  */
  9101.     virtual void setCursor(( GuiCursor cursor )) {}
  9102.     /*! @brief This turns on/off front-buffer rendering.
  9103.  
  9104. @param enable True if all rendering should be done to the front buffer
  9105.  
  9106. @tsexample
  9107. Canvas.renderFront(false);
  9108. @endtsexample
  9109.  
  9110.  */
  9111.     virtual void renderFront(( bool enable )) {}
  9112.     /*! @brief Enable rendering of the cursor.
  9113.  
  9114. @tsexample
  9115. Canvas.showCursor();
  9116. @endtsexample
  9117.  
  9118.  */
  9119.     virtual void showCursor(()) {}
  9120.     /*! @brief Disable rendering of the cursor.
  9121.  
  9122. @tsexample
  9123. Canvas.hideCursor();
  9124. @endtsexample
  9125.  
  9126.  */
  9127.     virtual void hideCursor(()) {}
  9128.     /*! @brief Determines if mouse cursor is enabled.
  9129.  
  9130. @tsexample
  9131. // Is cursor on?
  9132. if(Canvas.isCursorOn())
  9133.     echo("Canvas cursor is on");
  9134. @endtsexample
  9135.  
  9136. @return Returns true if the cursor is on.
  9137.  
  9138.  */
  9139.     virtual bool isCursorOn(()) {}
  9140.     /*! @brief Determines if mouse cursor is rendering.
  9141.  
  9142. @tsexample
  9143. // Is cursor rendering?
  9144. if(Canvas.isCursorShown())
  9145.     echo("Canvas cursor is rendering");
  9146. @endtsexample
  9147.  
  9148. @return Returns true if the cursor is rendering.
  9149.  
  9150.  */
  9151.     virtual bool isCursorShown(()) {}
  9152.     /*! @brief Force canvas to redraw.
  9153. If the elapsed time is greater than the time since the last paint then the repaint will be skipped.
  9154. @param elapsedMS The optional elapsed time in milliseconds.
  9155.  
  9156. @tsexample
  9157. Canvas.repaint();
  9158. @endtsexample
  9159.  
  9160.  */
  9161.     virtual void repaint(( int elapsedMS=0 )) {}
  9162.     /*! @brief Reset the update regions for the canvas.
  9163.  
  9164. @tsexample
  9165. Canvas.reset();
  9166. @endtsexample
  9167.  
  9168.  */
  9169.     virtual void reset(()) {}
  9170.     /*! @brief Get the current position of the cursor.
  9171.  
  9172. @param param Description
  9173.  
  9174. @tsexample
  9175. %cursorPos = Canvas.getCursorPos();
  9176. @endtsexample
  9177.  
  9178. @return Screen coordinates of mouse cursor, in format "X Y" */
  9179.     virtual string getCursorPos(()) {}
  9180.     /*! @hide */
  9181.     virtual void setCursorPos((Point2I pos)) {}
  9182.     /*! @brief Gets the gui control under the mouse.
  9183.  
  9184. @tsexample
  9185. %underMouse = Canvas.getMouseControl();
  9186. @endtsexample
  9187.  
  9188. @return ID of the gui control, if one was found. NULL otherwise */
  9189.     virtual int getMouseControl(()) {}
  9190.     /*! @brief Returns the dimensions of the canvas
  9191.  
  9192. @tsexample
  9193. %extent = Canvas.getExtent();
  9194. @endtsexample
  9195.  
  9196. @return Width and height of canvas. Formatted as numerical values in a single string "# #" */
  9197.     virtual string getExtent(()) {}
  9198.     /*! @brief Change the title of the OS window.
  9199.  
  9200. @param newTitle String containing the new name
  9201.  
  9202. @tsexample
  9203. Canvas.setWindowTitle("Documentation Rocks!");
  9204. @endtsexample
  9205.  
  9206.  */
  9207.     virtual void setWindowTitle(( string newTitle )) {}
  9208.     /*! @brief Gets the current screen mode as a string.
  9209.  
  9210. The return string will contain 5 values (width, height, fullscreen, bitdepth, refreshRate). You will need to parse out each one for individual use.
  9211.  
  9212. @tsexample
  9213. %screenWidth = getWord(Canvas.getVideoMode(), 0);
  9214. %screenHeight = getWord(Canvas.getVideoMode(), 1);
  9215. %isFullscreen = getWord(Canvas.getVideoMode(), 2);
  9216. %bitdepth = getWord(Canvas.getVideoMode(), 3);
  9217. %refreshRate = getWord(Canvas.getVideoMode(), 4);
  9218. @endtsexample
  9219.  
  9220. @return String formatted with screen width, screen height, screen mode, bit depth, and refresh rate. */
  9221.     virtual string getVideoMode(()) {}
  9222.     /*! @brief Gets the number of modes available on this device.
  9223.  
  9224. @param param Description
  9225.  
  9226. @tsexample
  9227. %modeCount = Canvas.getModeCount()
  9228. @endtsexample
  9229.  
  9230. @return The number of video modes supported by the device */
  9231.     virtual int getModeCount(()) {}
  9232.     /*! @brief Gets information on the specified mode of this device.
  9233.  
  9234. @param modeId Index of the mode to get data from.
  9235. @return A video mode string given an adapter and mode index.
  9236.  
  9237. @see GuiCanvas::getVideoMode() */
  9238.     virtual string getMode(( int modeId )) {}
  9239.     /*! @brief toggle canvas from fullscreen to windowed mode or back.
  9240.  
  9241. @tsexample
  9242. // If we are in windowed mode, the following will put is in fullscreen
  9243. Canvas.toggleFullscreen();@endtsexample
  9244.  
  9245.  */
  9246.     virtual void toggleFullscreen(()) {}
  9247.     /*! Translate a coordinate from canvas window-space to screen-space.
  9248. @param coordinate The coordinate in window-space.
  9249. @return The given coordinate translated to screen-space. */
  9250.     virtual string clientToScreen(( Point2I coordinate )) {}
  9251.     /*! Translate a coordinate from screen-space to canvas window-space.
  9252. @param coordinate The coordinate in screen-space.
  9253. @return The given coordinate translated to window-space. */
  9254.     virtual string screenToClient(( Point2I coordinate )) {}
  9255.     /*! Get the current position of the platform window associated with the canvas.
  9256. @return The window position of the canvas in screen-space. */
  9257.     virtual string getWindowPosition(()) {}
  9258.     /*! Set the position of the platform window associated with the canvas.
  9259. @param position The new position of the window in screen-space. */
  9260.     virtual void setWindowPosition(( Point2I position )) {}
  9261.     /*! Is this canvas currently fullscreen? */
  9262.     virtual bool isFullscreen(()) {}
  9263.     /*! minimize this canvas' window. */
  9264.     virtual void minimizeWindow(()) {}
  9265.     virtual bool isMinimized(()) {}
  9266.     virtual bool isMaximized(()) {}
  9267.     /*! maximize this canvas' window. */
  9268.     virtual void maximizeWindow(()) {}
  9269.     /*! restore this canvas' window. */
  9270.     virtual void restoreWindow(()) {}
  9271.     /*! Claim OS input focus for this canvas' window. */
  9272.     virtual void setFocus(()) {}
  9273.     /*! Change the video mode of this canvas. This method has the side effect of setting the $pref::Video::mode to the new values.
  9274.  
  9275. \param width The screen width to set.
  9276. \param height The screen height to set.
  9277. \param fullscreen Specify true to run fullscreen or false to run in a window
  9278. \param bitDepth [optional] The desired bit-depth. Defaults to the current setting. This parameter is ignored if you are running in a window.
  9279. \param refreshRate [optional] The desired refresh rate. Defaults to the current setting. This parameter is ignored if you are running in a window\param antialiasLevel [optional] The level of anti-aliasing to apply 0 = none */
  9280.     virtual void setVideoMode((int width, int height, bool fullscreen, [int bitDepth], [int refreshRate], [int antialiasLevel] )) {}
  9281.     virtual void resetVideoMode(()) {}
  9282.  
  9283.     /*! @name Mouse Handling
  9284.     @{ */
  9285.     /*! */
  9286.     /*!
  9287.     Deal with mouse buttons, even if the cursor is hidden.
  9288.    
  9289.      */
  9290.     bool alwaysHandleMouseButtons;
  9291.     /// @}
  9292.  
  9293.  
  9294.     /*! @name Canvas Rendering
  9295.     @{ */
  9296.     /*! */
  9297.     /*!
  9298.     The number of GFX fences to use.
  9299.    
  9300.      */
  9301.     int numFences;
  9302.     /// @}
  9303.  
  9304.  
  9305.     /*! @name Layout
  9306.     @{ */
  9307.     /*! */
  9308.     /// @}
  9309.  
  9310.  
  9311.     /*! @name Control
  9312.     @{ */
  9313.     /*! */
  9314.     /// @}
  9315.  
  9316.  
  9317.     /*! @name ToolTip
  9318.     @{ */
  9319.     /*! */
  9320.     /// @}
  9321.  
  9322.  
  9323.     /*! @name Editing
  9324.     @{ */
  9325.     /*! */
  9326.     /// @}
  9327.  
  9328.  
  9329.     /*! @name Localization
  9330.     @{ */
  9331.     /*! */
  9332.     /// @}
  9333.  
  9334.  
  9335.     /*! @name Ungrouped
  9336.     @{ */
  9337.     /*! */
  9338.     /// @}
  9339.  
  9340.  
  9341.     /*! @name Object
  9342.     @{ */
  9343.     /*! */
  9344.     /// @}
  9345.  
  9346.  
  9347.     /*! @name Editing
  9348.     @{ */
  9349.     /*! */
  9350.     /// @}
  9351.  
  9352.  
  9353.     /*! @name Persistence
  9354.     @{ */
  9355.     /*! */
  9356.     /// @}
  9357.  
  9358.  };
  9359.  
  9360.  /// Stub class
  9361.  ///
  9362.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9363.  ///       information was available for this class.
  9364.  class  Canvas : public GuiCanvas {
  9365.    public:
  9366.  };
  9367.  
  9368.  /// Stub class
  9369.  ///
  9370.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9371.  ///       information was available for this class.
  9372.  class  AudioAmbienceDefault : public SFXAmbience {
  9373.    public:
  9374.  };
  9375.  
  9376.  /// Stub class
  9377.  ///
  9378.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9379.  ///       information was available for this class.
  9380.  class  AudioMusicLoop3D : public SFXDescription {
  9381.    public:
  9382.  };
  9383.  
  9384.  /// Stub class
  9385.  ///
  9386.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9387.  ///       information was available for this class.
  9388.  class  AudioMusic3D : public SFXDescription {
  9389.    public:
  9390.  };
  9391.  
  9392.  /// Stub class
  9393.  ///
  9394.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9395.  ///       information was available for this class.
  9396.  class  AudioMusicLoop2D : public SFXDescription {
  9397.    public:
  9398.  };
  9399.  
  9400.  /// Stub class
  9401.  ///
  9402.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9403.  ///       information was available for this class.
  9404.  class  AudioMusic2D : public SFXDescription {
  9405.    public:
  9406.  };
  9407.  
  9408.  /// Stub class
  9409.  ///
  9410.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9411.  ///       information was available for this class.
  9412.  class  AudioStreamLoop2D : public SFXDescription {
  9413.    public:
  9414.  };
  9415.  
  9416.  /// Stub class
  9417.  ///
  9418.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9419.  ///       information was available for this class.
  9420.  class  AudioStream2D : public SFXDescription {
  9421.    public:
  9422.  };
  9423.  
  9424.  /// Stub class
  9425.  ///
  9426.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9427.  ///       information was available for this class.
  9428.  class  AudioLoop2D : public SFXDescription {
  9429.    public:
  9430.  };
  9431.  
  9432.  /// Stub class
  9433.  ///
  9434.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9435.  ///       information was available for this class.
  9436.  class  Audio2D : public SFXDescription {
  9437.    public:
  9438.  };
  9439.  
  9440.  /// Stub class
  9441.  ///
  9442.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9443.  ///       information was available for this class.
  9444.  class  AudioClosestLoop3D : public SFXDescription {
  9445.    public:
  9446.  };
  9447.  
  9448.  /// Stub class
  9449.  ///
  9450.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9451.  ///       information was available for this class.
  9452.  class  AudioCloseLoop3D : public SFXDescription {
  9453.    public:
  9454.  };
  9455.  
  9456.  /// Stub class
  9457.  ///
  9458.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9459.  ///       information was available for this class.
  9460.  class  AudioNearLoop3D : public SFXDescription {
  9461.    public:
  9462.  };
  9463.  
  9464.  /// Stub class
  9465.  ///
  9466.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9467.  ///       information was available for this class.
  9468.  class  AudioMediumLoop3D : public SFXDescription {
  9469.    public:
  9470.  };
  9471.  
  9472.  /// Stub class
  9473.  ///
  9474.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9475.  ///       information was available for this class.
  9476.  class  AudioOutlyingLoop3D : public SFXDescription {
  9477.    public:
  9478.  };
  9479.  
  9480.  /// Stub class
  9481.  ///
  9482.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9483.  ///       information was available for this class.
  9484.  class  AudioFarLoop3D : public SFXDescription {
  9485.    public:
  9486.  };
  9487.  
  9488.  /// Stub class
  9489.  ///
  9490.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9491.  ///       information was available for this class.
  9492.  class  AudioDefaultLoop3D : public SFXDescription {
  9493.    public:
  9494.  };
  9495.  
  9496.  /// Stub class
  9497.  ///
  9498.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9499.  ///       information was available for this class.
  9500.  class  horse_sounds : public SFXDescription {
  9501.    public:
  9502.  };
  9503.  
  9504.  /// Stub class
  9505.  ///
  9506.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9507.  ///       information was available for this class.
  9508.  class  tree_sounds : public SFXDescription {
  9509.    public:
  9510.  };
  9511.  
  9512.  /// Stub class
  9513.  ///
  9514.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9515.  ///       information was available for this class.
  9516.  class  trespassers : public SFXDescription {
  9517.    public:
  9518.  };
  9519.  
  9520.  /// Stub class
  9521.  ///
  9522.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9523.  ///       information was available for this class.
  9524.  class  SteamVoiceChat : public SFXDescription {
  9525.    public:
  9526.  };
  9527.  
  9528.  /// Stub class
  9529.  ///
  9530.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9531.  ///       information was available for this class.
  9532.  class  buildings : public SFXDescription {
  9533.    public:
  9534.  };
  9535.  
  9536.  /// Stub class
  9537.  ///
  9538.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9539.  ///       information was available for this class.
  9540.  class  body_fall : public SFXDescription {
  9541.    public:
  9542.  };
  9543.  
  9544.  /// Stub class
  9545.  ///
  9546.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9547.  ///       information was available for this class.
  9548.  class  combat_bowxbow_fire : public SFXDescription {
  9549.    public:
  9550.  };
  9551.  
  9552.  /// Stub class
  9553.  ///
  9554.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9555.  ///       information was available for this class.
  9556.  class  combat_hit : public SFXDescription {
  9557.    public:
  9558.  };
  9559.  
  9560.  /// Stub class
  9561.  ///
  9562.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9563.  ///       information was available for this class.
  9564.  class  voice_close : public SFXDescription {
  9565.    public:
  9566.  };
  9567.  
  9568.  /// Stub class
  9569.  ///
  9570.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9571.  ///       information was available for this class.
  9572.  class  voice_death : public SFXDescription {
  9573.    public:
  9574.  };
  9575.  
  9576.  /// Stub class
  9577.  ///
  9578.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9579.  ///       information was available for this class.
  9580.  class  heavy_breathing : public SFXDescription {
  9581.    public:
  9582.  };
  9583.  
  9584.  /// Stub class
  9585.  ///
  9586.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9587.  ///       information was available for this class.
  9588.  class  player_footsteps : public SFXDescription {
  9589.    public:
  9590.  };
  9591.  
  9592.  /// Stub class
  9593.  ///
  9594.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9595.  ///       information was available for this class.
  9596.  class  battle_orders : public SFXDescription {
  9597.    public:
  9598.  };
  9599.  
  9600.  /// Stub class
  9601.  ///
  9602.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9603.  ///       information was available for this class.
  9604.  class  AudioClosest3D : public SFXDescription {
  9605.    public:
  9606.  };
  9607.  
  9608.  /// Stub class
  9609.  ///
  9610.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9611.  ///       information was available for this class.
  9612.  class  AudioWater3D : public SFXDescription {
  9613.    public:
  9614.  };
  9615.  
  9616.  /// Stub class
  9617.  ///
  9618.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9619.  ///       information was available for this class.
  9620.  class  AudioClose3D : public SFXDescription {
  9621.    public:
  9622.  };
  9623.  
  9624.  /// Stub class
  9625.  ///
  9626.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9627.  ///       information was available for this class.
  9628.  class  AudioSoft3D : public SFXDescription {
  9629.    public:
  9630.  };
  9631.  
  9632.  /// Stub class
  9633.  ///
  9634.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9635.  ///       information was available for this class.
  9636.  class  AudioDefault3D : public SFXDescription {
  9637.    public:
  9638.  };
  9639.  
  9640.  /*!
  9641.  @brief Description of a reverb environment.
  9642.  
  9643.  A reverb environment specifies how the audio mixer should render advanced environmental audio effects.  
  9644.  
  9645.  To use reverb environments in your level, set up one or more ambient audio spaces, assign reverb environments appropriately, and then attach the SFXAmbiences to your LevelInfo (taking effect globally) or Zone objects (taking effect locally).
  9646.  
  9647.  To define your own custom reverb environments, it is usually easiest to adapt one of the pre-existing reverb definitions:
  9648.  @tsexample_nopar
  9649.  singleton SFXEnvironment( AudioEnvCustomUnderwater : AudioEnvUnderwater )
  9650.  {
  9651.     // Override select properties from AudioEnvUnderwater here.
  9652.  };
  9653.  @endtsexample
  9654.  
  9655.  In the Datablock Editor, this can be done by selecting an existing environment to copy from when creating the SFXEnvironment datablock.
  9656.  
  9657.  For a precise description of reverb audio and the properties of this class, please consult the EAX documentation.
  9658.  
  9659.  All SFXEnvironment instances are automatically added to the global @c SFXEnvironmentSet.
  9660.  
  9661.  @see http://www.atc.creative.com/algorithms/eax20.pdf
  9662.  @see http://connect.creativelabs.com/developer/Gaming/Forms/AllItems.aspx
  9663.  @see SFXAmbience::environment
  9664.  
  9665.  @ref SFX_reverb
  9666.  @ingroup SFX
  9667.   */
  9668.  class  SFXEnvironment : public SimDataBlock {
  9669.    public:
  9670.  
  9671.     /*! @name Reverb
  9672.     @{ */
  9673.     /*! */
  9674.     /*!
  9675.     Environment size in meters.
  9676.    
  9677.      */
  9678.     float envSize;
  9679.     /*!
  9680.     Environment diffusion.
  9681.    
  9682.      */
  9683.     float envDiffusion;
  9684.     /*!
  9685.     Room effect level at mid-frequencies.
  9686.    
  9687.      */
  9688.     int room;
  9689.     /*!
  9690.     Relative room effect level at high frequencies.
  9691.    
  9692.      */
  9693.     int roomHF;
  9694.     /*!
  9695.     Relative room effect level at low frequencies.
  9696.    
  9697.      */
  9698.     int roomLF;
  9699.     /*!
  9700.     Reverberation decay time at mid frequencies.
  9701.    
  9702.      */
  9703.     float decayTime;
  9704.     /*!
  9705.     High-frequency to mid-frequency decay time ratio.
  9706.    
  9707.      */
  9708.     float decayHFRatio;
  9709.     /*!
  9710.     Low-frequency to mid-frequency decay time ratio.
  9711.    
  9712.      */
  9713.     float decayLFRatio;
  9714.     /*!
  9715.     Early reflections level relative to room effect.
  9716.    
  9717.      */
  9718.     int reflections;
  9719.     /*!
  9720.     Initial reflection delay time.
  9721.    
  9722.      */
  9723.     float reflectionsDelay;
  9724.     /*!
  9725.     Early reflections panning vector.
  9726.    
  9727.      */
  9728.     float reflectionsPan;
  9729.     /*!
  9730.     Late reverberation level relative to room effect.
  9731.    
  9732.      */
  9733.     int reverb;
  9734.     /*!
  9735.     Late reverberation delay time relative to initial reflection.
  9736.    
  9737.      */
  9738.     float reverbDelay;
  9739.     /*!
  9740.     Late reverberation panning vector.
  9741.    
  9742.      */
  9743.     float reverbPan;
  9744.     /*!
  9745.     Echo time.
  9746.    
  9747.      */
  9748.     float echoTime;
  9749.     /*!
  9750.     Echo depth.
  9751.    
  9752.      */
  9753.     float echoDepth;
  9754.     /*!
  9755.     Modulation time.
  9756.    
  9757.      */
  9758.     float modulationTime;
  9759.     /*!
  9760.     Modulation depth.
  9761.    
  9762.      */
  9763.     float modulationDepth;
  9764.     /*!
  9765.     Change in level per meter at high frequencies.
  9766.    
  9767.      */
  9768.     float airAbsorptionHF;
  9769.     /*!
  9770.     Reference high frequency in Hertz.
  9771.    
  9772.      */
  9773.     float HFReference;
  9774.     /*!
  9775.     Reference low frequency in Hertz.
  9776.    
  9777.      */
  9778.     float LFReference;
  9779.     /*!
  9780.     Logarithmic distance attenuation rolloff scale factor for reverb room size effect.
  9781.    
  9782.      */
  9783.     float roomRolloffFactor;
  9784.     /*!
  9785.     Value that controls the echo density in the late reverberation decay.
  9786.    
  9787.      */
  9788.     float diffusion;
  9789.     /*!
  9790.     Value that controls the modal density in the late reverberation decay.
  9791.    
  9792.      */
  9793.     float density;
  9794.     /*!
  9795.     A bitfield of reverb flags.
  9796. @see REVERB_DECAYTIMESCALE
  9797. @see REVERB_REFLECTIONSSCALE
  9798. @see REVERB_REFLECTIONSDELAYSCALE
  9799. @see REVERB_REVERBSCALE
  9800. @see REVERB_REVERBDELAYSCALE
  9801. @see REVERB_DECAYHFLIMIT
  9802. @see REVERB_ECHOTIMESCALE
  9803. @see REVERB_MODULATIONTIMESCALE
  9804. @see REVERB_CORE0
  9805. @see REVERB_CORE1
  9806. @see REVERB_HIGHQUALITYREVERB
  9807. @see REVERB_HIGHQUALITYDPL2REVERB
  9808.  
  9809.    
  9810.      */
  9811.     int flags;
  9812.     /// @}
  9813.  
  9814.  
  9815.     /*! @name Ungrouped
  9816.     @{ */
  9817.     /*! */
  9818.     /// @}
  9819.  
  9820.  
  9821.     /*! @name Object
  9822.     @{ */
  9823.     /*! */
  9824.     /// @}
  9825.  
  9826.  
  9827.     /*! @name Editing
  9828.     @{ */
  9829.     /*! */
  9830.     /// @}
  9831.  
  9832.  
  9833.     /*! @name Persistence
  9834.     @{ */
  9835.     /*! */
  9836.     /// @}
  9837.  
  9838.  };
  9839.  
  9840.  /// Stub class
  9841.  ///
  9842.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9843.  ///       information was available for this class.
  9844.  class  AudioEnvPlain : public SFXEnvironment {
  9845.    public:
  9846.  };
  9847.  
  9848.  /// Stub class
  9849.  ///
  9850.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9851.  ///       information was available for this class.
  9852.  class  AudioEnvOff : public SFXEnvironment {
  9853.    public:
  9854.  };
  9855.  
  9856.  /*!
  9857.  @brief Acts as a skin for the cursor, where each GuiCursor object can have its own look and click-zone.
  9858.  
  9859.  GuiCursors act as skins for the cursor in the game, where each individual GuiCursor can have its own defined imagemap,
  9860.  click zone and render offset. This allows a game to easily support a wide range of cursors. The active cursor can de changed
  9861.  for each Canvas using %canvasObj.setCursor(GuiCursor);.@tsexample
  9862.  new GuiCursor(DefaultCursor)
  9863.  {
  9864.     hotSpot = "1 1";
  9865.     renderOffset = "0 0";
  9866.     bitmapName = "~/art/gui/images/defaultCursor";
  9867.  };
  9868.  @endtsexample
  9869.  
  9870.  @see GuiCanvas
  9871.  
  9872.  @ingroup GuiCore
  9873.   */
  9874.  class  GuiCursor : public SimObject {
  9875.    public:
  9876.     /*!
  9877.     The location of the cursor's hot spot (which pixel carries the click).
  9878.    
  9879.      */
  9880.     Point2I hotSpot;
  9881.     /*!
  9882.     Offset of the bitmap, where 0 signifies left edge of the bitmap, 1, the right. Similarly for the Y-component.
  9883.    
  9884.      */
  9885.     Point2F renderOffset;
  9886.     /*!
  9887.     File name of the bitmap for the cursor.
  9888.    
  9889.      */
  9890.     filename bitmapName;
  9891.  
  9892.     /*! @name Ungrouped
  9893.     @{ */
  9894.     /*! */
  9895.     /// @}
  9896.  
  9897.  
  9898.     /*! @name Object
  9899.     @{ */
  9900.     /*! */
  9901.     /// @}
  9902.  
  9903.  
  9904.     /*! @name Editing
  9905.     @{ */
  9906.     /*! */
  9907.     /// @}
  9908.  
  9909.  
  9910.     /*! @name Persistence
  9911.     @{ */
  9912.     /*! */
  9913.     /// @}
  9914.  
  9915.  };
  9916.  
  9917.  /// Stub class
  9918.  ///
  9919.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9920.  ///       information was available for this class.
  9921.  class  DefaultCursor : public GuiCursor {
  9922.    public:
  9923.  };
  9924.  
  9925.  /// Stub class
  9926.  ///
  9927.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9928.  ///       information was available for this class.
  9929.  class  MsgBoxTextEditProfile : public GuiControlProfile {
  9930.    public:
  9931.  };
  9932.  
  9933.  /// Stub class
  9934.  ///
  9935.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9936.  ///       information was available for this class.
  9937.  class  MsgBoxPasswordProfile : public GuiControlProfile {
  9938.    public:
  9939.  };
  9940.  
  9941.  /// Stub class
  9942.  ///
  9943.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9944.  ///       information was available for this class.
  9945.  class  MsgBoxCheckBoxProfile : public GuiControlProfile {
  9946.    public:
  9947.  };
  9948.  
  9949.  /// Stub class
  9950.  ///
  9951.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9952.  ///       information was available for this class.
  9953.  class  MsgBoxMLTextProfile : public GuiControlProfile {
  9954.    public:
  9955.  };
  9956.  
  9957.  /// Stub class
  9958.  ///
  9959.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9960.  ///       information was available for this class.
  9961.  class  MsgBoxButtonProfile : public GuiControlProfile {
  9962.    public:
  9963.  };
  9964.  
  9965.  /// Stub class
  9966.  ///
  9967.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9968.  ///       information was available for this class.
  9969.  class  CharButtonProfileDisabled : public GuiControlProfile {
  9970.    public:
  9971.  };
  9972.  
  9973.  /// Stub class
  9974.  ///
  9975.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9976.  ///       information was available for this class.
  9977.  class  CharButtonProfile : public GuiControlProfile {
  9978.    public:
  9979.  };
  9980.  
  9981.  /// Stub class
  9982.  ///
  9983.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9984.  ///       information was available for this class.
  9985.  class  CmGuiCheckBoxProfile : public GuiControlProfile {
  9986.    public:
  9987.  };
  9988.  
  9989.  /// Stub class
  9990.  ///
  9991.  /// @note This is a stub class to ensure a proper class hierarchy. No
  9992.  ///       information was available for this class.
  9993.  class  ProspectingRadiusDialogProfile : public GuiControlProfile {
  9994.    public:
  9995.  };
  9996.  
  9997.  /// Stub class
  9998.  ///
  9999.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10000.  ///       information was available for this class.
  10001.  class  TargetBarTextTitleProfile : public GuiControlProfile {
  10002.    public:
  10003.  };
  10004.  
  10005.  /// Stub class
  10006.  ///
  10007.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10008.  ///       information was available for this class.
  10009.  class  TargetBarTextNameProfile : public GuiControlProfile {
  10010.    public:
  10011.  };
  10012.  
  10013.  /// Stub class
  10014.  ///
  10015.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10016.  ///       information was available for this class.
  10017.  class  TargetBarTextProfile : public GuiControlProfile {
  10018.    public:
  10019.  };
  10020.  
  10021.  /// Stub class
  10022.  ///
  10023.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10024.  ///       information was available for this class.
  10025.  class  GuiSmelterButtonProfile : public GuiControlProfile {
  10026.    public:
  10027.  };
  10028.  
  10029.  /// Stub class
  10030.  ///
  10031.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10032.  ///       information was available for this class.
  10033.  class  GuiCraftButtonProfile : public GuiControlProfile {
  10034.    public:
  10035.  };
  10036.  
  10037.  /// Stub class
  10038.  ///
  10039.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10040.  ///       information was available for this class.
  10041.  class  GuiSplitStackItemProfile : public GuiControlProfile {
  10042.    public:
  10043.  };
  10044.  
  10045.  /// Stub class
  10046.  ///
  10047.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10048.  ///       information was available for this class.
  10049.  class  GuiInventoryContainerProfile : public GuiControlProfile {
  10050.    public:
  10051.  };
  10052.  
  10053.  /// Stub class
  10054.  ///
  10055.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10056.  ///       information was available for this class.
  10057.  class  GuiEquipButtonProfile : public GuiControlProfile {
  10058.    public:
  10059.  };
  10060.  
  10061.  /// Stub class
  10062.  ///
  10063.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10064.  ///       information was available for this class.
  10065.  class  GuiCurMaxEquipWeightTextProfile : public GuiControlProfile {
  10066.    public:
  10067.  };
  10068.  
  10069.  /// Stub class
  10070.  ///
  10071.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10072.  ///       information was available for this class.
  10073.  class  GuiGrayVLineProfile : public GuiControlProfile {
  10074.    public:
  10075.  };
  10076.  
  10077.  /// Stub class
  10078.  ///
  10079.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10080.  ///       information was available for this class.
  10081.  class  GuiGrayHLineProfile : public GuiControlProfile {
  10082.    public:
  10083.  };
  10084.  
  10085.  /// Stub class
  10086.  ///
  10087.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10088.  ///       information was available for this class.
  10089.  class  GuiHLineProfile : public GuiControlProfile {
  10090.    public:
  10091.  };
  10092.  
  10093.  /// Stub class
  10094.  ///
  10095.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10096.  ///       information was available for this class.
  10097.  class  GuiSkillVLineProfile : public GuiControlProfile {
  10098.    public:
  10099.  };
  10100.  
  10101.  /// Stub class
  10102.  ///
  10103.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10104.  ///       information was available for this class.
  10105.  class  GuiCmSkillScrollProfile : public GuiControlProfile {
  10106.    public:
  10107.  };
  10108.  
  10109.  /// Stub class
  10110.  ///
  10111.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10112.  ///       information was available for this class.
  10113.  class  GuiSkillDescProfile : public GuiControlProfile {
  10114.    public:
  10115.  };
  10116.  
  10117.  /// Stub class
  10118.  ///
  10119.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10120.  ///       information was available for this class.
  10121.  class  GuiSkillStatInfoProfile : public GuiControlProfile {
  10122.    public:
  10123.  };
  10124.  
  10125.  /// Stub class
  10126.  ///
  10127.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10128.  ///       information was available for this class.
  10129.  class  GuiPrevSkillButtonProfile : public GuiControlProfile {
  10130.    public:
  10131.  };
  10132.  
  10133.  /// Stub class
  10134.  ///
  10135.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10136.  ///       information was available for this class.
  10137.  class  GuiNextSkillButtonProfile : public GuiControlProfile {
  10138.    public:
  10139.  };
  10140.  
  10141.  /// Stub class
  10142.  ///
  10143.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10144.  ///       information was available for this class.
  10145.  class  GuiDefaultButtonProfile : public GuiControlProfile {
  10146.    public:
  10147.  };
  10148.  
  10149.  /// Stub class
  10150.  ///
  10151.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10152.  ///       information was available for this class.
  10153.  class  GuiSkillTabPageProfile : public GuiControlProfile {
  10154.    public:
  10155.  };
  10156.  
  10157.  /// Stub class
  10158.  ///
  10159.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10160.  ///       information was available for this class.
  10161.  class  GuiSkillTabBookProfile : public GuiControlProfile {
  10162.    public:
  10163.  };
  10164.  
  10165.  /// Stub class
  10166.  ///
  10167.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10168.  ///       information was available for this class.
  10169.  class  GuiSkillInfoProfile : public GuiControlProfile {
  10170.    public:
  10171.  };
  10172.  
  10173.  /// Stub class
  10174.  ///
  10175.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10176.  ///       information was available for this class.
  10177.  class  GuiCurMaxSkillTextProfile : public GuiControlProfile {
  10178.    public:
  10179.  };
  10180.  
  10181.  /// Stub class
  10182.  ///
  10183.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10184.  ///       information was available for this class.
  10185.  class  GuiSkillItemProfile : public GuiControlProfile {
  10186.    public:
  10187.  };
  10188.  
  10189.  /// Stub class
  10190.  ///
  10191.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10192.  ///       information was available for this class.
  10193.  class  GuiCmSplitContainer : public GuiControlProfile {
  10194.    public:
  10195.  };
  10196.  
  10197.  /// Stub class
  10198.  ///
  10199.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10200.  ///       information was available for this class.
  10201.  class  GuiCmChatWindowListBoxProfile : public GuiControlProfile {
  10202.    public:
  10203.  };
  10204.  
  10205.  /// Stub class
  10206.  ///
  10207.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10208.  ///       information was available for this class.
  10209.  class  GuiCmChatWindowTransPanelProfile : public GuiControlProfile {
  10210.    public:
  10211.  };
  10212.  
  10213.  /// Stub class
  10214.  ///
  10215.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10216.  ///       information was available for this class.
  10217.  class  GuiCmChatWindowPanelProfile : public GuiControlProfile {
  10218.    public:
  10219.  };
  10220.  
  10221.  /// Stub class
  10222.  ///
  10223.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10224.  ///       information was available for this class.
  10225.  class  GuiCmChatWindowScrollProfile : public GuiControlProfile {
  10226.    public:
  10227.  };
  10228.  
  10229.  /// Stub class
  10230.  ///
  10231.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10232.  ///       information was available for this class.
  10233.  class  CenterPrintTextProfile : public GuiControlProfile {
  10234.    public:
  10235.  };
  10236.  
  10237.  /// Stub class
  10238.  ///
  10239.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10240.  ///       information was available for this class.
  10241.  class  CenterPrintProfile : public GuiControlProfile {
  10242.    public:
  10243.  };
  10244.  
  10245.  /// Stub class
  10246.  ///
  10247.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10248.  ///       information was available for this class.
  10249.  class  GuiModalDialogBackgroundProfile : public GuiControlProfile {
  10250.    public:
  10251.  };
  10252.  
  10253.  /// Stub class
  10254.  ///
  10255.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10256.  ///       information was available for this class.
  10257.  class  GuiMultiFieldTextEditProfile : public GuiControlProfile {
  10258.    public:
  10259.  };
  10260.  
  10261.  /// Stub class
  10262.  ///
  10263.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10264.  ///       information was available for this class.
  10265.  class  GuiNumericTextEditSliderBitmapProfile : public GuiControlProfile {
  10266.    public:
  10267.  };
  10268.  
  10269.  /// Stub class
  10270.  ///
  10271.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10272.  ///       information was available for this class.
  10273.  class  GuiNumericTextEditSliderProfile : public GuiControlProfile {
  10274.    public:
  10275.  };
  10276.  
  10277.  /// Stub class
  10278.  ///
  10279.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10280.  ///       information was available for this class.
  10281.  class  GuiFormProfile : public GuiControlProfile {
  10282.    public:
  10283.  };
  10284.  
  10285.  /// Stub class
  10286.  ///
  10287.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10288.  ///       information was available for this class.
  10289.  class  GuiTransparentProfileModeless : public GuiControlProfile {
  10290.    public:
  10291.  };
  10292.  
  10293.  /// Stub class
  10294.  ///
  10295.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10296.  ///       information was available for this class.
  10297.  class  GuiTextPadProfile : public GuiControlProfile {
  10298.    public:
  10299.  };
  10300.  
  10301.  /// Stub class
  10302.  ///
  10303.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10304.  ///       information was available for this class.
  10305.  class  ConsoleTextEditProfile : public GuiControlProfile {
  10306.    public:
  10307.  };
  10308.  
  10309.  /// Stub class
  10310.  ///
  10311.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10312.  ///       information was available for this class.
  10313.  class  ConsoleScrollProfile : public GuiControlProfile {
  10314.    public:
  10315.  };
  10316.  
  10317.  /// Stub class
  10318.  ///
  10319.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10320.  ///       information was available for this class.
  10321.  class  GuiRSSFeedMLTextProfile : public GuiControlProfile {
  10322.    public:
  10323.  };
  10324.  
  10325.  /// Stub class
  10326.  ///
  10327.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10328.  ///       information was available for this class.
  10329.  class  GuiTextPlayersCountACProfile : public GuiControlProfile {
  10330.    public:
  10331.  };
  10332.  
  10333.  /// Stub class
  10334.  ///
  10335.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10336.  ///       information was available for this class.
  10337.  class  GuiTextPlayersACProfile : public GuiControlProfile {
  10338.    public:
  10339.  };
  10340.  
  10341.  /// Stub class
  10342.  ///
  10343.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10344.  ///       information was available for this class.
  10345.  class  AC_ScrollProfile : public GuiControlProfile {
  10346.    public:
  10347.  };
  10348.  
  10349.  /// Stub class
  10350.  ///
  10351.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10352.  ///       information was available for this class.
  10353.  class  GuiText24Profile : public GuiControlProfile {
  10354.    public:
  10355.  };
  10356.  
  10357.  /// Stub class
  10358.  ///
  10359.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10360.  ///       information was available for this class.
  10361.  class  GuiSimpleTreeProfile : public GuiControlProfile {
  10362.    public:
  10363.  };
  10364.  
  10365.  /// Stub class
  10366.  ///
  10367.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10368.  ///       information was available for this class.
  10369.  class  GuiTreeViewProfile : public GuiControlProfile {
  10370.    public:
  10371.  };
  10372.  
  10373.  /// Stub class
  10374.  ///
  10375.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10376.  ///       information was available for this class.
  10377.  class  GuiConsoleTextProfile : public GuiControlProfile {
  10378.    public:
  10379.  };
  10380.  
  10381.  /// Stub class
  10382.  ///
  10383.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10384.  ///       information was available for this class.
  10385.  class  GuiConsoleTextEditProfile : public GuiControlProfile {
  10386.    public:
  10387.  };
  10388.  
  10389.  /// Stub class
  10390.  ///
  10391.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10392.  ///       information was available for this class.
  10393.  class  GuiConsoleProfile : public GuiControlProfile {
  10394.    public:
  10395.  };
  10396.  
  10397.  /// Stub class
  10398.  ///
  10399.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10400.  ///       information was available for this class.
  10401.  class  GuiMenuBarProfile : public GuiControlProfile {
  10402.    public:
  10403.  };
  10404.  
  10405.  /// Stub class
  10406.  ///
  10407.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10408.  ///       information was available for this class.
  10409.  class  GuiTabPageProfile : public GuiControlProfile {
  10410.    public:
  10411.  };
  10412.  
  10413.  /// Stub class
  10414.  ///
  10415.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10416.  ///       information was available for this class.
  10417.  class  GuiTabBookNoBitmapProfile : public GuiControlProfile {
  10418.    public:
  10419.  };
  10420.  
  10421.  /// Stub class
  10422.  ///
  10423.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10424.  ///       information was available for this class.
  10425.  class  GuiTabBookProfile : public GuiControlProfile {
  10426.    public:
  10427.  };
  10428.  
  10429.  /// Stub class
  10430.  ///
  10431.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10432.  ///       information was available for this class.
  10433.  class  GuiListBoxProfile : public GuiControlProfile {
  10434.    public:
  10435.  };
  10436.  
  10437.  /// Stub class
  10438.  ///
  10439.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10440.  ///       information was available for this class.
  10441.  class  GuiPopUpMenuEditProfile : public GuiControlProfile {
  10442.    public:
  10443.  };
  10444.  
  10445.  /// Stub class
  10446.  ///
  10447.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10448.  ///       information was available for this class.
  10449.  class  GuiPopUpMenuTabProfile : public GuiControlProfile {
  10450.    public:
  10451.  };
  10452.  
  10453.  /// Stub class
  10454.  ///
  10455.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10456.  ///       information was available for this class.
  10457.  class  GuiPopUpMenuProfile : public GuiControlProfile {
  10458.    public:
  10459.  };
  10460.  
  10461.  /// Stub class
  10462.  ///
  10463.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10464.  ///       information was available for this class.
  10465.  class  GuiPopupBackgroundProfile : public GuiControlProfile {
  10466.    public:
  10467.  };
  10468.  
  10469.  /// Stub class
  10470.  ///
  10471.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10472.  ///       information was available for this class.
  10473.  class  GuiPopUpMenuDefault : public GuiControlProfile {
  10474.    public:
  10475.  };
  10476.  
  10477.  /// Stub class
  10478.  ///
  10479.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10480.  ///       information was available for this class.
  10481.  class  GuiPopupMenuItemBorder : public GuiControlProfile {
  10482.    public:
  10483.  };
  10484.  
  10485.  /// Stub class
  10486.  ///
  10487.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10488.  ///       information was available for this class.
  10489.  class  GuiPaneProfile : public GuiControlProfile {
  10490.    public:
  10491.  };
  10492.  
  10493.  /// Stub class
  10494.  ///
  10495.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10496.  ///       information was available for this class.
  10497.  class  GuiSliderBoxProfile : public GuiControlProfile {
  10498.    public:
  10499.  };
  10500.  
  10501.  /// Stub class
  10502.  ///
  10503.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10504.  ///       information was available for this class.
  10505.  class  GuiSliderProfile : public GuiControlProfile {
  10506.    public:
  10507.  };
  10508.  
  10509.  /// Stub class
  10510.  ///
  10511.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10512.  ///       information was available for this class.
  10513.  class  GuiTransparentScrollProfile : public GuiControlProfile {
  10514.    public:
  10515.  };
  10516.  
  10517.  /// Stub class
  10518.  ///
  10519.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10520.  ///       information was available for this class.
  10521.  class  GuiOverlayProfile : public GuiControlProfile {
  10522.    public:
  10523.  };
  10524.  
  10525.  /// Stub class
  10526.  ///
  10527.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10528.  ///       information was available for this class.
  10529.  class  GuiScrollProfile : public GuiControlProfile {
  10530.    public:
  10531.  };
  10532.  
  10533.  /// Stub class
  10534.  ///
  10535.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10536.  ///       information was available for this class.
  10537.  class  GuiRadioProfile : public GuiControlProfile {
  10538.    public:
  10539.  };
  10540.  
  10541.  /// Stub class
  10542.  ///
  10543.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10544.  ///       information was available for this class.
  10545.  class  InspectorCheckBoxTitleProfile : public GuiControlProfile {
  10546.    public:
  10547.  };
  10548.  
  10549.  /// Stub class
  10550.  ///
  10551.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10552.  ///       information was available for this class.
  10553.  class  GuiCheckBoxListFlipedProfile : public GuiControlProfile {
  10554.    public:
  10555.  };
  10556.  
  10557.  /// Stub class
  10558.  ///
  10559.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10560.  ///       information was available for this class.
  10561.  class  GuiCheckBoxListProfile : public GuiControlProfile {
  10562.    public:
  10563.  };
  10564.  
  10565.  /// Stub class
  10566.  ///
  10567.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10568.  ///       information was available for this class.
  10569.  class  GuiCheckBoxProfile : public GuiControlProfile {
  10570.    public:
  10571.  };
  10572.  
  10573.  /// Stub class
  10574.  ///
  10575.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10576.  ///       information was available for this class.
  10577.  class  EditorTabPage : public GuiControlProfile {
  10578.    public:
  10579.  };
  10580.  
  10581.  /// Stub class
  10582.  ///
  10583.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10584.  ///       information was available for this class.
  10585.  class  GuiButtonTabProfile : public GuiControlProfile {
  10586.    public:
  10587.  };
  10588.  
  10589.  /// Stub class
  10590.  ///
  10591.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10592.  ///       information was available for this class.
  10593.  class  GuiIconButtonSmallProfile : public GuiControlProfile {
  10594.    public:
  10595.  };
  10596.  
  10597.  /// Stub class
  10598.  ///
  10599.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10600.  ///       information was available for this class.
  10601.  class  GuiIconButtonSolidProfile : public GuiControlProfile {
  10602.    public:
  10603.  };
  10604.  
  10605.  /// Stub class
  10606.  ///
  10607.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10608.  ///       information was available for this class.
  10609.  class  GuiIconButtonProfile : public GuiControlProfile {
  10610.    public:
  10611.  };
  10612.  
  10613.  /// Stub class
  10614.  ///
  10615.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10616.  ///       information was available for this class.
  10617.  class  GuiMenuButtonProfile : public GuiControlProfile {
  10618.    public:
  10619.  };
  10620.  
  10621.  /// Stub class
  10622.  ///
  10623.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10624.  ///       information was available for this class.
  10625.  class  InspectorDynamicFieldButton : public GuiControlProfile {
  10626.    public:
  10627.  };
  10628.  
  10629.  /// Stub class
  10630.  ///
  10631.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10632.  ///       information was available for this class.
  10633.  class  GuiThumbHighlightButtonProfile : public GuiControlProfile {
  10634.    public:
  10635.  };
  10636.  
  10637.  /// Stub class
  10638.  ///
  10639.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10640.  ///       information was available for this class.
  10641.  class  GuiButtonProfile : public GuiControlProfile {
  10642.    public:
  10643.  };
  10644.  
  10645.  /// Stub class
  10646.  ///
  10647.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10648.  ///       information was available for this class.
  10649.  class  GuiLoadingMLProfile : public GuiControlProfile {
  10650.    public:
  10651.  };
  10652.  
  10653.  /// Stub class
  10654.  ///
  10655.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10656.  ///       information was available for this class.
  10657.  class  GuiProgressTextProfile : public GuiControlProfile {
  10658.    public:
  10659.  };
  10660.  
  10661.  /// Stub class
  10662.  ///
  10663.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10664.  ///       information was available for this class.
  10665.  class  GuiRLProgressBitmapProfile : public GuiControlProfile {
  10666.    public:
  10667.  };
  10668.  
  10669.  /// Stub class
  10670.  ///
  10671.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10672.  ///       information was available for this class.
  10673.  class  GuiProgressBitmapProfile : public GuiControlProfile {
  10674.    public:
  10675.  };
  10676.  
  10677.  /// Stub class
  10678.  ///
  10679.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10680.  ///       information was available for this class.
  10681.  class  GuiProgressProfile : public GuiControlProfile {
  10682.    public:
  10683.  };
  10684.  
  10685.  /// Stub class
  10686.  ///
  10687.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10688.  ///       information was available for this class.
  10689.  class  GuiTextEditDropSliderNumbersOnly : public GuiControlProfile {
  10690.    public:
  10691.  };
  10692.  
  10693.  /// Stub class
  10694.  ///
  10695.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10696.  ///       information was available for this class.
  10697.  class  GuiNumericDropSliderTextProfile : public GuiControlProfile {
  10698.    public:
  10699.  };
  10700.  
  10701.  /// Stub class
  10702.  ///
  10703.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10704.  ///       information was available for this class.
  10705.  class  GuiTextEditNumericProfile : public GuiControlProfile {
  10706.    public:
  10707.  };
  10708.  
  10709.  /// Stub class
  10710.  ///
  10711.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10712.  ///       information was available for this class.
  10713.  class  GuiTextEditProfileNumbersOnly : public GuiControlProfile {
  10714.    public:
  10715.  };
  10716.  
  10717.  /// Stub class
  10718.  ///
  10719.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10720.  ///       information was available for this class.
  10721.  class  GuiTreeViewRenameCtrlProfile : public GuiControlProfile {
  10722.    public:
  10723.  };
  10724.  
  10725.  /// Stub class
  10726.  ///
  10727.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10728.  ///       information was available for this class.
  10729.  class  GuiTextEditProfile : public GuiControlProfile {
  10730.    public:
  10731.  };
  10732.  
  10733.  /// Stub class
  10734.  ///
  10735.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10736.  ///       information was available for this class.
  10737.  class  GuiTextListProfile : public GuiControlProfile {
  10738.    public:
  10739.  };
  10740.  
  10741.  /// Stub class
  10742.  ///
  10743.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10744.  ///       information was available for this class.
  10745.  class  GuiTextArrayProfile : public GuiControlProfile {
  10746.    public:
  10747.  };
  10748.  
  10749.  /// Stub class
  10750.  ///
  10751.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10752.  ///       information was available for this class.
  10753.  class  GuiSelectableProfile : public GuiControlProfile {
  10754.    public:
  10755.  };
  10756.  
  10757.  /// Stub class
  10758.  ///
  10759.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10760.  ///       information was available for this class.
  10761.  class  GuiMLTextWarningProfile : public GuiControlProfile {
  10762.    public:
  10763.  };
  10764.  
  10765.  /// Stub class
  10766.  ///
  10767.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10768.  ///       information was available for this class.
  10769.  class  GuiMLTextProfile : public GuiControlProfile {
  10770.    public:
  10771.  };
  10772.  
  10773.  /// Stub class
  10774.  ///
  10775.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10776.  ///       information was available for this class.
  10777.  class  GuiBigTextProfile : public GuiControlProfile {
  10778.    public:
  10779.  };
  10780.  
  10781.  /// Stub class
  10782.  ///
  10783.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10784.  ///       information was available for this class.
  10785.  class  GuiMediumTextProfile : public GuiControlProfile {
  10786.    public:
  10787.  };
  10788.  
  10789.  /// Stub class
  10790.  ///
  10791.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10792.  ///       information was available for this class.
  10793.  class  GuiAudioAutoSizeTextProfile : public GuiControlProfile {
  10794.    public:
  10795.  };
  10796.  
  10797.  /// Stub class
  10798.  ///
  10799.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10800.  ///       information was available for this class.
  10801.  class  GuiAutoSizeTextProfile : public GuiControlProfile {
  10802.    public:
  10803.  };
  10804.  
  10805.  /// Stub class
  10806.  ///
  10807.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10808.  ///       information was available for this class.
  10809.  class  GuiAuthorityTextSmall : public GuiControlProfile {
  10810.    public:
  10811.  };
  10812.  
  10813.  /// Stub class
  10814.  ///
  10815.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10816.  ///       information was available for this class.
  10817.  class  GuiAuthorityTextBig : public GuiControlProfile {
  10818.    public:
  10819.  };
  10820.  
  10821.  /// Stub class
  10822.  ///
  10823.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10824.  ///       information was available for this class.
  10825.  class  GuiTextProfileLight : public GuiControlProfile {
  10826.    public:
  10827.  };
  10828.  
  10829.  /// Stub class
  10830.  ///
  10831.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10832.  ///       information was available for this class.
  10833.  class  InspectorTitleTextProfile : public GuiControlProfile {
  10834.    public:
  10835.  };
  10836.  
  10837.  /// Stub class
  10838.  ///
  10839.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10840.  ///       information was available for this class.
  10841.  class  GuiTextSolidProfile : public GuiControlProfile {
  10842.    public:
  10843.  };
  10844.  
  10845.  /// Stub class
  10846.  ///
  10847.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10848.  ///       information was available for this class.
  10849.  class  GuiTextCenterProfile : public GuiControlProfile {
  10850.    public:
  10851.  };
  10852.  
  10853.  /// Stub class
  10854.  ///
  10855.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10856.  ///       information was available for this class.
  10857.  class  GuiTextRightProfile : public GuiControlProfile {
  10858.    public:
  10859.  };
  10860.  
  10861.  /// Stub class
  10862.  ///
  10863.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10864.  ///       information was available for this class.
  10865.  class  GuiTextBoldCenterProfile : public GuiControlProfile {
  10866.    public:
  10867.  };
  10868.  
  10869.  /// Stub class
  10870.  ///
  10871.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10872.  ///       information was available for this class.
  10873.  class  GuiTextBoldProfile : public GuiControlProfile {
  10874.    public:
  10875.  };
  10876.  
  10877.  /// Stub class
  10878.  ///
  10879.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10880.  ///       information was available for this class.
  10881.  class  GuiTextProfile : public GuiControlProfile {
  10882.    public:
  10883.  };
  10884.  
  10885.  /// Stub class
  10886.  ///
  10887.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10888.  ///       information was available for this class.
  10889.  class  GuiInputCtrlProfile : public GuiControlProfile {
  10890.    public:
  10891.  };
  10892.  
  10893.  /// Stub class
  10894.  ///
  10895.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10896.  ///       information was available for this class.
  10897.  class  GuiBlackContentProfile : public GuiControlProfile {
  10898.    public:
  10899.  };
  10900.  
  10901.  /// Stub class
  10902.  ///
  10903.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10904.  ///       information was available for this class.
  10905.  class  GuiContentProfile : public GuiControlProfile {
  10906.    public:
  10907.  };
  10908.  
  10909.  /// Stub class
  10910.  ///
  10911.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10912.  ///       information was available for this class.
  10913.  class  GuiWindowCollapseProfile : public GuiControlProfile {
  10914.    public:
  10915.  };
  10916.  
  10917.  /// Stub class
  10918.  ///
  10919.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10920.  ///       information was available for this class.
  10921.  class  GuiMenubarWindowProfile : public GuiControlProfile {
  10922.    public:
  10923.  };
  10924.  
  10925.  /// Stub class
  10926.  ///
  10927.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10928.  ///       information was available for this class.
  10929.  class  UpgradeClaimProfile : public GuiControlProfile {
  10930.    public:
  10931.  };
  10932.  
  10933.  /// Stub class
  10934.  ///
  10935.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10936.  ///       information was available for this class.
  10937.  class  CmLineTextEditBitmapClaimsProfile : public GuiControlProfile {
  10938.    public:
  10939.  };
  10940.  
  10941.  /// Stub class
  10942.  ///
  10943.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10944.  ///       information was available for this class.
  10945.  class  GuiHToolbarWindowProfile : public GuiControlProfile {
  10946.    public:
  10947.  };
  10948.  
  10949.  /// Stub class
  10950.  ///
  10951.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10952.  ///       information was available for this class.
  10953.  class  GuiToolbarWindowProfile : public GuiControlProfile {
  10954.    public:
  10955.  };
  10956.  
  10957.  /// Stub class
  10958.  ///
  10959.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10960.  ///       information was available for this class.
  10961.  class  GuiWindowProfile : public GuiControlProfile {
  10962.    public:
  10963.  };
  10964.  
  10965.  /// Stub class
  10966.  ///
  10967.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10968.  ///       information was available for this class.
  10969.  class  GuiFrameSetProfile : public GuiControlProfile {
  10970.    public:
  10971.  };
  10972.  
  10973.  /// Stub class
  10974.  ///
  10975.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10976.  ///       information was available for this class.
  10977.  class  GuiModelessDialogProfile : public GuiControlProfile {
  10978.    public:
  10979.  };
  10980.  
  10981.  /// Stub class
  10982.  ///
  10983.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10984.  ///       information was available for this class.
  10985.  class  GuiToolTipProfile : public GuiControlProfile {
  10986.    public:
  10987.  };
  10988.  
  10989.  /// Stub class
  10990.  ///
  10991.  /// @note This is a stub class to ensure a proper class hierarchy. No
  10992.  ///       information was available for this class.
  10993.  class  GuiGroupTitleProfile : public GuiControlProfile {
  10994.    public:
  10995.  };
  10996.  
  10997.  /// Stub class
  10998.  ///
  10999.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11000.  ///       information was available for this class.
  11001.  class  GuiTabBorderProfile : public GuiControlProfile {
  11002.    public:
  11003.  };
  11004.  
  11005.  /// Stub class
  11006.  ///
  11007.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11008.  ///       information was available for this class.
  11009.  class  GuiGroupBorderProfile : public GuiControlProfile {
  11010.    public:
  11011.  };
  11012.  
  11013.  /// Stub class
  11014.  ///
  11015.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11016.  ///       information was available for this class.
  11017.  class  GuiTransparentwbProfile : public GuiControlProfile {
  11018.    public:
  11019.  };
  11020.  
  11021.  /// Stub class
  11022.  ///
  11023.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11024.  ///       information was available for this class.
  11025.  class  GuiTransparentProfile : public GuiControlProfile {
  11026.    public:
  11027.  };
  11028.  
  11029.  /// Stub class
  11030.  ///
  11031.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11032.  ///       information was available for this class.
  11033.  class  GuiSolidDefaultProfile : public GuiControlProfile {
  11034.    public:
  11035.  };
  11036.  
  11037.  /// Stub class
  11038.  ///
  11039.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11040.  ///       information was available for this class.
  11041.  class  GuiDefaultProfile : public GuiControlProfile {
  11042.    public:
  11043.  };
  11044.  
  11045.  /// Stub class
  11046.  ///
  11047.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11048.  ///       information was available for this class.
  11049.  class  SFXPausedSet : public SimSet {
  11050.    public:
  11051.  };
  11052.  
  11053.  /// Stub class
  11054.  ///
  11055.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11056.  ///       information was available for this class.
  11057.  class  AudioMusic : public SFXDescription {
  11058.    public:
  11059.  };
  11060.  
  11061.  /// Stub class
  11062.  ///
  11063.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11064.  ///       information was available for this class.
  11065.  class  AudioMessage : public SFXDescription {
  11066.    public:
  11067.  };
  11068.  
  11069.  /// Stub class
  11070.  ///
  11071.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11072.  ///       information was available for this class.
  11073.  class  AudioEffect : public SFXDescription {
  11074.    public:
  11075.  };
  11076.  
  11077.  /// Stub class
  11078.  ///
  11079.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11080.  ///       information was available for this class.
  11081.  class  AudioGui : public SFXDescription {
  11082.    public:
  11083.  };
  11084.  
  11085.  /*!
  11086.  @brief Playback controller for a sound source.
  11087.  
  11088.  All sound playback is driven by SFXSources.  Each such source represents an independent playback controller that directly or indirectly affects sound output.
  11089.  
  11090.  While this class itself is instantiable, such an instance will not by itself emit any sound.  This is the responsibility of its subclasses.  Note, however, that none of these subclasses must be instantiated directly but must instead be instantiated indirectly through the SFX interface.
  11091.  
  11092.  @section SFXSource_playonce Play-Once Sources
  11093.  
  11094.  Often, a sound source need only exist for the duration of the sound it is playing.  In this case so-called "play-once" sources simplify the bookkeeping involved by leaving the deletion of sources that have expired their playtime to the sound system.
  11095.  
  11096.  Play-once sources can be created in either of two ways:
  11097.  - sfxPlayOnce(): Directly create a play-once source from a SFXTrack or file.
  11098.  - sfxDeleteWhenStopped(): Retroactively turn any source into a play-once source that will automatically be deleted when moving into stopped state.
  11099.  
  11100.  @see sfxPlayOnce
  11101.  @see sfxDeleteWhenStopped
  11102.  
  11103.  @section SFXSource_hierarchies Source Hierarchies
  11104.  
  11105.  Source are arranged into playback hierarchies where a parent source will scale some of the properties of its children and also hand on any play(), pause(), and stop() commands to them.  This allows to easily group sounds into logical units that can then be operated on as a whole.
  11106.  
  11107.  An example of this is the segregation of sounds according to their use in the game.  Volume levels of background music, in-game sound effects, and character voices will usually be controlled independently and putting their sounds into different hierarchies allows to achieve that easily.
  11108.  
  11109.  The source properties that are scaled by parent values are:
  11110.  - volume,
  11111.  - pitch, and
  11112.  - priority
  11113.  
  11114.  This means that if a parent has a volume of 0.5, the child will play at half the effective volume it would otherwise have.
  11115.  
  11116.  Additionally, parents affect the playback state of their children:
  11117.  
  11118.  - A parent that is in stopped state will force all its direct and indirect children into stopped state.
  11119.  - A parent that is in paused state will force all its direct and indirect children that are playing into paused state.  However, children that are in stopped state will not be affected.
  11120.  - A parent that is in playing state will not affect the playback state of its children.
  11121.  
  11122.  Each source maintains a state that is wants to be in which may differ from the state that is enforced on it by its parent.  If a parent changes its states in a way that allows a child to move into its desired state, the child will do so.
  11123.  
  11124.  For logically grouping sources, instantiate the SFXSource class directly and make other sources children to it.  A source thus instantiated will not effect any real sound output on its own but will influence the sound output of its direct and indirect children.
  11125.  
  11126.  @note Be aware that the property values used to scale child property values are the @b effective values.  For example, the value used to scale the volume of a child is the @b effective volume of the parent, i.e. the volume after fades, distance attenuation, etc. has been applied.
  11127.  
  11128.  @see SFXDescription::sourceGroup
  11129.  @section SFXSource_volume Volume Attenuation
  11130.  
  11131.  During its lifetime, the volume of a source will be continually updated.  This update process always progresses in a fixed set of steps to compute the final effective volume of the source based on the base volume level that was either assigned from the SFXDescription associated with the source (SFXDescription::volume) or manually set by the user.  The process of finding a source's final effective volume is called "volume attenuation".  The steps involved in attenuating a source's volume are (in order):
  11132.  <dl>
  11133.  <dt>Fading</dt>
  11134.  <dd>If the source currently has a fade-effect applied, the volume is interpolated along the currently active fade curve.</dd>
  11135.  <dt>Modulation</dt>
  11136.  <dd>If the source is part of a hierarchy, it's volume is scaled according to the effective volume of its parent.</dd>
  11137.  <dt>Distance Attenuation</dt>
  11138.  <dd>If the source is a 3D sound source, then the volume is interpolated according to the distance model in effect and current listener position and orientation (see @ref SFX_3d).</dd>
  11139.  </dl>
  11140.  
  11141.  @see SFXDescription::volume
  11142.  @see SFXDescription::is3d
  11143.  @section SFXSource_fades Volume Fades
  11144.  
  11145.  To ease-in and ease-out playback of a sound, fade effects may be applied to sources.  A fade will either go from zero volume to full effective volume (fade-in) or from full effective volume to zero volume (fade-out).
  11146.  
  11147.  Fading is coupled to the play(), pause(), and stop() methods as well as to loop iterations when SFXDescription::fadeLoops is true for the source.  play() and the start of a loop iteration will trigger a fade-in whereas pause(), stop() and the end of loop iterations will trigger fade-outs.
  11148.  
  11149.  For looping sources, if SFXDescription::fadeLoops is false, only the initial play() will trigger a fade-in and no further fading will be applied to loop iterations.
  11150.  
  11151.  By default, the fade durations will be governed by the SFXDescription::fadeInTime and SFXDescription::fadeOutTime properties of the SFXDescription attached to the source.  However, these may be overridden on a per-source basis by setting fade times explicitly with setFadeTimes().  Additionally, the set values may be overridden for individual play(), pause(), and stop() calls by supplying appropriate fadeInTime/fadeOutTime parameters.
  11152.  
  11153.  By default, volume will interpolate linearly during fades.  However, custom interpolation curves can be assigned through the SFXDescription::fadeInEase and SFXDescription::fadeOutTime properties.
  11154.  
  11155.  @see SFXDescription::fadeInTime
  11156.  @see SFXDescription::fadeOutTime
  11157.  @see SFXDescription::fadeInEase
  11158.  @see SFXDescription::fadeOutEase
  11159.  @see SFXDescription::fadeLoops
  11160.  @section SFXSource_cones Sound Cones
  11161.  
  11162.  @see SFXDescription::coneInsideAngle
  11163.  @see SFXDescription::coneOutsideAngle
  11164.  @see SFXDescription::coneOutsideVolume
  11165.  @section SFXSource_doppler Doppler Effect
  11166.  
  11167.  @see sfxGetDopplerFactor
  11168.  @see sfxSetDopplerFactor
  11169.  @see SFXAmbience::dopplerFactor
  11170.  @section SFXSource_markers Playback Markers
  11171.  
  11172.  Playback markers allow to attach notification triggers to specific playback positions.  Once the play cursor crosses a position for which a marker is defined, the #onMarkerPassed callback will be triggered on the SFXSource thus allowing to couple script logic to .
  11173.  
  11174.  Be aware that the precision with which marker callbacks are triggered are bound by global source update frequency.  Thus there may be a delay between the play cursor actually passing a marker position and the callback being triggered.
  11175.  
  11176.  @ingroup SFX
  11177.   */
  11178.  class  SFXSource : public SimGroup {
  11179.    public:
  11180.        /*! Called when the playback status of the source changes.
  11181. @param newStatus The new playback status. */
  11182.        void onStatusChange( SFXStatus newStatus );
  11183.  
  11184.        /*! Called when a parameter attached to the source changes value.
  11185. This callback will be triggered before the value change has actually been applied to the source.
  11186. @param parameter The parameter that has changed value.
  11187. @note This is also triggered when the parameter is first attached to the source. */
  11188.        void onParameterValueChange( SFXParameter parameter );
  11189.  
  11190.     /*! Start playback of the source.
  11191. If the sound data for the source has not yet been fully loaded, there will be a delay after calling play and playback will start after the data has become available.
  11192.  
  11193. @param fadeInTime Seconds for the sound to reach full volume.  If -1, the SFXDescription::fadeInTime set in the source's associated description is used.  Pass 0 to disable a fade-in effect that may be configured on the description. */
  11194.     virtual void play(( float fadeInTime=-1.f )) {}
  11195.     /*! Stop playback of the source.
  11196. @param fadeOutTime Seconds for the sound to fade down to zero volume.  If -1, the SFXDescription::fadeOutTime set in the source's associated description is used.  Pass 0 to disable a fade-out effect that may be configured on the description.
  11197. Be aware that if a fade-out effect is used, the source will not immediately transtion to stopped state but will rather remain in playing state until the fade-out time has expired. */
  11198.     virtual void stop(( float fadeOutTime=-1.f )) {}
  11199.     /*! Pause playback of the source.
  11200. @param fadeOutTime Seconds for the sound to fade down to zero volume.  If -1, the SFXDescription::fadeOutTime set in the source's associated description is used.  Pass 0 to disable a fade-out effect that may be configured on the description.
  11201. Be aware that if a fade-out effect is used, the source will not immediately to paused state but will rather remain in playing state until the fade-out time has expired.. */
  11202.     virtual void pause(( float fadeOutTime=-1.f )) {}
  11203.     /*! Test whether the source is currently playing.
  11204. @return True if the source is in playing state, false otherwise.
  11205.  
  11206. @see play
  11207. @see getStatus
  11208. @see SFXStatus */
  11209.     virtual bool isPlaying(()) {}
  11210.     /*! Test whether the source is currently paused.
  11211. @return True if the source is in paused state, false otherwise.
  11212.  
  11213. @see pause
  11214. @see getStatus
  11215. @see SFXStatus */
  11216.     virtual bool isPaused(()) {}
  11217.     /*! Test whether the source is currently stopped.
  11218. @return True if the source is in stopped state, false otherwise.
  11219.  
  11220. @see stop
  11221. @see getStatus
  11222. @see SFXStatus */
  11223.     virtual bool isStopped(()) {}
  11224.     /*! Get the current playback status.
  11225. @return Te current playback status
  11226.  */
  11227.     virtual string getStatus(()) {}
  11228.     /*! Get the current base volume level of the source.
  11229. This is not the final effective volume that the source is playing at but rather the starting volume level before source group modulation, fades, or distance-based volume attenuation are applied.
  11230.  
  11231. @return The current base volume level.
  11232.  
  11233. @see setVolume
  11234. @see SFXDescription::volume
  11235.  
  11236. @ref SFXSource_volume */
  11237.     virtual float getVolume(()) {}
  11238.     /*! Set the base volume level for the source.
  11239. This volume will be the starting point for source group volume modulation, fades, and distance-based volume attenuation.
  11240.  
  11241. @param volume The new base volume level for the source.  Must be 0>=volume<=1.
  11242.  
  11243. @see getVolume
  11244.  
  11245. @ref SFXSource_volume */
  11246.     virtual void setVolume(( float volume )) {}
  11247.     /*! Get the final effective volume level of the source.
  11248.  
  11249. This method returns the volume level as it is after source group volume modulation, fades, and distance-based volume attenuation have been applied to the base volume level.
  11250.  
  11251. @return The effective volume of the source.
  11252.  
  11253. @ref SFXSource_volume */
  11254.     virtual float getAttenuatedVolume(()) {}
  11255.     /*! Get the fade-in time set on the source.
  11256. This will initially be SFXDescription::fadeInTime.
  11257.  
  11258. @return The fade-in time set on the source in seconds.
  11259.  
  11260. @see SFXDescription::fadeInTime
  11261.  
  11262. @ref SFXSource_fades */
  11263.     virtual float getFadeInTime(()) {}
  11264.     /*! Get the fade-out time set on the source.
  11265. This will initially be SFXDescription::fadeOutTime.
  11266.  
  11267. @return The fade-out time set on the source in seconds.
  11268.  
  11269. @see SFXDescription::fadeOutTime
  11270.  
  11271. @ref SFXSource_fades */
  11272.     virtual float getFadeOutTime(()) {}
  11273.     /*! Set the fade time parameters of the source.
  11274. @param fadeInTime The new fade-in time in seconds.
  11275. @param fadeOutTime The new fade-out time in seconds.
  11276.  
  11277. @see SFXDescription::fadeInTime
  11278. @see SFXDescription::fadeOutTime
  11279.  
  11280. @ref SFXSource_fades */
  11281.     virtual void setFadeTimes(( float fadeInTime, float fadeOutTime )) {}
  11282.     /*! Get the pitch scale of the source.
  11283. Pitch determines the playback speed of the source (default: 1).
  11284.  
  11285. @return The current pitch scale factor of the source.
  11286.  
  11287. @see setPitch
  11288. @see SFXDescription::pitch */
  11289.     virtual float getPitch(()) {}
  11290.     /*! Set the pitch scale of the source.
  11291. Pitch determines the playback speed of the source (default: 1).
  11292.  
  11293. @param pitch The new pitch scale factor.
  11294.  
  11295. @see getPitch
  11296. @see SFXDescription::pitch */
  11297.     virtual void setPitch(( float pitch )) {}
  11298.     /*! Set the position and orientation of a 3D sound source.
  11299. @hide */
  11300.     virtual void setTransform(( vector position [, vector direction ] )) {}
  11301.     /*! Set up the 3D volume cone for the source.
  11302.  
  11303. @param innerAngle Angle of the inner sound cone in degrees (@ref SFXDescription::coneInsideAngle).  Must be 0<=innerAngle<=360.
  11304. @param outerAngle Angle of the outer sound cone in degrees (@ref SFXDescription::coneOutsideAngle).  Must be 0<=outerAngle<=360.
  11305. @param outsideVolume Volume scale factor outside of outer cone (@ref SFXDescription::coneOutsideVolume).  Must be 0<=outsideVolume<=1.
  11306. @note This method has no effect on the source if the source is not 3D.
  11307.  
  11308.  */
  11309.     virtual void setCone(( float innerAngle, float outerAngle, float outsideVolume )) {}
  11310.     /*! Get the number of SFXParameters that are attached to the source.
  11311. @return The number of parameters attached to the source.
  11312.  
  11313. @tsexample
  11314. // Print the name ofo each parameter attached to %source.
  11315. %numParams = %source.getParameterCount();
  11316. for( %i = 0; %i < %numParams; %i ++ )
  11317.    echo( %source.getParameter( %i ).getParameterName() );
  11318. @endtsexample
  11319.  
  11320. @see getParameter
  11321. @see addParameter
  11322.  */
  11323.     virtual int getParameterCount(()) {}
  11324.     /*! Attach @a parameter to the source,
  11325.  
  11326. Once attached, the source will react to value changes of the given @a parameter.  Attaching a parameter will also trigger an initial read-out of the parameter's current value.
  11327.  
  11328. @param parameter The parameter to attach to the source. */
  11329.     virtual void addParameter(( SFXParameter parameter )) {}
  11330.     /*! Detach @a parameter from the source.
  11331.  
  11332. Once detached, the source will no longer react to value changes of the given @a parameter.
  11333.  
  11334. If the parameter is not attached to the source, the method will do nothing.
  11335.  
  11336. @param parameter The parameter to detach from the source.
  11337.  */
  11338.     virtual void removeParameter(( SFXParameter parameter )) {}
  11339.     /*! Get the parameter at the given index.
  11340. @param index Index of the parameter to fetch.  Must be 0<=index<=getParameterCount().
  11341. @return The parameter at the given @a index or null if @a index is out of range.
  11342.  
  11343. @tsexample
  11344. // Print the name ofo each parameter attached to %source.
  11345. %numParams = %source.getParameterCount();
  11346. for( %i = 0; %i < %numParams; %i ++ )
  11347.    echo( %source.getParameter( %i ).getParameterName() );
  11348. @endtsexample
  11349.  
  11350. @see getParameterCount */
  11351.     virtual string getParameter(( int index )) {}
  11352.     /*! Add a notification marker called @a name at @a pos seconds of playback.
  11353.  
  11354. @param name Symbolic name for the marker that will be passed to the onMarkerPassed() callback.
  11355. @param pos Playback position in seconds when the notification should trigger.  Note that this is a soft limit and there may be a delay between the play cursor actually passing the position and the callback being triggered.
  11356.  
  11357. @note For looped sounds, the marker will trigger on each iteration.
  11358.  
  11359. @tsexample
  11360. // Create a new source.
  11361. $source = sfxCreateSource( AudioMusicLoop2D, "art/sound/backgroundMusic" );
  11362.  
  11363. // Assign a class to the source.
  11364. $source.class = "BackgroundMusic";
  11365.  
  11366. // Add a playback marker at one minute into playback.
  11367. $source.addMarker( "first", 60 );
  11368.  
  11369. // Define the callback function.  This function will be called when the playback position passes the one minute mark.
  11370. function BackgroundMusic::onMarkerPassed( %this, %markerName )
  11371. {
  11372.    if( %markerName $= "first" )
  11373.       echo( "Playback has passed the 60 seconds mark." );
  11374. }
  11375.  
  11376. // Play the sound.
  11377. $source.play();
  11378. @endtsexample */
  11379.     virtual void addMarker(( String name, float pos )) {}
  11380.  
  11381.     /*! @name Sound
  11382.     @{ */
  11383.     /*! */
  11384.     /*!
  11385.     The playback configuration that determines the initial sound properties and setup.
  11386. Any SFXSource must have an associated SFXDescription.
  11387.    
  11388.      */
  11389.     SFXDescription Description;
  11390.     /*!
  11391.     Name of function to call when the status of the source changes.
  11392.  
  11393. The source that had its status changed is passed as the first argument to the function and the new status of the source is passed as the second argument.
  11394.    
  11395.      */
  11396.     string statusCallback;
  11397.     /// @}
  11398.  
  11399.  
  11400.     /*! @name Ungrouped
  11401.     @{ */
  11402.     /*! */
  11403.     /// @}
  11404.  
  11405.  
  11406.     /*! @name Object
  11407.     @{ */
  11408.     /*! */
  11409.     /// @}
  11410.  
  11411.  
  11412.     /*! @name Editing
  11413.     @{ */
  11414.     /*! */
  11415.     /// @}
  11416.  
  11417.  
  11418.     /*! @name Persistence
  11419.     @{ */
  11420.     /*! */
  11421.     /// @}
  11422.  
  11423.  };
  11424.  
  11425.  /// Stub class
  11426.  ///
  11427.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11428.  ///       information was available for this class.
  11429.  class  AudioChannelMusic : public SFXSource {
  11430.    public:
  11431.  };
  11432.  
  11433.  /// Stub class
  11434.  ///
  11435.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11436.  ///       information was available for this class.
  11437.  class  AudioChannelMessages : public SFXSource {
  11438.    public:
  11439.  };
  11440.  
  11441.  /// Stub class
  11442.  ///
  11443.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11444.  ///       information was available for this class.
  11445.  class  AudioChannelEffects : public SFXSource {
  11446.    public:
  11447.  };
  11448.  
  11449.  /// Stub class
  11450.  ///
  11451.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11452.  ///       information was available for this class.
  11453.  class  AudioChannelGui : public SFXSource {
  11454.    public:
  11455.  };
  11456.  
  11457.  /// Stub class
  11458.  ///
  11459.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11460.  ///       information was available for this class.
  11461.  class  AudioChannelDefault : public SFXSource {
  11462.    public:
  11463.  };
  11464.  
  11465.  /// Stub class
  11466.  ///
  11467.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11468.  ///       information was available for this class.
  11469.  class  AudioChannel : public SFXDescription {
  11470.    public:
  11471.  };
  11472.  
  11473.  /// Stub class
  11474.  ///
  11475.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11476.  ///       information was available for this class.
  11477.  class  AudioChannelMaster : public SFXSource {
  11478.    public:
  11479.  };
  11480.  
  11481.  /// Stub class
  11482.  ///
  11483.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11484.  ///       information was available for this class.
  11485.  class  AudioMaster : public SFXDescription {
  11486.    public:
  11487.  };
  11488.  
  11489.  /// Stub class
  11490.  ///
  11491.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11492.  ///       information was available for this class.
  11493.  class  ShaderQualityGroup : public SimGroup {
  11494.    public:
  11495.  };
  11496.  
  11497.  class  LightingQualityGroup : public SimGroup {
  11498.    public:
  11499.     virtual Script onApply(( string this, string level )) {}
  11500.  };
  11501.  
  11502.  class  TextureQualityGroup : public SimGroup {
  11503.    public:
  11504.     virtual Script onApply(( string this, string level )) {}
  11505.  };
  11506.  
  11507.  /*!
  11508.  @brief Data structure for storing indexed sequences of key/value pairs.
  11509.  
  11510.  This is a powerful array class providing PHP style arrays in TorqueScript.
  11511.  
  11512.  The following features are supported:<ul>
  11513.  <li>array pointers: this allows you to move forwards or backwards through the array as if it was a list, including jumping to the start or end.</li>
  11514.  <li>sorting: the array can be sorted in either alphabetic or numeric mode, on the key or the value, and in ascending or descending order</li>
  11515.  <li>add/remove elements: elements can be pushed/popped from the start or end of the array, or can be inserted/erased from anywhere in the middle</li>
  11516.  <li>removal of duplicates: remove duplicate keys or duplicate values</li>
  11517.  <li>searching: search the array and return the index of a particular key or value</li>
  11518.  <li>counting: count the number of instaces of a particular value or key in the array, as well as the total number of elements</li>
  11519.  <li>advanced features: array append, array crop and array duplicate</li>
  11520.  </ul>
  11521.  
  11522.  Array element keys and values can be strings or numbers
  11523.  
  11524.   */
  11525.  class  ArrayObject : public SimObject {
  11526.    public:
  11527.     /*! Search the array from the current position for the element @param value Array value to search for
  11528. @return Index of the first element found, or -1 if none
  11529.  */
  11530.     virtual int getIndexFromValue(( string value )) {}
  11531.     /*! Search the array from the current position for the key @param value Array key to search for
  11532. @return Index of the first element found, or -1 if none
  11533.  */
  11534.     virtual int getIndexFromKey(( string key )) {}
  11535.     /*! Get the value of the array element at the submitted index.
  11536. @param index 0-based index of the array element to get
  11537. @return The value of the array element at the specified index, or "" if the index is out of range
  11538.  */
  11539.     virtual string getValue(( int index )) {}
  11540.     /*! Get the key of the array element at the submitted index.
  11541. @param index 0-based index of the array element to get
  11542. @return The key associated with the array element at the specified index, or "" if the index is out of range
  11543.  */
  11544.     virtual string getKey(( int index )) {}
  11545.     virtual string getValueFromKey(( string key )) {}
  11546.     virtual string getKeyFromValue(( string val )) {}
  11547.     /*! Set the key at the given index.
  11548. @param key New key value
  11549. @param index 0-based index of the array element to update
  11550.  */
  11551.     virtual void setKey(( string key, int index )) {}
  11552.     /*! Set the value at the given index.
  11553. @param value New array element value
  11554. @param index 0-based index of the array element to update
  11555.  */
  11556.     virtual void setValue(( string value, int index )) {}
  11557.     /*! Get the number of elements in the array. */
  11558.     virtual int count(()) {}
  11559.     /*! Get the number of times a particular value is found in the array.
  11560. @param value Array element value to count
  11561.  */
  11562.     virtual int countValue(( string value )) {}
  11563.     /*! Get the number of times a particular key is found in the array.
  11564. @param key Key value to count
  11565.  */
  11566.     virtual int countKey(( string key )) {}
  11567.     /*! Adds a new element to the end of an array (same as push_back()).
  11568. @param key Key for the new element
  11569. @param value Value for the new element
  11570.  */
  11571.     virtual void add(( string key, string value="" )) {}
  11572.     /*! Adds a new element to the end of an array.
  11573. @param key Key for the new element
  11574. @param value Value for the new element
  11575.  */
  11576.     virtual void push_back(( string key, string value="" )) {}
  11577.     /*! Adds a new element to the front of an array */
  11578.     virtual void push_front(( string key, string value="" )) {}
  11579.     /*! Adds a new element to a specified position in the array.
  11580. - @a index = 0 will insert an element at the start of the array (same as push_front())
  11581. - @a index = %array.count() will insert an element at the end of the array (same as push_back())
  11582.  
  11583. @param key Key for the new element
  11584. @param value Value for the new element
  11585. @param index 0-based index at which to insert the new element */
  11586.     virtual void insert(( string key, string value, int index )) {}
  11587.     /*! Adds a new element to the end of an array or updates the value if key is already in a list. */
  11588.     virtual void setValueByKey(( string key, string value="" )) {}
  11589.     /*! Adds a new element to the end of an array or updates the value if key is already in a list. */
  11590.     virtual void updateValue(( string key, string value="" )) {}
  11591.     /*! Removes the last element from the array */
  11592.     virtual void pop_back(()) {}
  11593.     /*! Removes the first element from the array */
  11594.     virtual void pop_front(()) {}
  11595.     /*! Removes an element at a specific position from the array.
  11596. @param index 0-based index of the element to remove
  11597.  */
  11598.     virtual void erase(( int index )) {}
  11599.     /*! Emptys all elements from an array */
  11600.     virtual void empty(()) {}
  11601.     /*! Removes any elements that have duplicated values (leaving the first instance) */
  11602.     virtual void uniqueValue(()) {}
  11603.     /*! Removes any elements that have duplicated keys (leaving the first instance) */
  11604.     virtual void uniqueKey(()) {}
  11605.     /*! Alters array into an exact duplicate of the target array.
  11606. @param target ArrayObject to duplicate
  11607.  */
  11608.     virtual bool duplicate(( ArrayObject target )) {}
  11609.     /*! Removes elements with matching keys from array.
  11610. @param target ArrayObject containing keys to remove from this array
  11611.  */
  11612.     virtual bool crop(( ArrayObject target )) {}
  11613.     /*! Appends the target array to the array object.
  11614. @param target ArrayObject to append to the end of this array
  11615.  */
  11616.     virtual bool append(( ArrayObject target )) {}
  11617.     /*! Alpha sorts the array by value
  11618.  
  11619. @param descending [optional] True for descending sort, false for ascending sort
  11620.  */
  11621.     virtual void sort(( bool descending=false )) {}
  11622.     /*! Alpha sorts the array by value in ascending order */
  11623.     virtual void sorta(()) {}
  11624.     /*! Alpha sorts the array by value in descending order */
  11625.     virtual void sortd(()) {}
  11626.     /*! Alpha sorts the array by key
  11627.  
  11628. @param descending [optional] True for descending sort, false for ascending sort
  11629.  */
  11630.     virtual void sortk(( bool descending=false )) {}
  11631.     /*! Alpha sorts the array by key in ascending order */
  11632.     virtual void sortka(()) {}
  11633.     /*! Alpha sorts the array by key in descending order */
  11634.     virtual void sortkd(()) {}
  11635.     /*! Numerically sorts the array by value
  11636.  
  11637. @param descending [optional] True for descending sort, false for ascending sort
  11638.  */
  11639.     virtual void sortn(( bool descending=false )) {}
  11640.     /*! Numerically sorts the array by value in ascending order */
  11641.     virtual void sortna(()) {}
  11642.     /*! Numerically sorts the array by value in descending order */
  11643.     virtual void sortnd(()) {}
  11644.     /*! Numerically sorts the array by key
  11645.  
  11646. @param descending [optional] True for descending sort, false for ascending sort
  11647.  */
  11648.     virtual void sortnk(( bool descending=false )) {}
  11649.     /*! Numerical sorts the array by key in ascending order */
  11650.     virtual void sortnka(()) {}
  11651.     /*! Numerical sorts the array by key in descending order */
  11652.     virtual void sortnkd(()) {}
  11653.     /*! Sorts the array by value in ascending order using the given callback function.
  11654. @param functionName Name of a function that takes two arguments A and B and returns -1 if A is less, 1 if B is less, and 0 if both are equal.
  11655.  
  11656. @tsexample
  11657. function mySortCallback(%a, %b)
  11658. {
  11659.    return strcmp( %a.name, %b.name );
  11660. }
  11661.  
  11662. %array.sortf( "mySortCallback" );
  11663. @endtsexample
  11664.  */
  11665.     virtual void sortf(( string functionName )) {}
  11666.     /*! Sorts the array by key in ascending order using the given callback function.
  11667. @param functionName Name of a function that takes two arguments A and B and returns -1 if A is less, 1 if B is less, and 0 if both are equal.@see sortf
  11668.  */
  11669.     virtual void sortfk(( string functionName )) {}
  11670.     /*! Sorts the array by value in descending order using the given callback function.
  11671. @param functionName Name of a function that takes two arguments A and B and returns -1 if A is less, 1 if B is less, and 0 if both are equal.@see sortf
  11672.  */
  11673.     virtual void sortfd(( string functionName )) {}
  11674.     /*! Sorts the array by key in descending order using the given callback function.
  11675. @param functionName Name of a function that takes two arguments A and B and returns -1 if A is less, 1 if B is less, and 0 if both are equal.@see sortf
  11676.  */
  11677.     virtual void sortfkd(( string functionName )) {}
  11678.     /*! Moves array pointer to start of array
  11679.  
  11680. @return Returns the new array pointer */
  11681.     virtual int moveFirst(()) {}
  11682.     /*! Moves array pointer to end of array
  11683.  
  11684. @return Returns the new array pointer */
  11685.     virtual int moveLast(()) {}
  11686.     /*! Moves array pointer to next position
  11687.  
  11688. @return Returns the new array pointer, or -1 if already at the end */
  11689.     virtual int moveNext(()) {}
  11690.     /*! Moves array pointer to prev position
  11691.  
  11692. @return Returns the new array pointer, or -1 if already at the start */
  11693.     virtual int movePrev(()) {}
  11694.     /*! Gets the current pointer index */
  11695.     virtual int getCurrent(()) {}
  11696.     /*! Sets the current pointer index.
  11697. @param index New 0-based pointer index
  11698.  */
  11699.     virtual void setCurrent(( int index )) {}
  11700.     /*! Echos the array contents to the console */
  11701.     virtual void echo(()) {}
  11702.     /*!
  11703.     Makes the keys and values case-sensitive.
  11704. By default, comparison of key and value strings will be case-insensitive.
  11705.    
  11706.      */
  11707.     bool caseSensitive;
  11708.     /*!
  11709.     Helper field which allows you to add new key['keyname'] = value pairs.
  11710.    
  11711.      */
  11712.     caseString key;
  11713.  
  11714.     /*! @name Ungrouped
  11715.     @{ */
  11716.     /*! */
  11717.     /// @}
  11718.  
  11719.  
  11720.     /*! @name Object
  11721.     @{ */
  11722.     /*! */
  11723.     /// @}
  11724.  
  11725.  
  11726.     /*! @name Editing
  11727.     @{ */
  11728.     /*! */
  11729.     /// @}
  11730.  
  11731.  
  11732.     /*! @name Persistence
  11733.     @{ */
  11734.     /*! */
  11735.     /// @}
  11736.  
  11737.  };
  11738.  
  11739.  class  GraphicsQualityLevel : public ArrayObject {
  11740.    public:
  11741.     /*!  Applies the graphics quality settings and calls
  11742.  'onApply' on itself or its parent group if its
  11743.  been overloaded.
  11744.  */
  11745.     virtual Script apply(( string this )) {}
  11746.     /*!  Returns true if the current quality settings equal
  11747.  this graphics quality level.
  11748.  */
  11749.     virtual Script isCurrent(( string this )) {}
  11750.  };
  11751.  
  11752.  /// Stub class
  11753.  ///
  11754.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11755.  ///       information was available for this class.
  11756.  class  MeshQualityGroup : public SimGroup {
  11757.    public:
  11758.  };
  11759.  
  11760.  /// Stub class
  11761.  ///
  11762.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11763.  ///       information was available for this class.
  11764.  class  GlobalActionMap : public ActionMap {
  11765.    public:
  11766.  };
  11767.  
  11768.  /*!
  11769.  @brief A debug helper for rendering debug primitives to the scene.
  11770.  
  11771.  The DebugDrawer is used to render debug primitives to the scene for testing.  It is often useful when debugging collision code or complex 3d algorithms to have them draw debug information, like culling hulls or bounding volumes, normals, simple lines, and so forth.
  11772.  
  11773.  A key feature of the DebugDrawer is that each primitive gets a "time to live" (TTL) which allows them to continue to render to the scene for a fixed period of time.  You can freeze or resume the system at any time to allow you to examine the output.
  11774.  @tsexample
  11775.  DebugDraw.drawLine( %player.getMuzzlePoint( 0 ), %hitPoint );
  11776.  DebugDraw.setLastTTL( 5000 ); // 5 seconds.
  11777.  @endtsexample
  11778.  The DebugDrawer renders solely in world space and all primitives are rendered with the cull mode disabled.
  11779.  @note This feature can easily be used to cheat in online games, so you should be sure it is disabled in your shipping game.  By default the DebugDrawer is disabled in all TORQUE_SHIPPING builds.
  11780.  @ingroup GFX
  11781.   */
  11782.  class  DebugDrawer : public SimObject {
  11783.    public:
  11784.     /*! Draws a line primitive between two 3d points. */
  11785.     virtual void drawLine(( Point3F a, Point3F b, ColorF color=ColorF::WHITE )) {}
  11786.     /*! Draws an axis aligned box primitive within the two 3d points. */
  11787.     virtual void drawBox(( Point3F a, Point3F b, ColorF color=ColorF::WHITE )) {}
  11788.     /*! Sets the "time to live" (TTL) for the last rendered primitive. */
  11789.     virtual void setLastTTL(( int ms )) {}
  11790.     /*! Sets the z buffer reading state for the last rendered primitive. */
  11791.     virtual void setLastZTest(( bool enabled )) {}
  11792.     /*! Toggles freeze mode which keeps the currently rendered primitives from expiring. */
  11793.     virtual void toggleFreeze(()) {}
  11794.     /*! Toggles the rendering of DebugDrawer primitives. */
  11795.     virtual void toggleDrawing(()) {}
  11796.  
  11797.     /*! @name Ungrouped
  11798.     @{ */
  11799.     /*! */
  11800.     /// @}
  11801.  
  11802.  
  11803.     /*! @name Object
  11804.     @{ */
  11805.     /*! */
  11806.     /// @}
  11807.  
  11808.  
  11809.     /*! @name Editing
  11810.     @{ */
  11811.     /*! */
  11812.     /// @}
  11813.  
  11814.  
  11815.     /*! @name Persistence
  11816.     @{ */
  11817.     /*! */
  11818.     /// @}
  11819.  
  11820.  };
  11821.  
  11822.  /// Stub class
  11823.  ///
  11824.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11825.  ///       information was available for this class.
  11826.  class  DebugDraw : public DebugDrawer {
  11827.    public:
  11828.  };
  11829.  
  11830.  /// Stub class
  11831.  ///
  11832.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11833.  ///       information was available for this class.
  11834.  class  DataBlockGroup : public SimGroup {
  11835.    public:
  11836.  };
  11837.  
  11838.  /// Stub class
  11839.  ///
  11840.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11841.  ///       information was available for this class.
  11842.  class  sgMissionLightingFilterSet : public SimSet {
  11843.    public:
  11844.  };
  11845.  
  11846.  /// Stub class
  11847.  ///
  11848.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11849.  ///       information was available for this class.
  11850.  class  BehaviorSet : public SimSet {
  11851.    public:
  11852.  };
  11853.  
  11854.  /// Stub class
  11855.  ///
  11856.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11857.  ///       information was available for this class.
  11858.  class  SFXParameterGroup : public SimGroup {
  11859.    public:
  11860.  };
  11861.  
  11862.  /// Stub class
  11863.  ///
  11864.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11865.  ///       information was available for this class.
  11866.  class  ServersGroup : public SimGroup {
  11867.    public:
  11868.  };
  11869.  
  11870.  /// Stub class
  11871.  ///
  11872.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11873.  ///       information was available for this class.
  11874.  class  ClientConnectionGroup : public SimGroup {
  11875.    public:
  11876.  };
  11877.  
  11878.  /// Stub class
  11879.  ///
  11880.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11881.  ///       information was available for this class.
  11882.  class  TCPGroup : public SimGroup {
  11883.    public:
  11884.  };
  11885.  
  11886.  /// Stub class
  11887.  ///
  11888.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11889.  ///       information was available for this class.
  11890.  class  GuiDataGroup : public SimGroup {
  11891.    public:
  11892.  };
  11893.  
  11894.  /// Stub class
  11895.  ///
  11896.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11897.  ///       information was available for this class.
  11898.  class  GuiGroup : public SimGroup {
  11899.    public:
  11900.  };
  11901.  
  11902.  /// Stub class
  11903.  ///
  11904.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11905.  ///       information was available for this class.
  11906.  class  ClientGroup : public SimGroup {
  11907.    public:
  11908.  };
  11909.  
  11910.  /// Stub class
  11911.  ///
  11912.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11913.  ///       information was available for this class.
  11914.  class  ActionMapGroup : public SimGroup {
  11915.    public:
  11916.  };
  11917.  
  11918.  /// Stub class
  11919.  ///
  11920.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11921.  ///       information was available for this class.
  11922.  class  DataBlockSet : public SimSet {
  11923.    public:
  11924.  };
  11925.  
  11926.  /// Stub class
  11927.  ///
  11928.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11929.  ///       information was available for this class.
  11930.  class  TerrainMaterialSet : public SimSet {
  11931.    public:
  11932.  };
  11933.  
  11934.  /// Stub class
  11935.  ///
  11936.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11937.  ///       information was available for this class.
  11938.  class  SFXAmbienceSet : public SimSet {
  11939.    public:
  11940.  };
  11941.  
  11942.  /// Stub class
  11943.  ///
  11944.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11945.  ///       information was available for this class.
  11946.  class  SFXStateSet : public SimSet {
  11947.    public:
  11948.  };
  11949.  
  11950.  /// Stub class
  11951.  ///
  11952.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11953.  ///       information was available for this class.
  11954.  class  SFXEnvironmentSet : public SimSet {
  11955.    public:
  11956.  };
  11957.  
  11958.  /// Stub class
  11959.  ///
  11960.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11961.  ///       information was available for this class.
  11962.  class  SFXTrackSet : public SimSet {
  11963.    public:
  11964.  };
  11965.  
  11966.  /// Stub class
  11967.  ///
  11968.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11969.  ///       information was available for this class.
  11970.  class  SFXDescriptionSet : public SimSet {
  11971.    public:
  11972.  };
  11973.  
  11974.  /// Stub class
  11975.  ///
  11976.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11977.  ///       information was available for this class.
  11978.  class  SFXSourceSet : public SimSet {
  11979.    public:
  11980.  };
  11981.  
  11982.  /// Stub class
  11983.  ///
  11984.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11985.  ///       information was available for this class.
  11986.  class  MaterialSet : public SimSet {
  11987.    public:
  11988.  };
  11989.  
  11990.  /// Stub class
  11991.  ///
  11992.  /// @note This is a stub class to ensure a proper class hierarchy. No
  11993.  ///       information was available for this class.
  11994.  class  WayPointSet : public SimSet {
  11995.    public:
  11996.  };
  11997.  
  11998.  /// Stub class
  11999.  ///
  12000.  /// @note This is a stub class to ensure a proper class hierarchy. No
  12001.  ///       information was available for this class.
  12002.  class  GhostAlwaysSet : public SimSet {
  12003.    public:
  12004.  };
  12005.  
  12006.  /// Stub class
  12007.  ///
  12008.  /// @note This is a stub class to ensure a proper class hierarchy. No
  12009.  ///       information was available for this class.
  12010.  class  ActiveActionMapSet : public SimSet {
  12011.    public:
  12012.  };
  12013.  
  12014.  /// Stub class
  12015.  ///
  12016.  /// @note This is a stub class to ensure a proper class hierarchy. No
  12017.  ///       information was available for this class.
  12018.  class  RootGroup : public SimGroup {
  12019.    public:
  12020.  };
  12021.  
  12022.  class  AwStatsGui : public GuiControl {
  12023.    public:
  12024.  
  12025.     /*! @name Layout
  12026.     @{ */
  12027.     /*! */
  12028.     /// @}
  12029.  
  12030.  
  12031.     /*! @name Control
  12032.     @{ */
  12033.     /*! */
  12034.     /// @}
  12035.  
  12036.  
  12037.     /*! @name ToolTip
  12038.     @{ */
  12039.     /*! */
  12040.     /// @}
  12041.  
  12042.  
  12043.     /*! @name Editing
  12044.     @{ */
  12045.     /*! */
  12046.     /// @}
  12047.  
  12048.  
  12049.     /*! @name Localization
  12050.     @{ */
  12051.     /*! */
  12052.     /// @}
  12053.  
  12054.  
  12055.     /*! @name Ungrouped
  12056.     @{ */
  12057.     /*! */
  12058.     /// @}
  12059.  
  12060.  
  12061.     /*! @name Object
  12062.     @{ */
  12063.     /*! */
  12064.     /// @}
  12065.  
  12066.  
  12067.     /*! @name Editing
  12068.     @{ */
  12069.     /*! */
  12070.     /// @}
  12071.  
  12072.  
  12073.     /*! @name Persistence
  12074.     @{ */
  12075.     /*! */
  12076.     /// @}
  12077.  
  12078.  };
  12079.  
  12080.  /*!
  12081.  @brief Base class for game objects which use datablocks, networking, are editable, and need to process ticks.
  12082.  
  12083.  @ingroup gameObjects
  12084.   */
  12085.  class  GameBase : public SceneObject {
  12086.    public:
  12087.     /*! @brief Get the client (if any) that controls this object.
  12088.  
  12089. The controlling client is the one that will send moves to us to act on.
  12090. @return the ID of the controlling GameConnection, or 0 if this object is not controlled by any client.
  12091. @see GameConnection
  12092.  */
  12093.     virtual int getControllingClient(()) {}
  12094.        /*! @brief Called when the client controlling the object changes.
  12095.  
  12096. @param controlled true if a client now controls this object, false if no client controls this object.
  12097.  */
  12098.        void setControl( bool controlled );
  12099.  
  12100.     virtual int getObjectGID(()) {}
  12101.     virtual int getServerGID(()) {}
  12102.     virtual int getGIDusage(()) {}
  12103.     virtual string getPositionOnServer(()) {}
  12104.     /*! @brief Get the datablock used by this object.
  12105.  
  12106. @return the datablock this GameBase is using.@see setDataBlock()
  12107.  */
  12108.     virtual int getDataBlock(()) {}
  12109.     /*! @brief Assign this GameBase to use the specified datablock.
  12110.  
  12111. @param data new datablock to use
  12112. @return true if successful, false if failed.@see getDataBlock()
  12113.  */
  12114.     virtual bool setDataBlock(( GameBaseData data )) {}
  12115.     /*! @brief Apply an impulse to this object as defined by a world position and velocity vector.
  12116.  
  12117. @param pos impulse world position
  12118. @param vel impulse velocity (impulse force F = m * v)
  12119. @return Always true
  12120. @note Not all objects that derrive from GameBase have this defined.
  12121.  */
  12122.     virtual bool applyImpulse(( Point3F pos, VectorF vel )) {}
  12123.     /*! @brief Applies a radial impulse to the object using the given origin and force.
  12124.  
  12125. @param origin World point of origin of the radial impulse.
  12126. @param radius The radius of the impulse area.
  12127. @param magnitude The strength of the impulse.
  12128. @note Not all objects that derrive from GameBase have this defined.
  12129.  */
  12130.     virtual void applyRadialImpulse(( Point3F origin, float radius, float magnitude )) {}
  12131.  
  12132.     /*! @name Game
  12133.     @{ */
  12134.     /*! */
  12135.     /*!
  12136.     Script datablock used for game objects.
  12137.    
  12138.      */
  12139.     GameBaseData dataBlock;
  12140.     /// @}
  12141.  
  12142.  
  12143.     /*! @name Transform
  12144.     @{ */
  12145.     /*! */
  12146.     /// @}
  12147.  
  12148.  
  12149.     /*! @name Editing
  12150.     @{ */
  12151.     /*! */
  12152.     /// @}
  12153.  
  12154.  
  12155.     /*! @name Mounting
  12156.     @{ */
  12157.     /*! */
  12158.     /// @}
  12159.  
  12160.  
  12161.     /*! @name Ungrouped
  12162.     @{ */
  12163.     /*! */
  12164.     /// @}
  12165.  
  12166.  
  12167.     /*! @name Object
  12168.     @{ */
  12169.     /*! */
  12170.     /// @}
  12171.  
  12172.  
  12173.     /*! @name Editing
  12174.     @{ */
  12175.     /*! */
  12176.     /// @}
  12177.  
  12178.  
  12179.     /*! @name Persistence
  12180.     @{ */
  12181.     /*! */
  12182.     /// @}
  12183.  
  12184.  };
  12185.  
  12186.  class  ArrowBody : public GameBase {
  12187.    public:
  12188.  
  12189.     /*! @name Game
  12190.     @{ */
  12191.     /*! */
  12192.     /// @}
  12193.  
  12194.  
  12195.     /*! @name Transform
  12196.     @{ */
  12197.     /*! */
  12198.     /// @}
  12199.  
  12200.  
  12201.     /*! @name Editing
  12202.     @{ */
  12203.     /*! */
  12204.     /// @}
  12205.  
  12206.  
  12207.     /*! @name Mounting
  12208.     @{ */
  12209.     /*! */
  12210.     /// @}
  12211.  
  12212.  
  12213.     /*! @name Ungrouped
  12214.     @{ */
  12215.     /*! */
  12216.     /// @}
  12217.  
  12218.  
  12219.     /*! @name Object
  12220.     @{ */
  12221.     /*! */
  12222.     /// @}
  12223.  
  12224.  
  12225.     /*! @name Editing
  12226.     @{ */
  12227.     /*! */
  12228.     /// @}
  12229.  
  12230.  
  12231.     /*! @name Persistence
  12232.     @{ */
  12233.     /*! */
  12234.     /// @}
  12235.  
  12236.  };
  12237.  
  12238.  class  ArrowProjectile : public GameBase {
  12239.    public:
  12240.  
  12241.     /*! @name Game
  12242.     @{ */
  12243.     /*! */
  12244.     /// @}
  12245.  
  12246.  
  12247.     /*! @name Transform
  12248.     @{ */
  12249.     /*! */
  12250.     /// @}
  12251.  
  12252.  
  12253.     /*! @name Editing
  12254.     @{ */
  12255.     /*! */
  12256.     /// @}
  12257.  
  12258.  
  12259.     /*! @name Mounting
  12260.     @{ */
  12261.     /*! */
  12262.     /// @}
  12263.  
  12264.  
  12265.     /*! @name Ungrouped
  12266.     @{ */
  12267.     /*! */
  12268.     /// @}
  12269.  
  12270.  
  12271.     /*! @name Object
  12272.     @{ */
  12273.     /*! */
  12274.     /// @}
  12275.  
  12276.  
  12277.     /*! @name Editing
  12278.     @{ */
  12279.     /*! */
  12280.     /// @}
  12281.  
  12282.  
  12283.     /*! @name Persistence
  12284.     @{ */
  12285.     /*! */
  12286.     /// @}
  12287.  
  12288.  };
  12289.  
  12290.  class  ProjectileTrailEvent {
  12291.    public:
  12292.  };
  12293.  
  12294.  class  RangedEvent {
  12295.    public:
  12296.  };
  12297.  
  12298.  class  SpawnSingleAnimalBreed : public SimObject {
  12299.    public:
  12300.     /*!
  12301.     @brief
  12302.  
  12303.  
  12304.    
  12305.      */
  12306.     string animal_breed_name;
  12307.     /*!
  12308.     @brief
  12309.  
  12310.  
  12311.    
  12312.      */
  12313.     RandomCount random_count;
  12314.     /*!
  12315.     @brief
  12316.  
  12317.  
  12318.    
  12319.      */
  12320.     RandomSkillValueDelta random_quality;
  12321.  
  12322.     /*! @name Ungrouped
  12323.     @{ */
  12324.     /*! */
  12325.     /// @}
  12326.  
  12327.  
  12328.     /*! @name Object
  12329.     @{ */
  12330.     /*! */
  12331.     /// @}
  12332.  
  12333.  
  12334.     /*! @name Editing
  12335.     @{ */
  12336.     /*! */
  12337.     /// @}
  12338.  
  12339.  
  12340.     /*! @name Persistence
  12341.     @{ */
  12342.     /*! */
  12343.     /// @}
  12344.  
  12345.  };
  12346.  
  12347.  class  SpawnAnimalPattern : public GameBaseData {
  12348.    public:
  12349.     /*!
  12350.     @brief
  12351.  
  12352.  
  12353.    
  12354.      */
  12355.     float probability;
  12356.     /*!
  12357.     @brief
  12358.  
  12359.  
  12360.    
  12361.      */
  12362.     intList breeds;
  12363.     /*!
  12364.     @brief
  12365.  
  12366.  
  12367.    
  12368.      */
  12369.     intList substances;
  12370.  
  12371.     /*! @name Scripting
  12372.     @{ */
  12373.     /*! */
  12374.     /// @}
  12375.  
  12376.  
  12377.     /*! @name Ungrouped
  12378.     @{ */
  12379.     /*! */
  12380.     /// @}
  12381.  
  12382.  
  12383.     /*! @name Object
  12384.     @{ */
  12385.     /*! */
  12386.     /// @}
  12387.  
  12388.  
  12389.     /*! @name Editing
  12390.     @{ */
  12391.     /*! */
  12392.     /// @}
  12393.  
  12394.  
  12395.     /*! @name Persistence
  12396.     @{ */
  12397.     /*! */
  12398.     /// @}
  12399.  
  12400.  };
  12401.  
  12402.  /*!
  12403.  @brief Defines properties for a AI_Animal object.
  12404.  
  12405.  @see AI_Animal
  12406.  @ingroup gameObjects
  12407.   */
  12408.  class  SpawnAnimalsData : public GameBaseData {
  12409.    public:
  12410.     /*!
  12411.     @brief is_use_single_central_terrain_block
  12412.  
  12413.  
  12414.    
  12415.      */
  12416.     bool is_use_single_central_terrain_block;
  12417.     /*!
  12418.     @brief passability_map_size__in_terrain_squares
  12419.  
  12420.  
  12421.    
  12422.      */
  12423.     int passability_map_size__in_terrain_squares;
  12424.     /*!
  12425.     @brief selected_servers
  12426.  
  12427.  
  12428.    
  12429.      */
  12430.     intList selected_servers;
  12431.     /*!
  12432.     @brief civilization_rating
  12433.  
  12434.  
  12435.    
  12436.      */
  12437.     int civilization_rating;
  12438.     /*!
  12439.     @brief spawning_animals_count
  12440.  
  12441.  
  12442.    
  12443.      */
  12444.     int spawning_animals_count;
  12445.     /*!
  12446.     @brief max_spawning_animals_count_debug_mode
  12447.  
  12448.  
  12449.    
  12450.      */
  12451.     int max_spawning_animals_count_debug_mode;
  12452.     /*!
  12453.     @brief is_spawn_all_creatures_at_start
  12454.  
  12455.  
  12456.    
  12457.      */
  12458.     bool is_spawn_all_creatures_at_start;
  12459.     /*!
  12460.     @brief is_random_movement_only
  12461.  
  12462.  
  12463.    
  12464.      */
  12465.     int is_random_movement_only;
  12466.     /*!
  12467.     @brief is_main_thread_calculations_limited
  12468.  
  12469.  
  12470.    
  12471.      */
  12472.     bool is_main_thread_calculations_limited;
  12473.     /*!
  12474.     @brief spawn_patterns
  12475.  
  12476.  
  12477.    
  12478.      */
  12479.     intList patterns;
  12480.  
  12481.     /*! @name Scripting
  12482.     @{ */
  12483.     /*! */
  12484.     /// @}
  12485.  
  12486.  
  12487.     /*! @name Ungrouped
  12488.     @{ */
  12489.     /*! */
  12490.     /// @}
  12491.  
  12492.  
  12493.     /*! @name Object
  12494.     @{ */
  12495.     /*! */
  12496.     /// @}
  12497.  
  12498.  
  12499.     /*! @name Editing
  12500.     @{ */
  12501.     /*! */
  12502.     /// @}
  12503.  
  12504.  
  12505.     /*! @name Persistence
  12506.     @{ */
  12507.     /*! */
  12508.     /// @}
  12509.  
  12510.  };
  12511.  
  12512.  class  AI_AnimalPopulationManager : public GameBase {
  12513.    public:
  12514.  
  12515.     /*! @name Game
  12516.     @{ */
  12517.     /*! */
  12518.     /// @}
  12519.  
  12520.  
  12521.     /*! @name Transform
  12522.     @{ */
  12523.     /*! */
  12524.     /// @}
  12525.  
  12526.  
  12527.     /*! @name Editing
  12528.     @{ */
  12529.     /*! */
  12530.     /// @}
  12531.  
  12532.  
  12533.     /*! @name Mounting
  12534.     @{ */
  12535.     /*! */
  12536.     /// @}
  12537.  
  12538.  
  12539.     /*! @name Ungrouped
  12540.     @{ */
  12541.     /*! */
  12542.     /// @}
  12543.  
  12544.  
  12545.     /*! @name Object
  12546.     @{ */
  12547.     /*! */
  12548.     /// @}
  12549.  
  12550.  
  12551.     /*! @name Editing
  12552.     @{ */
  12553.     /*! */
  12554.     /// @}
  12555.  
  12556.  
  12557.     /*! @name Persistence
  12558.     @{ */
  12559.     /*! */
  12560.     /// @}
  12561.  
  12562.  };
  12563.  
  12564.  class  UpdateTrackEvent {
  12565.    public:
  12566.  };
  12567.  
  12568.  class  ComplexObject : public SceneObject {
  12569.    public:
  12570.  
  12571.     /*! @name Transform
  12572.     @{ */
  12573.     /*! */
  12574.     /// @}
  12575.  
  12576.  
  12577.     /*! @name Editing
  12578.     @{ */
  12579.     /*! */
  12580.     /// @}
  12581.  
  12582.  
  12583.     /*! @name Mounting
  12584.     @{ */
  12585.     /*! */
  12586.     /// @}
  12587.  
  12588.  
  12589.     /*! @name Ungrouped
  12590.     @{ */
  12591.     /*! */
  12592.     /// @}
  12593.  
  12594.  
  12595.     /*! @name Object
  12596.     @{ */
  12597.     /*! */
  12598.     /// @}
  12599.  
  12600.  
  12601.     /*! @name Editing
  12602.     @{ */
  12603.     /*! */
  12604.     /// @}
  12605.  
  12606.  
  12607.     /*! @name Persistence
  12608.     @{ */
  12609.     /*! */
  12610.     /// @}
  12611.  
  12612.  };
  12613.  
  12614.  class  ComplexObjectStateEvent {
  12615.    public:
  12616.  };
  12617.  
  12618.  class  ComplexObjectStatePatchEvent {
  12619.    public:
  12620.  };
  12621.  
  12622.  class  ObjectOwnerEvent {
  12623.    public:
  12624.  };
  12625.  
  12626.  class  ComplexObjectOwnersPatchEvent {
  12627.    public:
  12628.  };
  12629.  
  12630.  /*!
  12631.  @ingroup gameObjects
  12632.   */
  12633.  class  ShapeBase : public GameBase {
  12634.    public:
  12635.        /*! @brief Called on the server when the client has requested a FOV change.
  12636.  
  12637. When the client requests that its field of view should be changed (because they want to use a sniper scope, for example) this new FOV needs to be validated by the server.  This method is called if it exists (it is optional) to validate the requested FOV, and modify it if necessary.  This could be as simple as checking that the FOV falls within a correct range, to making sure that the FOV matches the capabilities of the current weapon.
  12638.  
  12639. Following this method, ShapeBase ensures that the given FOV still falls within the datablock's cameraMinFov and cameraMaxFov.  If that is good enough for your purposes, then you do not need to define the validateCameraFov() callback for your ShapeBase.
  12640.  
  12641. @param fov The FOV that has been requested by the client.
  12642. @return The FOV as validated by the server.
  12643.  
  12644. @see ShapeBaseData
  12645.  
  12646.  */
  12647.        float validateCameraFov( float fov );
  12648.  
  12649.     /*! @brief Add or remove this object from the scene.
  12650.  
  12651. When removed from the scene, the object will not be processed or rendered.
  12652. @param show False to hide the object, true to re-show it
  12653.  
  12654.  */
  12655.     virtual void setHidden(( bool show )) {}
  12656.     /*! Check if the object is hidden.
  12657. @return true if the object is hidden, false if visible.
  12658.  
  12659.  */
  12660.     virtual bool isHidden(()) {}
  12661.     /*! @brief Attach a sound to this shape and start playing it.
  12662.  
  12663. @param slot Audio slot index for the sound (valid range is 0 - 3)
  12664. @param track SFXTrack to play
  12665. @return true if the sound was attached successfully, false if failed
  12666.  
  12667. @see stopAudio()
  12668.  */
  12669.     virtual bool playAudio(( int slot, SFXTrack track )) {}
  12670.     /*! @brief Stop a sound started with playAudio.
  12671.  
  12672. @param slot audio slot index (started with playAudio)
  12673. @return true if the sound was stopped successfully, false if failed
  12674.  
  12675. @see playAudio()
  12676.  */
  12677.     virtual bool stopAudio(( int slot )) {}
  12678.     /*! @brief Mount a new Image.
  12679.  
  12680. @param image the Image to mount
  12681. @param slot Image slot to mount into (valid range is 0 - 3)
  12682. @param loaded initial loaded state for the Image
  12683. @param skinTag tagged string to reskin the mounted Image
  12684. @return true if successful, false if failed
  12685.  
  12686. @tsexample
  12687. %player.mountImage( PistolImage, 1 );
  12688. %player.mountImage( CrossbowImage, 0, false );
  12689. %player.mountImage( RocketLauncherImage, 0, true, 'blue' );
  12690. @endtsexample
  12691. @see unmountImage()
  12692. @see getMountedImage()
  12693. @see getPendingImage()
  12694. @see isImageMounted()
  12695.  */
  12696.     virtual bool mountImage(( ShapeBaseImageData image, int slot, bool loaded=true, string skinTag="" )) {}
  12697.     /*! @brief Unmount the mounted Image in the specified slot.
  12698.  
  12699. @param slot Image slot to unmount
  12700. @return true if successful, false if failed
  12701.  
  12702. @see mountImage()
  12703.  */
  12704.     virtual bool unmountImage(( int slot )) {}
  12705.     /*! @brief Get the Image mounted in the specified slot.
  12706.  
  12707. @param slot Image slot to query
  12708. @return ID of the ShapeBaseImageData datablock mounted in the slot, or 0 if no Image is mounted there.
  12709.  
  12710.  */
  12711.     virtual int getMountedImage(( int slot )) {}
  12712.     /*! @brief Get the Image that will be mounted next in the specified slot.
  12713.  
  12714. Calling mountImage when an Image is already mounted does one of two things: <ol><li>Mount the new Image immediately, the old Image is discarded and whatever state it was in is ignored.</li><li>If the current Image state does not allow Image changes, the new Image is marked as pending, and will not be mounted until the current state completes. eg. if the user changes weapons, you may wish to ensure that the current weapon firing state plays to completion first.</li></ol>
  12715. This command retrieves the ID of the pending Image (2nd case above).
  12716. @param slot Image slot to query
  12717. @return ID of the pending ShapeBaseImageData datablock, or 0 if none.
  12718.  
  12719.  */
  12720.     virtual int getPendingImage(( int slot )) {}
  12721.     /*! @brief Check if the current Image state is firing.
  12722.  
  12723. @param slot Image slot to query
  12724. @return true if the current Image state in this slot has the 'stateFire' flag set.
  12725.  */
  12726.     virtual bool isImageFiring(( int slot )) {}
  12727.     /*! @brief Check if the given datablock is mounted to any slot on this object.
  12728.  
  12729. @param image ShapeBaseImageData datablock to query
  12730. @return true if the Image is mounted to any slot, false otherwise.
  12731.  
  12732.  */
  12733.     virtual bool isImageMounted(( ShapeBaseImageData image )) {}
  12734.     /*! @brief Get the first slot the given datablock is mounted to on this object.
  12735.  
  12736. @param image ShapeBaseImageData datablock to query
  12737. @return index of the first slot the Image is mounted in, or -1 if the Image is not mounted in any slot on this object.
  12738.  
  12739.  */
  12740.     virtual int getMountSlot(( ShapeBaseImageData image )) {}
  12741.     /*! @brief Get the skin tag ID for the Image mounted in the specified slot.
  12742.  
  12743. @param slot Image slot to query
  12744. @return the skinTag value passed to mountImage when the image was mounted
  12745.  
  12746.  */
  12747.     virtual int getImageSkinTag(( int slot )) {}
  12748.     /*! @brief Get the name of the current state of the Image in the specified slot.
  12749.  
  12750. @param slot Image slot to query
  12751. @return name of the current Image state, or "Error" if slot is invalid
  12752.  
  12753.  */
  12754.     virtual string getImageState(( int slot )) {}
  12755.     /*! @brief Get the ammo state of the Image mounted in the specified slot.
  12756.  
  12757. @param slot Image slot to query
  12758. @return the Image's current ammo state
  12759.  
  12760.  */
  12761.     virtual bool getImageAmmo(( int slot )) {}
  12762.     /*! @brief Set the ammo state of the Image mounted in the specified slot.
  12763.  
  12764. @param slot Image slot to modify
  12765. @param state new ammo state for the Image
  12766. @return the Image's new ammo state
  12767.  
  12768.  */
  12769.     virtual bool setImageAmmo(( int slot, bool state )) {}
  12770.     /*! @brief Get the loaded state of the Image mounted in the specified slot.
  12771.  
  12772. @param slot Image slot to query
  12773. @return the Image's current loaded state
  12774.  
  12775.  */
  12776.     virtual bool getImageLoaded(( int slot )) {}
  12777.     /*! @brief Set the loaded state of the Image mounted in the specified slot.
  12778.  
  12779. @param slot Image slot to modify
  12780. @param state new loaded state for the Image
  12781. @return the Image's new loaded state
  12782.  
  12783.  */
  12784.     virtual bool setImageLoaded(( int slot, bool state )) {}
  12785.     /*! @brief Get the muzzle vector of the Image mounted in the specified slot.
  12786.  
  12787. If the Image shape contains a node called 'muzzlePoint', then the muzzle vector is the forward direction vector of that node's transform in world space. If no such node is specified, the slot's mount node is used instead.
  12788.  
  12789. If the correctMuzzleVector and firstPerson flags are set in the Image, the muzzle vector is computed to point at whatever object is right in front of the object's 'eye' node.
  12790. @param slot Image slot to query
  12791. @return the muzzle vector, or "0 1 0" if the slot is invalid
  12792.  
  12793.  */
  12794.     virtual string getMuzzleVector(( int slot )) {}
  12795.     /*! @brief Get the muzzle position of the Image mounted in the specified slot.
  12796.  
  12797. If the Image shape contains a node called 'muzzlePoint', then the muzzle position is the position of that node in world space. If no such node is specified, the slot's mount node is used instead.
  12798. @param slot Image slot to query
  12799. @return the muzzle position, or "0 0 0" if the slot is invalid
  12800.  
  12801.  */
  12802.     virtual string getMuzzlePoint(( int slot )) {}
  12803.     /*! @brief Get the world transform of the specified mount slot.
  12804.  
  12805. @param slot Image slot to query
  12806. @return the mount transform
  12807.  
  12808.  */
  12809.     virtual string getSlotTransform(( int slot )) {}
  12810.     /*! @brief Get the object's current velocity.
  12811.  
  12812. @return the current velocity
  12813.  
  12814.  */
  12815.     virtual string getVelocity(()) {}
  12816.     /*! @brief Set the object's velocity.
  12817.  
  12818. @param vel new velocity for the object
  12819. @return true
  12820.  
  12821.  */
  12822.     virtual bool setVelocity(( Point3F vel )) {}
  12823.     /*! @brief Apply an impulse to the object.
  12824.  
  12825. @param pos world position of the impulse
  12826. @param vec impulse momentum (velocity * mass)
  12827. @return true
  12828.  
  12829.  */
  12830.     virtual bool applyImpulse(( Point3F pos, Point3F vec )) {}
  12831.     /*! @brief Get the forward direction of the 'eye' for this object.
  12832.  
  12833. If the object model has a node called 'eye', this method will return that node's current forward direction vector, otherwise it will return the object's current forward direction vector.
  12834. @return the eye vector for this object
  12835. @see getEyePoint
  12836. @see getEyeTransform
  12837.  */
  12838.     virtual string getEyeVector(()) {}
  12839.     /*! @brief Get the position of the 'eye' for this object.
  12840.  
  12841. If the object model has a node called 'eye', this method will return that node's current world position, otherwise it will return the object's current world position.
  12842. @return the eye position for this object
  12843. @see getEyeVector
  12844. @see getEyeTransform
  12845.  */
  12846.     virtual string getEyePoint(()) {}
  12847.     /*! @brief Get the 'eye' transform for this object.
  12848.  
  12849. If the object model has a node called 'eye', this method will return that node's current transform, otherwise it will return the object's current transform.
  12850. @return the eye transform for this object
  12851. @see getEyeVector
  12852. @see getEyePoint
  12853.  */
  12854.     virtual string getEyeTransform(()) {}
  12855.     /*! @brief Set the object's current damage level.
  12856.  
  12857. @param level new damage level
  12858. @see getDamageLevel()
  12859. @see getDamagePercent()
  12860.  */
  12861.     virtual void setDamageLevel(( float level )) {}
  12862.     /*! @brief Get the object's current damage level.
  12863.  
  12864. @return damage level
  12865. @see setDamageLevel()
  12866.  */
  12867.     virtual float getDamageLevel(()) {}
  12868.     /*! @brief Get the object's current damage level as a percentage of maxDamage.
  12869.  
  12870. @return damageLevel / datablock.maxDamage
  12871. @see setDamageLevel()
  12872.  */
  12873.     virtual float getDamagePercent(()) {}
  12874.     /*! @brief Set the object's damage state.
  12875.  
  12876. @param state should be one of "Enabled", "Disabled", "Destroyed"
  12877. @return true if successful, false if failed
  12878. @see getDamageState()
  12879.  */
  12880.     virtual bool setDamageState(( string state )) {}
  12881.     /*! @brief Get the object's damage state.
  12882.  
  12883. @return the damage state; one of "Enabled", "Disabled", "Destroyed"
  12884. @see setDamageState()
  12885.  */
  12886.     virtual string getDamageState(()) {}
  12887.     /*! @brief Check if the object is in the Destroyed damage state.
  12888.  
  12889. @return true if damage state is "Destroyed", false if not
  12890. @see isDisabled()
  12891. @see isEnabled()
  12892.  */
  12893.     virtual bool isDestroyed(()) {}
  12894.     /*! @brief Check if the object is in the Disabled or Destroyed damage state.
  12895.  
  12896. @return true if damage state is not "Enabled", false if it is
  12897. @see isDestroyed()
  12898. @see isEnabled()
  12899.  */
  12900.     virtual bool isDisabled(()) {}
  12901.     /*! @brief Check if the object is in the Enabled damage state.
  12902.  
  12903. @return true if damage state is "Enabled", false if not
  12904. @see isDestroyed()
  12905. @see isDisabled()
  12906.  */
  12907.     virtual bool isEnabled(()) {}
  12908.     /*! @brief Increment the current damage level by the specified amount.
  12909.  
  12910. @param amount value to add to current damage level
  12911.  */
  12912.     virtual void applyDamage(( float amount, SimObjectId hit_author_sim_id )) {}
  12913.     /*! @brief Repair damage by the specified amount.
  12914.  
  12915. Note that the damage level is only reduced by repairRate per tick, so it may take several ticks for the total repair to complete.
  12916. @param amount total repair value (subtracted from damage level over time)
  12917.  */
  12918.     virtual void applyRepair(( float amount )) {}
  12919.     /*! @brief Set amount to repair damage by each tick.
  12920.  
  12921. Note that this value is separate to the repairRate field in ShapeBaseData. This value will be subtracted from the damage level each tick, whereas the ShapeBaseData field limits how much of the applyRepair value is subtracted each tick. Both repair types can be active at the same time.
  12922. @param rate value to subtract from damage level each tick (must be > 0)
  12923. @see getRepairRate()
  12924.  */
  12925.     virtual void setRepairRate(( float rate )) {}
  12926.     /*! @brief Get the per-tick repair amount.
  12927.  
  12928. @return the current value to be subtracted from damage level each tick
  12929. @see setRepairRate
  12930.  */
  12931.     virtual float getRepairRate(()) {}
  12932.     /*! @brief Check if this object can cloak.
  12933.  
  12934. @return true
  12935. @note Not implemented as it always returns true. */
  12936.     virtual bool canCloak(()) {}
  12937.     /*! @brief Set the cloaked state of this object.
  12938.  
  12939. When an object is cloaked it is not rendered.
  12940. @param cloak true to cloak the object, false to uncloak
  12941. @see isCloaked()
  12942.  */
  12943.     virtual void setCloaked(( bool cloak )) {}
  12944.     /*! @brief Check if this object is cloaked.
  12945.  
  12946. @return true if cloaked, false if not
  12947. @see setCloaked()
  12948.  */
  12949.     virtual bool isCloaked(()) {}
  12950.     /*! @brief Set the damage flash level.
  12951.  
  12952. Damage flash may be used as a postfx effect to flash the screen when the client is damaged.
  12953. @note Relies on the flash postFx.
  12954. @param level flash level (0-1)
  12955. @see getDamageFlash()
  12956.  */
  12957.     virtual void setDamageFlash(( float level )) {}
  12958.     /*! @brief Get the damage flash level.
  12959.  
  12960. @return flash level
  12961. @see setDamageFlash
  12962.  */
  12963.     virtual float getDamageFlash(()) {}
  12964.     /*! @brief Set the white-out level.
  12965.  
  12966. White-out may be used as a postfx effect to brighten the screen in response to a game event.
  12967. @note Relies on the flash postFx.
  12968. @param level flash level (0-1)
  12969. @see getWhiteOut()
  12970.  */
  12971.     virtual void setWhiteOut(( float level )) {}
  12972.     /*! @brief Get the white-out level.
  12973.  
  12974. @return white-out level
  12975. @see setWhiteOut
  12976.  */
  12977.     virtual float getWhiteOut(()) {}
  12978.     /*! @brief Returns the default vertical field of view in degrees for this object if used as a camera.
  12979.  
  12980. @return Default FOV
  12981.  */
  12982.     virtual float getDefaultCameraFov(()) {}
  12983.     /*! @brief Returns the vertical field of view in degrees for this object if used as a camera.
  12984.  
  12985. @return current FOV as defined in ShapeBaseData::cameraDefaultFov
  12986.  */
  12987.     virtual float getCameraFov(()) {}
  12988.     /*! @brief Set the vertical field of view in degrees for this object if used as a camera.
  12989.  
  12990. @param fov new FOV value
  12991.  */
  12992.     virtual void setCameraFov(( float fov )) {}
  12993.     /*! @brief Setup the invincible effect.
  12994.  
  12995. This effect is used for HUD feedback to the user that they are invincible.
  12996. @note Currently not implemented
  12997. @param time duration in seconds for the invincible effect
  12998. @param speed speed at which the invincible effect progresses
  12999.  */
  13000.     virtual void setInvincibleMode(( float time, float speed )) {}
  13001.     /*! @brief Set the damage direction vector.
  13002.  
  13003. Currently this is only used to initialise the explosion if this object is blown up.
  13004. @param vec damage direction vector
  13005.  
  13006. @tsexample
  13007. %obj.setDamageVector( "0 0 1" );
  13008. @endtsexample
  13009.  */
  13010.     virtual void setDamageVector(( Point3F vec )) {}
  13011.     /*! @brief Set the name of this shape.
  13012.  
  13013. @note This is the name of the shape object that is sent to the client, not the DTS or DAE model filename.
  13014. @param name new name for the shape
  13015.  
  13016. @see getShapeName()
  13017.  */
  13018.     virtual void setShapeName(( string name )) {}
  13019.     /*! @brief Get the name of the shape.
  13020.  
  13021. @note This is the name of the shape object that is sent to the client, not the DTS or DAE model filename.
  13022. @return the name of the shape
  13023.  
  13024. @see setShapeName()
  13025.  */
  13026.     virtual string getShapeName(()) {}
  13027.     /*! @brief Apply a new skin to this shape.
  13028.  
  13029. 'Skinning' the shape effectively renames the material targets, allowing different materials to be used on different instances of the same model.
  13030.  
  13031. @param name name of the skin to apply
  13032.  
  13033. @see skin
  13034. @see getSkinName()
  13035.  */
  13036.     virtual void setSkinName(( string name )) {}
  13037.     /*! @brief Get the name of the skin applied to this shape.
  13038.  
  13039. @return the name of the skin
  13040.  
  13041. @see skin
  13042. @see setSkinName()
  13043.  */
  13044.     virtual string getSkinName(()) {}
  13045.     /*! @brief Get the name of the indexed shape material.
  13046.  
  13047. @param index index of the material to get (valid range is 0 - getTargetCount()-1).
  13048. @return the name of the indexed material.
  13049.  
  13050. @see getTargetCount()
  13051.  */
  13052.     virtual string getTargetName(( int index )) {}
  13053.     /*! @brief Get the number of materials in the shape.
  13054.  
  13055. @return the number of materials in the shape.
  13056.  
  13057. @see getTargetName()
  13058.  */
  13059.     virtual int getTargetCount(()) {}
  13060.     /*! @brief Change one of the materials on the shape.
  13061.  
  13062. This method changes materials per mapTo with others. The material that is being replaced is mapped to unmapped_mat as a part of this transition.
  13063. @note Warning, right now this only sort of works. It doesn't do a live update like it should.
  13064. @param mapTo the name of the material target to remap (from getTargetName)
  13065. @param oldMat the old Material that was mapped
  13066. @param newMat the new Material to map
  13067.  
  13068. @tsexample
  13069. // remap the first material in the shape
  13070. %mapTo = %obj.getTargetName( 0 );
  13071. %obj.changeMaterial( %mapTo, 0, MyMaterial );
  13072. @endtsexample
  13073.  */
  13074.     virtual void changeMaterial(( string mapTo, Material oldMat, Material newMat )) {}
  13075.     /*! @brief Get the model filename used by this shape.
  13076.  
  13077. @return the shape filename
  13078.  
  13079.  */
  13080.     virtual string getModelFile(()) {}
  13081.  
  13082.     /*! @name Game
  13083.     @{ */
  13084.     /*! */
  13085.     /// @}
  13086.  
  13087.  
  13088.     /*! @name Transform
  13089.     @{ */
  13090.     /*! */
  13091.     /// @}
  13092.  
  13093.  
  13094.     /*! @name Editing
  13095.     @{ */
  13096.     /*! */
  13097.     /// @}
  13098.  
  13099.  
  13100.     /*! @name Mounting
  13101.     @{ */
  13102.     /*! */
  13103.     /// @}
  13104.  
  13105.  
  13106.     /*! @name Ungrouped
  13107.     @{ */
  13108.     /*! */
  13109.     /// @}
  13110.  
  13111.  
  13112.     /*! @name Object
  13113.     @{ */
  13114.     /*! */
  13115.     /// @}
  13116.  
  13117.  
  13118.     /*! @name Editing
  13119.     @{ */
  13120.     /*! */
  13121.     /// @}
  13122.  
  13123.  
  13124.     /*! @name Persistence
  13125.     @{ */
  13126.     /*! */
  13127.     /// @}
  13128.  
  13129.  };
  13130.  
  13131.  /*!
  13132.  @brief This is a base class for all "marker" related objets. It is a 3D representation of a point in the level.
  13133.  
  13134.  The main use of a MissionMarker is to represent a point in 3D space with a mesh and basic ShapeBase information. If you simply need to mark a spot in your level, with no overhead from additional fields, this is a useful object.
  13135.  
  13136.  @tsexample
  13137.  new MissionMarker()
  13138.  {
  13139.     dataBlock = "WayPointMarker";
  13140.     position = "295.699 -171.817 280.124";
  13141.     rotation = "0 0 -1 13.8204";
  13142.     scale = "1 1 1";
  13143.     isRenderEnabled = "true";
  13144.     canSaveDynamicFields = "1";
  13145.     enabled = "1";
  13146.  };
  13147.  @endtsexample
  13148.  
  13149.  @note MissionMarkers will not add themselves to the scene except when in the editor.
  13150.  
  13151.  @see MissionMarkerData
  13152.  
  13153.  @see SpawnSphere
  13154.  
  13155.  @see WayPoint
  13156.  
  13157.  @ingroup enviroMisc
  13158.   */
  13159.  class  MissionMarker : public ShapeBase {
  13160.    public:
  13161.  
  13162.     /*! @name Game
  13163.     @{ */
  13164.     /*! */
  13165.     /// @}
  13166.  
  13167.  
  13168.     /*! @name Transform
  13169.     @{ */
  13170.     /*! */
  13171.     /// @}
  13172.  
  13173.  
  13174.     /*! @name Editing
  13175.     @{ */
  13176.     /*! */
  13177.     /// @}
  13178.  
  13179.  
  13180.     /*! @name Mounting
  13181.     @{ */
  13182.     /*! */
  13183.     /// @}
  13184.  
  13185.  
  13186.     /*! @name Ungrouped
  13187.     @{ */
  13188.     /*! */
  13189.     /// @}
  13190.  
  13191.  
  13192.     /*! @name Object
  13193.     @{ */
  13194.     /*! */
  13195.     /// @}
  13196.  
  13197.  
  13198.     /*! @name Editing
  13199.     @{ */
  13200.     /*! */
  13201.     /// @}
  13202.  
  13203.  
  13204.     /*! @name Persistence
  13205.     @{ */
  13206.     /*! */
  13207.     /// @}
  13208.  
  13209.  };
  13210.  
  13211.  /*!
  13212.  @brief Special type of marker, distinguished by a name and team ID number
  13213.  
  13214.  The original Torque engines were built from a multi-player game called Tribes. The Tribes series featured various team based game modes, such as capture the flag. The WayPoint class survived the conversion from game (Tribes) to game engine (Torque).
  13215.  
  13216.  Essentially, this is a MissionMarker with the addition of two variables: markerName and team. Whenever a WayPoint is created, it is added to a unique global list called WayPointSet. You can iterate through this set, seeking out specific markers determined by their markerName and team ID. This avoids the overhead of constantly calling commandToClient and commandToServer to determine a WayPoint object's name, unique ID, etc.
  13217.  
  13218.  @note The <i>markerName<i> field was previously called <i>name</i>, but was changed because this conflicted with the SimObject name field. Existing scripts that relied on the WayPoint <i>name</i> field will need to be updated.
  13219.  
  13220.  @tsexample
  13221.  new WayPoint()
  13222.  {
  13223.     team = "1";
  13224.     dataBlock = "WayPointMarker";
  13225.     position = "-0.0224786 1.53471 2.93219";
  13226.     rotation = "1 0 0 0";
  13227.     scale = "1 1 1";
  13228.     canSave = "1";
  13229.     canSaveDynamicFields = "1";
  13230.  };
  13231.  @endtsexample
  13232.  
  13233.  @see MissionMarker
  13234.  
  13235.  @see MissionMarkerData
  13236.  
  13237.  @ingroup enviroMisc
  13238.   */
  13239.  class  WayPoint : public MissionMarker {
  13240.    public:
  13241.  
  13242.     /*! @name Misc
  13243.     @{ */
  13244.     /*! */
  13245.     /*!
  13246.     Unique name representing this waypoint
  13247.    
  13248.      */
  13249.     caseString markerName;
  13250.     /*!
  13251.     Unique numerical ID assigned to this waypoint, or set of waypoints
  13252.    
  13253.      */
  13254.     WayPointTeam team;
  13255.     /// @}
  13256.  
  13257.  
  13258.     /*! @name Game
  13259.     @{ */
  13260.     /*! */
  13261.     /// @}
  13262.  
  13263.  
  13264.     /*! @name Transform
  13265.     @{ */
  13266.     /*! */
  13267.     /// @}
  13268.  
  13269.  
  13270.     /*! @name Editing
  13271.     @{ */
  13272.     /*! */
  13273.     /// @}
  13274.  
  13275.  
  13276.     /*! @name Mounting
  13277.     @{ */
  13278.     /*! */
  13279.     /// @}
  13280.  
  13281.  
  13282.     /*! @name Ungrouped
  13283.     @{ */
  13284.     /*! */
  13285.     /// @}
  13286.  
  13287.  
  13288.     /*! @name Object
  13289.     @{ */
  13290.     /*! */
  13291.     /// @}
  13292.  
  13293.  
  13294.     /*! @name Editing
  13295.     @{ */
  13296.     /*! */
  13297.     /// @}
  13298.  
  13299.  
  13300.     /*! @name Persistence
  13301.     @{ */
  13302.     /*! */
  13303.     /// @}
  13304.  
  13305.  };
  13306.  
  13307.  /*!
  13308.  @brief Special type of mission marker which allows a level editor's camera to jump to specific points.
  13309.  
  13310.  For Torque 3D editors only, not for actual game development
  13311.  
  13312.   */
  13313.  class  CameraBookmark : public MissionMarker {
  13314.    public:
  13315.  
  13316.     /*! @name Game
  13317.     @{ */
  13318.     /*! */
  13319.     /// @}
  13320.  
  13321.  
  13322.     /*! @name Transform
  13323.     @{ */
  13324.     /*! */
  13325.     /// @}
  13326.  
  13327.  
  13328.     /*! @name Editing
  13329.     @{ */
  13330.     /*! */
  13331.     /// @}
  13332.  
  13333.  
  13334.     /*! @name Mounting
  13335.     @{ */
  13336.     /*! */
  13337.     /// @}
  13338.  
  13339.  
  13340.     /*! @name Ungrouped
  13341.     @{ */
  13342.     /*! */
  13343.     /// @}
  13344.  
  13345.  
  13346.     /*! @name Object
  13347.     @{ */
  13348.     /*! */
  13349.     /// @}
  13350.  
  13351.  
  13352.     /*! @name Editing
  13353.     @{ */
  13354.     /*! */
  13355.     /// @}
  13356.  
  13357.  
  13358.     /*! @name Persistence
  13359.     @{ */
  13360.     /*! */
  13361.     /// @}
  13362.  
  13363.  };
  13364.  
  13365.  class  OcclusionVolume : public SceneObject {
  13366.    public:
  13367.  
  13368.     /*! @name Internal
  13369.     @{ */
  13370.     /*! */
  13371.     /*!
  13372.     For internal use only.
  13373.    
  13374.      */
  13375.     string plane;
  13376.     /*!
  13377.     For internal use only.
  13378.    
  13379.      */
  13380.     string point;
  13381.     /*!
  13382.     For internal use only.
  13383.    
  13384.      */
  13385.     string edge;
  13386.     /// @}
  13387.  
  13388.  
  13389.     /*! @name Transform
  13390.     @{ */
  13391.     /*! */
  13392.     /// @}
  13393.  
  13394.  
  13395.     /*! @name Editing
  13396.     @{ */
  13397.     /*! */
  13398.     /// @}
  13399.  
  13400.  
  13401.     /*! @name Mounting
  13402.     @{ */
  13403.     /*! */
  13404.     /// @}
  13405.  
  13406.  
  13407.     /*! @name Ungrouped
  13408.     @{ */
  13409.     /*! */
  13410.     /// @}
  13411.  
  13412.  
  13413.     /*! @name Object
  13414.     @{ */
  13415.     /*! */
  13416.     /// @}
  13417.  
  13418.  
  13419.     /*! @name Editing
  13420.     @{ */
  13421.     /*! */
  13422.     /// @}
  13423.  
  13424.  
  13425.     /*! @name Persistence
  13426.     @{ */
  13427.     /*! */
  13428.     /// @}
  13429.  
  13430.  };
  13431.  
  13432.  /*!
  13433.  @brief General interface to control a PathCamera object from the script level.
  13434.  @see PathCamera
  13435.  @tsexample
  13436.  datablock PathCameraData(LoopingCam)
  13437.     {
  13438.         mode = "";
  13439.     };
  13440.  @endtsexample
  13441.  @ingroup PathCameras
  13442.  @ingroup Datablocks
  13443.   */
  13444.  class  PathCameraData : public ShapeBaseData {
  13445.    public:
  13446.  
  13447.     /*! @name Shadows
  13448.     @{ */
  13449.     /*! */
  13450.     /// @}
  13451.  
  13452.  
  13453.     /*! @name Render
  13454.     @{ */
  13455.     /*! */
  13456.     /// @}
  13457.  
  13458.  
  13459.     /*! @name Destruction
  13460.    
  13461.     Parameters related to the destruction effects of this object.
  13462.     @{ */
  13463.     /*! */
  13464.     /// @}
  13465.  
  13466.  
  13467.     /*! @name Physics
  13468.     @{ */
  13469.     /*! */
  13470.     /// @}
  13471.  
  13472.  
  13473.     /*! @name Damage/Energy
  13474.     @{ */
  13475.     /*! */
  13476.     /// @}
  13477.  
  13478.  
  13479.     /*! @name Camera
  13480.    
  13481.     The settings used by the shape when it is the camera.
  13482.     @{ */
  13483.     /*! */
  13484.     /// @}
  13485.  
  13486.  
  13487.     /*! @name Scripting
  13488.     @{ */
  13489.     /*! */
  13490.     /// @}
  13491.  
  13492.  
  13493.     /*! @name Ungrouped
  13494.     @{ */
  13495.     /*! */
  13496.     /// @}
  13497.  
  13498.  
  13499.     /*! @name Object
  13500.     @{ */
  13501.     /*! */
  13502.     /// @}
  13503.  
  13504.  
  13505.     /*! @name Editing
  13506.     @{ */
  13507.     /*! */
  13508.     /// @}
  13509.  
  13510.  
  13511.     /*! @name Persistence
  13512.     @{ */
  13513.     /*! */
  13514.     /// @}
  13515.  
  13516.  };
  13517.  
  13518.  class  DbgHitTrackEvent {
  13519.    public:
  13520.  };
  13521.  
  13522.  class  PlayerInputEvent {
  13523.    public:
  13524.  };
  13525.  
  13526.  class  TimeTrackedNetEvent {
  13527.    public:
  13528.  };
  13529.  
  13530.  class  ImageFireEvent : public TimeTrackedNetEvent {
  13531.    public:
  13532.  };
  13533.  
  13534.  class  PlayerHealthEvent {
  13535.    public:
  13536.  };
  13537.  
  13538.  class  CharacterParameter_SmoothChange_Event {
  13539.    public:
  13540.  };
  13541.  
  13542.  class  PlayerTitleEvent {
  13543.    public:
  13544.  };
  13545.  
  13546.  class  WeaponHitOccured_ServerToClientEvent {
  13547.    public:
  13548.  };
  13549.  
  13550.  class  ImageStates_ServerToClientEvent {
  13551.    public:
  13552.  };
  13553.  
  13554.  class  SoundEvent {
  13555.    public:
  13556.  };
  13557.  
  13558.  class  ObjEffectsEvent {
  13559.    public:
  13560.  };
  13561.  
  13562.  class  GroundEffectEvent {
  13563.    public:
  13564.  };
  13565.  
  13566.  class  HitboxDebugEvent {
  13567.    public:
  13568.  };
  13569.  
  13570.  /*!
  13571.  @brief Lighting object which emits conical light in a direction.
  13572.  
  13573.  SpotLight is one of the two types of lighting objects that can be added to a Torque 3D level, the other being PointLight. Unlike directional or point lights, the SpotLights emits lighting in a specific direction within a cone. The distance of the cone is controlled by the SpotLight::range variable.
  13574.  
  13575.  @tsexample
  13576.  // Declaration of a point light in script, or created by World Editor
  13577.  new SpotLight(SampleSpotLight)
  13578.  {
  13579.     range = "10";
  13580.     innerAngle = "40";
  13581.     outerAngle = "45";
  13582.     isEnabled = "1";
  13583.     color = "1 1 1 1";
  13584.     brightness = "1";
  13585.     castShadows = "0";
  13586.     priority = "1";
  13587.     animate = "1";
  13588.     animationPeriod = "1";
  13589.     animationPhase = "1";
  13590.     flareType = "LightFlareExample0";
  13591.     flareScale = "1";
  13592.     attenuationRatio = "0 1 1";
  13593.     shadowType = "Spot";
  13594.     texSize = "512";
  13595.     overDarkFactor = "2000 1000 500 100";
  13596.     shadowDistance = "400";
  13597.     shadowSoftness = "0.15";
  13598.     numSplits = "1";
  13599.     logWeight = "0.91";
  13600.     fadeStartDistance = "0";
  13601.     lastSplitTerrainOnly = "0";
  13602.     representedInLightmap = "0";
  13603.     shadowDarkenColor = "0 0 0 -1";
  13604.     includeLightmappedGeometryInShadow = "0";
  13605.     position = "-29.4362 -5.86289 5.58602";
  13606.     rotation = "1 0 0 0";
  13607.  };
  13608.  @endtsexample
  13609.  
  13610.  @see LightBase
  13611.  
  13612.  @see PointLight
  13613.  
  13614.  @ingroup Lighting
  13615.   */
  13616.  class  SpotLight : public LightBase {
  13617.    public:
  13618.  
  13619.     /*! @name Light
  13620.     @{ */
  13621.     /*! */
  13622.     /*!
  13623.      */
  13624.     float range;
  13625.     /*!
  13626.      */
  13627.     float innerAngle;
  13628.     /*!
  13629.      */
  13630.     float outerAngle;
  13631.     /// @}
  13632.  
  13633.  
  13634.     /*! @name Light
  13635.     @{ */
  13636.     /*! */
  13637.     /// @}
  13638.  
  13639.  
  13640.     /*! @name Light Animation
  13641.     @{ */
  13642.     /*! */
  13643.     /// @}
  13644.  
  13645.  
  13646.     /*! @name Misc
  13647.     @{ */
  13648.     /*! */
  13649.     /// @}
  13650.  
  13651.  
  13652.     /*! @name Advanced Lighting
  13653.     @{ */
  13654.     /*! */
  13655.     /// @}
  13656.  
  13657.  
  13658.     /*! @name Advanced Lighting Lightmap
  13659.     @{ */
  13660.     /*! */
  13661.     /// @}
  13662.  
  13663.  
  13664.     /*! @name Transform
  13665.     @{ */
  13666.     /*! */
  13667.     /// @}
  13668.  
  13669.  
  13670.     /*! @name Editing
  13671.     @{ */
  13672.     /*! */
  13673.     /// @}
  13674.  
  13675.  
  13676.     /*! @name Mounting
  13677.     @{ */
  13678.     /*! */
  13679.     /// @}
  13680.  
  13681.  
  13682.     /*! @name Ungrouped
  13683.     @{ */
  13684.     /*! */
  13685.     /// @}
  13686.  
  13687.  
  13688.     /*! @name Object
  13689.     @{ */
  13690.     /*! */
  13691.     /// @}
  13692.  
  13693.  
  13694.     /*! @name Editing
  13695.     @{ */
  13696.     /*! */
  13697.     /// @}
  13698.  
  13699.  
  13700.     /*! @name Persistence
  13701.     @{ */
  13702.     /*! */
  13703.     /// @}
  13704.  
  13705.  };
  13706.  
  13707.  /*!
  13708.  @brief The most basic 3D shape with a datablock available in Torque 3D.
  13709.  
  13710.  When it comes to placing 3D objects in the scene, you technically have two options:
  13711.  
  13712.  1. TSStatic objects
  13713.  
  13714.  2. ShapeBase derived objects
  13715.  
  13716.  Since ShapeBase and ShapeBaseData are not meant to be instantiated in script, you will use one of its child classes instead. Several game related objects are derived from ShapeBase: Player, Vehicle, Item, and so on.
  13717.  
  13718.  When you need a 3D object with datablock capabilities, you will use an object derived from ShapeBase. When you need an object with extremely low overhead, and with no other purpose than to be a 3D object in the scene, you will use TSStatic.
  13719.  
  13720.  The most basic child of ShapeBase is StaticShape. It does not introduce any of the additional functionality you see in Player, Item, Vehicle or the other game play heavy classes. At its core, it is comparable to a TSStatic, but with a datbalock.  Having a datablock provides a location for common variables as well as having access to various ShapeBaseData, GameBaseData and SimDataBlock callbacks.
  13721.  
  13722.  @tsexample
  13723.  // Create a StaticShape using a datablock
  13724.  datablock StaticShapeData(BasicShapeData)
  13725.  {
  13726.     shapeFile = "art/shapes/items/kit/healthkit.dts";
  13727.     testVar = "Simple string, not a stock variable";
  13728.  };
  13729.  
  13730.  new StaticShape()
  13731.  {
  13732.     dataBlock = "BasicShapeData";
  13733.     position = "0.0 0.0 0.0";
  13734.     rotation = "1 0 0 0";
  13735.     scale = "1 1 1";
  13736.  };
  13737.  @endtsexample
  13738.  
  13739.  @see StaticShapeData
  13740.  @see ShapeBase
  13741.  @see TSStatic
  13742.  
  13743.  @ingroup gameObjects
  13744.   */
  13745.  class  StaticShape : public ShapeBase {
  13746.    public:
  13747.  
  13748.     /*! @name Game
  13749.     @{ */
  13750.     /*! */
  13751.     /// @}
  13752.  
  13753.  
  13754.     /*! @name Transform
  13755.     @{ */
  13756.     /*! */
  13757.     /// @}
  13758.  
  13759.  
  13760.     /*! @name Editing
  13761.     @{ */
  13762.     /*! */
  13763.     /// @}
  13764.  
  13765.  
  13766.     /*! @name Mounting
  13767.     @{ */
  13768.     /*! */
  13769.     /// @}
  13770.  
  13771.  
  13772.     /*! @name Ungrouped
  13773.     @{ */
  13774.     /*! */
  13775.     /// @}
  13776.  
  13777.  
  13778.     /*! @name Object
  13779.     @{ */
  13780.     /*! */
  13781.     /// @}
  13782.  
  13783.  
  13784.     /*! @name Editing
  13785.     @{ */
  13786.     /*! */
  13787.     /// @}
  13788.  
  13789.  
  13790.     /*! @name Persistence
  13791.     @{ */
  13792.     /*! */
  13793.     /// @}
  13794.  
  13795.  };
  13796.  
  13797.  class  StaticShapeWithDoorData : public StaticShapeData {
  13798.    public:
  13799.  
  13800.     /*! @name Door
  13801.     @{ */
  13802.     /*! */
  13803.     /*!
  13804.    
  13805.    
  13806.      */
  13807.     string openSequenceName;
  13808.     /*!
  13809.    
  13810.    
  13811.      */
  13812.     string closeSequenceName;
  13813.     /// @}
  13814.  
  13815.  
  13816.     /*! @name Shadows
  13817.     @{ */
  13818.     /*! */
  13819.     /// @}
  13820.  
  13821.  
  13822.     /*! @name Render
  13823.     @{ */
  13824.     /*! */
  13825.     /// @}
  13826.  
  13827.  
  13828.     /*! @name Destruction
  13829.    
  13830.     Parameters related to the destruction effects of this object.
  13831.     @{ */
  13832.     /*! */
  13833.     /// @}
  13834.  
  13835.  
  13836.     /*! @name Physics
  13837.     @{ */
  13838.     /*! */
  13839.     /// @}
  13840.  
  13841.  
  13842.     /*! @name Damage/Energy
  13843.     @{ */
  13844.     /*! */
  13845.     /// @}
  13846.  
  13847.  
  13848.     /*! @name Camera
  13849.    
  13850.     The settings used by the shape when it is the camera.
  13851.     @{ */
  13852.     /*! */
  13853.     /// @}
  13854.  
  13855.  
  13856.     /*! @name Scripting
  13857.     @{ */
  13858.     /*! */
  13859.     /// @}
  13860.  
  13861.  
  13862.     /*! @name Ungrouped
  13863.     @{ */
  13864.     /*! */
  13865.     /// @}
  13866.  
  13867.  
  13868.     /*! @name Object
  13869.     @{ */
  13870.     /*! */
  13871.     /// @}
  13872.  
  13873.  
  13874.     /*! @name Editing
  13875.     @{ */
  13876.     /*! */
  13877.     /// @}
  13878.  
  13879.  
  13880.     /*! @name Persistence
  13881.     @{ */
  13882.     /*! */
  13883.     /// @}
  13884.  
  13885.  };
  13886.  
  13887.  class  StaticShapeWithDoor : public StaticShape {
  13888.    public:
  13889.  
  13890.     /*! @name Game
  13891.     @{ */
  13892.     /*! */
  13893.     /// @}
  13894.  
  13895.  
  13896.     /*! @name Transform
  13897.     @{ */
  13898.     /*! */
  13899.     /// @}
  13900.  
  13901.  
  13902.     /*! @name Editing
  13903.     @{ */
  13904.     /*! */
  13905.     /// @}
  13906.  
  13907.  
  13908.     /*! @name Mounting
  13909.     @{ */
  13910.     /*! */
  13911.     /// @}
  13912.  
  13913.  
  13914.     /*! @name Ungrouped
  13915.     @{ */
  13916.     /*! */
  13917.     /// @}
  13918.  
  13919.  
  13920.     /*! @name Object
  13921.     @{ */
  13922.     /*! */
  13923.     /// @}
  13924.  
  13925.  
  13926.     /*! @name Editing
  13927.     @{ */
  13928.     /*! */
  13929.     /// @}
  13930.  
  13931.  
  13932.     /*! @name Persistence
  13933.     @{ */
  13934.     /*! */
  13935.     /// @}
  13936.  
  13937.  };
  13938.  
  13939.  /*!
  13940.  @brief All decals are managed by the decal manager. Provides a few global variables for managing
  13941.         the number of decals that are visible at any one time and the lifetime of the decal.
  13942.  
  13943.  @see $pref::Decals::enabled
  13944.  
  13945.  @see $pref::Decals::lifeTimeScale
  13946.  
  13947.  @see $Decals::poolBuffers
  13948.  
  13949.  @see decalManagerSave
  13950.  
  13951.  @see decalLoadFile
  13952.  
  13953.  @see decalManagerDirty
  13954.  
  13955.  @see decalManagerClear
  13956.  
  13957.  @see decalManagerAddDecal
  13958.  
  13959.  @see decalManagerRemoveDecal
  13960.  
  13961.  @ingroup FX
  13962.   */
  13963.  class  DecalManager : public SceneObject {
  13964.    public:
  13965.  
  13966.     /*! @name Transform
  13967.     @{ */
  13968.     /*! */
  13969.     /// @}
  13970.  
  13971.  
  13972.     /*! @name Editing
  13973.     @{ */
  13974.     /*! */
  13975.     /// @}
  13976.  
  13977.  
  13978.     /*! @name Mounting
  13979.     @{ */
  13980.     /*! */
  13981.     /// @}
  13982.  
  13983.  
  13984.     /*! @name Ungrouped
  13985.     @{ */
  13986.     /*! */
  13987.     /// @}
  13988.  
  13989.  
  13990.     /*! @name Object
  13991.     @{ */
  13992.     /*! */
  13993.     /// @}
  13994.  
  13995.  
  13996.     /*! @name Editing
  13997.     @{ */
  13998.     /*! */
  13999.     /// @}
  14000.  
  14001.  
  14002.     /*! @name Persistence
  14003.     @{ */
  14004.     /*! */
  14005.     /// @}
  14006.  
  14007.  };
  14008.  
  14009.  /*!
  14010.  @brief A basic health bar. Shows the damage value of the current PlayerObjectType control object.
  14011.  
  14012.  This gui displays the damage value of the current PlayerObjectType control object. The gui can be set to pulse if the health value drops below a set value. This control only works if a server connection exists and it's control object is a PlayerObjectType. If either of these requirements is false, the control is not rendered.
  14013.  
  14014.  @tsexample
  14015.  
  14016.   new GuiHealthBarHud(){
  14017.     fillColor = "0.0 1.0 0.0 1.0"; // Fills with a solid green color
  14018.     frameColor = "1.0 1.0 1.0 1.0"; // Solid white frame color
  14019.     damageFillColor = "1.0 0.0 0.0 1.0"; // Fills with a solid red color
  14020.     pulseRate = "500";
  14021.     pulseThreshold = "0.25";
  14022.     showFill = "true";
  14023.     showFrame = "true";
  14024.     displayEnergy = "false";
  14025.  };
  14026.  @endtsexample
  14027.  
  14028.  @ingroup GuiGame
  14029.   */
  14030.  class  GuiHealthBarHud : public GuiControl {
  14031.    public:
  14032.  
  14033.     /*! @name Colors
  14034.     @{ */
  14035.     /*! */
  14036.     /*!
  14037.     Standard color for the background of the control.
  14038.    
  14039.      */
  14040.     ColorF fillColor;
  14041.     /*!
  14042.     Color for the control's frame.
  14043.    
  14044.      */
  14045.     ColorF frameColor;
  14046.     /*!
  14047.     As the health bar depletes, this color will represent the health loss amount.
  14048.    
  14049.      */
  14050.     ColorF damageFillColor;
  14051.     /// @}
  14052.  
  14053.  
  14054.     /*! @name Pulse
  14055.     @{ */
  14056.     /*! */
  14057.     /*!
  14058.     Speed at which the control will pulse.
  14059.    
  14060.      */
  14061.     int pulseRate;
  14062.     /*!
  14063.     Health level the control must be under before the control will pulse.
  14064.    
  14065.      */
  14066.     float pulseThreshold;
  14067.     /// @}
  14068.  
  14069.  
  14070.     /*! @name Misc
  14071.     @{ */
  14072.     /*! */
  14073.     /*!
  14074.     If true, we draw the background color of the control.
  14075.    
  14076.      */
  14077.     bool showFill;
  14078.     /*!
  14079.     If true, we draw the frame of the control.
  14080.    
  14081.      */
  14082.     bool showFrame;
  14083.     /*!
  14084.     If true, display the energy value rather than the damage value.
  14085.    
  14086.      */
  14087.     bool displayEnergy;
  14088.     /// @}
  14089.  
  14090.  
  14091.     /*! @name Layout
  14092.     @{ */
  14093.     /*! */
  14094.     /// @}
  14095.  
  14096.  
  14097.     /*! @name Control
  14098.     @{ */
  14099.     /*! */
  14100.     /// @}
  14101.  
  14102.  
  14103.     /*! @name ToolTip
  14104.     @{ */
  14105.     /*! */
  14106.     /// @}
  14107.  
  14108.  
  14109.     /*! @name Editing
  14110.     @{ */
  14111.     /*! */
  14112.     /// @}
  14113.  
  14114.  
  14115.     /*! @name Localization
  14116.     @{ */
  14117.     /*! */
  14118.     /// @}
  14119.  
  14120.  
  14121.     /*! @name Ungrouped
  14122.     @{ */
  14123.     /*! */
  14124.     /// @}
  14125.  
  14126.  
  14127.     /*! @name Object
  14128.     @{ */
  14129.     /*! */
  14130.     /// @}
  14131.  
  14132.  
  14133.     /*! @name Editing
  14134.     @{ */
  14135.     /*! */
  14136.     /// @}
  14137.  
  14138.  
  14139.     /*! @name Persistence
  14140.     @{ */
  14141.     /*! */
  14142.     /// @}
  14143.  
  14144.  };
  14145.  
  14146.  /*!
  14147.  @brief Displays name and damage of ShapeBase objects in its bounds. Must be a child of a GuiTSCtrl and a server connection must be present.
  14148.  
  14149.  This control displays the name and damage value of all named ShapeBase objects on the client. The name and damage of objects within the control's display area are overlayed above the object.
  14150.  
  14151.  This GUI control must be a child of a TSControl, and a server connection and control object must be present. This is a stand-alone control and relies only on the standard base GuiControl.
  14152.  
  14153.  @tsexample
  14154.  
  14155.   new GuiShapeNameHud(){
  14156.     fillColor = "0.0 1.0 0.0 1.0"; // Fills with a solid green color
  14157.     frameColor = "1.0 1.0 1.0 1.0"; // Solid white frame color
  14158.     textColor = "1.0 1.0 1.0 1.0"; // Solid white text Color
  14159.     showFill = "true";
  14160.     showFrame = "true";
  14161.     verticalOffset = "0.15";
  14162.     distanceFade = "15.0";
  14163.  };
  14164.  @endtsexample
  14165.  
  14166.  @ingroup GuiGame
  14167.   */
  14168.  class  GuiShapeNameHud : public GuiControl {
  14169.    public:
  14170.  
  14171.     /*! @name Colors
  14172.     @{ */
  14173.     /*! */
  14174.     /*!
  14175.     Standard color for the background of the control.
  14176.    
  14177.      */
  14178.     ColorF fillColor;
  14179.     /*!
  14180.     Color for the control's frame.
  14181.    
  14182.      */
  14183.     ColorF frameColor;
  14184.     /*!
  14185.     Color for the text on this control.
  14186.    
  14187.      */
  14188.     ColorF textColor;
  14189.     /// @}
  14190.  
  14191.  
  14192.     /*! @name Misc
  14193.     @{ */
  14194.     /*! */
  14195.     /*!
  14196.     If true, we draw the background color of the control.
  14197.    
  14198.      */
  14199.     bool showFill;
  14200.     /*!
  14201.     If true, we draw the frame of the control.
  14202.    
  14203.      */
  14204.     bool showFrame;
  14205.     /*!
  14206.     Amount to vertically offset the control in relation to the ShapeBase object in focus.
  14207.    
  14208.      */
  14209.     float verticalOffset;
  14210.     /*!
  14211.     Visibility distance (how far the player must be from the ShapeBase object in focus) for this control to render.
  14212.    
  14213.      */
  14214.     float distanceFade;
  14215.     /// @}
  14216.  
  14217.  
  14218.     /*! @name Layout
  14219.     @{ */
  14220.     /*! */
  14221.     /// @}
  14222.  
  14223.  
  14224.     /*! @name Control
  14225.     @{ */
  14226.     /*! */
  14227.     /// @}
  14228.  
  14229.  
  14230.     /*! @name ToolTip
  14231.     @{ */
  14232.     /*! */
  14233.     /// @}
  14234.  
  14235.  
  14236.     /*! @name Editing
  14237.     @{ */
  14238.     /*! */
  14239.     /// @}
  14240.  
  14241.  
  14242.     /*! @name Localization
  14243.     @{ */
  14244.     /*! */
  14245.     /// @}
  14246.  
  14247.  
  14248.     /*! @name Ungrouped
  14249.     @{ */
  14250.     /*! */
  14251.     /// @}
  14252.  
  14253.  
  14254.     /*! @name Object
  14255.     @{ */
  14256.     /*! */
  14257.     /// @}
  14258.  
  14259.  
  14260.     /*! @name Editing
  14261.     @{ */
  14262.     /*! */
  14263.     /// @}
  14264.  
  14265.  
  14266.     /*! @name Persistence
  14267.     @{ */
  14268.     /*! */
  14269.     /// @}
  14270.  
  14271.  };
  14272.  
  14273.  /*!
  14274.  @brief The emitter for an explosion, whose properties are defined in an ExplosionData object.@ingroup FX
  14275.   */
  14276.  class  Explosion : public GameBase {
  14277.    public:
  14278.  
  14279.     /*! @name Game
  14280.     @{ */
  14281.     /*! */
  14282.     /// @}
  14283.  
  14284.  
  14285.     /*! @name Transform
  14286.     @{ */
  14287.     /*! */
  14288.     /// @}
  14289.  
  14290.  
  14291.     /*! @name Editing
  14292.     @{ */
  14293.     /*! */
  14294.     /// @}
  14295.  
  14296.  
  14297.     /*! @name Mounting
  14298.     @{ */
  14299.     /*! */
  14300.     /// @}
  14301.  
  14302.  
  14303.     /*! @name Ungrouped
  14304.     @{ */
  14305.     /*! */
  14306.     /// @}
  14307.  
  14308.  
  14309.     /*! @name Object
  14310.     @{ */
  14311.     /*! */
  14312.     /// @}
  14313.  
  14314.  
  14315.     /*! @name Editing
  14316.     @{ */
  14317.     /*! */
  14318.     /// @}
  14319.  
  14320.  
  14321.     /*! @name Persistence
  14322.     @{ */
  14323.     /*! */
  14324.     /// @}
  14325.  
  14326.  };
  14327.  
  14328.  /*!
  14329.  @brief This object is responsible for all particle emissions.
  14330.  
  14331.  Main interface for creating particles. The emitter does _not_ track changes in axis or velocity over the course of a single update, so this should be called at a fairly fine grain. The emitter will potentially track the last particle to be created into the next call to this function in order to create a uniformly random time distribution of the particles.
  14332.  
  14333.  If the object to which the emitter is attached is in motion, it should try to ensure that for call (n+1) to this function, start is equal to the end from call (n). This will ensure a uniform spatial distribution.
  14334.  
  14335.  @ingroup FX
  14336.   */
  14337.  class  ParticleEmitter : public GameBase {
  14338.    public:
  14339.  
  14340.     /*! @name Game
  14341.     @{ */
  14342.     /*! */
  14343.     /// @}
  14344.  
  14345.  
  14346.     /*! @name Transform
  14347.     @{ */
  14348.     /*! */
  14349.     /// @}
  14350.  
  14351.  
  14352.     /*! @name Editing
  14353.     @{ */
  14354.     /*! */
  14355.     /// @}
  14356.  
  14357.  
  14358.     /*! @name Mounting
  14359.     @{ */
  14360.     /*! */
  14361.     /// @}
  14362.  
  14363.  
  14364.     /*! @name Ungrouped
  14365.     @{ */
  14366.     /*! */
  14367.     /// @}
  14368.  
  14369.  
  14370.     /*! @name Object
  14371.     @{ */
  14372.     /*! */
  14373.     /// @}
  14374.  
  14375.  
  14376.     /*! @name Editing
  14377.     @{ */
  14378.     /*! */
  14379.     /// @}
  14380.  
  14381.  
  14382.     /*! @name Persistence
  14383.     @{ */
  14384.     /*! */
  14385.     /// @}
  14386.  
  14387.  };
  14388.  
  14389.  /*!
  14390.  @brief Manages the ring used for a Splash effect.
  14391.  @ingroup FX
  14392.   */
  14393.  class  Splash : public GameBase {
  14394.    public:
  14395.  
  14396.     /*! @name Game
  14397.     @{ */
  14398.     /*! */
  14399.     /// @}
  14400.  
  14401.  
  14402.     /*! @name Transform
  14403.     @{ */
  14404.     /*! */
  14405.     /// @}
  14406.  
  14407.  
  14408.     /*! @name Editing
  14409.     @{ */
  14410.     /*! */
  14411.     /// @}
  14412.  
  14413.  
  14414.     /*! @name Mounting
  14415.     @{ */
  14416.     /*! */
  14417.     /// @}
  14418.  
  14419.  
  14420.     /*! @name Ungrouped
  14421.     @{ */
  14422.     /*! */
  14423.     /// @}
  14424.  
  14425.  
  14426.     /*! @name Object
  14427.     @{ */
  14428.     /*! */
  14429.     /// @}
  14430.  
  14431.  
  14432.     /*! @name Editing
  14433.     @{ */
  14434.     /*! */
  14435.     /// @}
  14436.  
  14437.  
  14438.     /*! @name Persistence
  14439.     @{ */
  14440.     /*! */
  14441.     /// @}
  14442.  
  14443.  };
  14444.  
  14445.  class  SetMissionCRCEvent {
  14446.    public:
  14447.  };
  14448.  
  14449.  /*!
  14450.  @brief Use by GameConnection to send a 2D sound event over the network.
  14451.  
  14452.  Not intended for game development, internal use only, but does expose GameConnection::play2D.
  14453.  
  14454.   */
  14455.  class  Sim2DAudioEvent {
  14456.    public:
  14457.  };
  14458.  
  14459.  /*!
  14460.  @brief Use by GameConnection to send a 3D sound event over the network.
  14461.  
  14462.  Not intended for game development, internal use only, but does expose GameConnection::play3D.
  14463.  
  14464.   */
  14465.  class  Sim3DAudioEvent {
  14466.    public:
  14467.  };
  14468.  
  14469.  class  PhysicsClothData : public GameBaseData {
  14470.    public:
  14471.  
  14472.     /*! @name Scripting
  14473.     @{ */
  14474.     /*! */
  14475.     /// @}
  14476.  
  14477.  
  14478.     /*! @name Ungrouped
  14479.     @{ */
  14480.     /*! */
  14481.     /// @}
  14482.  
  14483.  
  14484.     /*! @name Object
  14485.     @{ */
  14486.     /*! */
  14487.     /// @}
  14488.  
  14489.  
  14490.     /*! @name Editing
  14491.     @{ */
  14492.     /*! */
  14493.     /// @}
  14494.  
  14495.  
  14496.     /*! @name Persistence
  14497.     @{ */
  14498.     /*! */
  14499.     /// @}
  14500.  
  14501.  
  14502.     /*! @name Media
  14503.     @{ */
  14504.     /*! */
  14505.     /*!
  14506.     Path to the shape file.
  14507.    
  14508.      */
  14509.     filename shapeName;
  14510.     /// @}
  14511.  
  14512.  
  14513.     /*! @name Physics
  14514.     @{ */
  14515.     /*! */
  14516.     /*!
  14517.     Mass of the cloth.
  14518.    
  14519.      */
  14520.     float mass;
  14521.     /// @}
  14522.  
  14523.  };
  14524.  
  14525.  class  PhysicsCloth : public GameBase {
  14526.    public:
  14527.  
  14528.     /*! @name Game
  14529.     @{ */
  14530.     /*! */
  14531.     /// @}
  14532.  
  14533.  
  14534.     /*! @name Transform
  14535.     @{ */
  14536.     /*! */
  14537.     /// @}
  14538.  
  14539.  
  14540.     /*! @name Editing
  14541.     @{ */
  14542.     /*! */
  14543.     /// @}
  14544.  
  14545.  
  14546.     /*! @name Mounting
  14547.     @{ */
  14548.     /*! */
  14549.     /// @}
  14550.  
  14551.  
  14552.     /*! @name Ungrouped
  14553.     @{ */
  14554.     /*! */
  14555.     /// @}
  14556.  
  14557.  
  14558.     /*! @name Object
  14559.     @{ */
  14560.     /*! */
  14561.     /// @}
  14562.  
  14563.  
  14564.     /*! @name Editing
  14565.     @{ */
  14566.     /*! */
  14567.     /// @}
  14568.  
  14569.  
  14570.     /*! @name Persistence
  14571.     @{ */
  14572.     /*! */
  14573.     /// @}
  14574.  
  14575.  };
  14576.  
  14577.  /*!
  14578.  @brief Represents one or more rigid bodies defined in a single mesh file with a limited lifetime.
  14579.  
  14580.  PhysicsDebris loads a standard dts and creates a rigid body for each collision node.
  14581.  
  14582.  To work correctly the collision nodes must be positioned as PhysicsDebrisexpects.
  14583.  
  14584.  Two possible cases:
  14585.  1. Visible mesh nodes are siblings of the collision node under a common parent dummy node
  14586.  2. Collision node is a child of its visible mesh node
  14587.  
  14588.  Also colmesh type nodes are NOT supported; physx and most standard rigid body simulations do not support arbitrary triangle meshs for dynamics do to the computational expense. Therefore, collision nodes must be one of the following: Colbox, Colsphere, Colcapsule, or Col (convex).
  14589.  
  14590.   */
  14591.  class  PhysicsDebris : public GameBase {
  14592.    public:
  14593.  
  14594.     /*! @name Game
  14595.     @{ */
  14596.     /*! */
  14597.     /// @}
  14598.  
  14599.  
  14600.     /*! @name Transform
  14601.     @{ */
  14602.     /*! */
  14603.     /// @}
  14604.  
  14605.  
  14606.     /*! @name Editing
  14607.     @{ */
  14608.     /*! */
  14609.     /// @}
  14610.  
  14611.  
  14612.     /*! @name Mounting
  14613.     @{ */
  14614.     /*! */
  14615.     /// @}
  14616.  
  14617.  
  14618.     /*! @name Ungrouped
  14619.     @{ */
  14620.     /*! */
  14621.     /// @}
  14622.  
  14623.  
  14624.     /*! @name Object
  14625.     @{ */
  14626.     /*! */
  14627.     /// @}
  14628.  
  14629.  
  14630.     /*! @name Editing
  14631.     @{ */
  14632.     /*! */
  14633.     /// @}
  14634.  
  14635.  
  14636.     /*! @name Persistence
  14637.     @{ */
  14638.     /*! */
  14639.     /// @}
  14640.  
  14641.  };
  14642.  
  14643.  /*!
  14644.  @brief Creates a physics based impulse effect from a defined central point and magnitude.
  14645.  
  14646.  @see RadialImpulseEvent::send
  14647.  @ingroup Physics
  14648.   */
  14649.  class  RadialImpulseEvent {
  14650.    public:
  14651.  };
  14652.  
  14653.  /*!
  14654.  @brief Defines the properties of a type of PhysicsShape.
  14655.  
  14656.  @see PhysicsShape.
  14657.   */
  14658.  class  PhysicsShapeData : public GameBaseData {
  14659.    public:
  14660.  
  14661.     /*! @name Scripting
  14662.     @{ */
  14663.     /*! */
  14664.     /// @}
  14665.  
  14666.  
  14667.     /*! @name Ungrouped
  14668.     @{ */
  14669.     /*! */
  14670.     /// @}
  14671.  
  14672.  
  14673.     /*! @name Object
  14674.     @{ */
  14675.     /*! */
  14676.     /// @}
  14677.  
  14678.  
  14679.     /*! @name Editing
  14680.     @{ */
  14681.     /*! */
  14682.     /// @}
  14683.  
  14684.  
  14685.     /*! @name Persistence
  14686.     @{ */
  14687.     /*! */
  14688.     /// @}
  14689.  
  14690.  
  14691.     /*! @name Media
  14692.     @{ */
  14693.     /*! */
  14694.     /*!
  14695.     Path to the shape file.
  14696.    
  14697.      */
  14698.     filename shapeName;
  14699.     /*!
  14700.     Name of a PhysicsDebrisData to spawn when destroyed (optional).
  14701.    
  14702.      */
  14703.     PhysicsDebrisData Debris;
  14704.     /*!
  14705.     Name of a ExplosionData to spawn when destroyed (optional).
  14706.    
  14707.      */
  14708.     ExplosionData Explosion;
  14709.     /*!
  14710.     Name of a PhysicsShapeData to spawn when destroyed (optional).
  14711.    
  14712.      */
  14713.     PhysicsShapeData destroyedShape;
  14714.     /// @}
  14715.  
  14716.  
  14717.     /*! @name Physics
  14718.     @{ */
  14719.     /*! */
  14720.     /*!
  14721.     Mass of the shape. Set mass to zero to create as a kinematic.
  14722.    
  14723.      */
  14724.     float mass;
  14725.     /*!
  14726.     Friction of the shape slowing motion when in contact with a surface.
  14727.    
  14728.      */
  14729.     float friction;
  14730.     /*!
  14731.     Friction of the shape resisting motion when starting at rest.
  14732.    
  14733.      */
  14734.     float staticFriction;
  14735.     /*!
  14736.     Bounciness of the shape in response to collisions.  Normal range is zero to one.
  14737.    
  14738.      */
  14739.     float restitution;
  14740.     /*!
  14741.     Larger values cause linear velocity to decay over time more quickly
  14742.    
  14743.      */
  14744.     float linearDamping;
  14745.     /*!
  14746.     Larger values cause rotational velocity to decay over time more quickly.
  14747.    
  14748.      */
  14749.     float angularDamping;
  14750.     /*!
  14751.     Linear velocity threshold below which the shape may be put to sleep to save simulation time.
  14752.    
  14753.      */
  14754.     float linearSleepThreshold;
  14755.     /*!
  14756.     Angular velocity threshold below which the shape may be put to sleep to save simulation time.
  14757.    
  14758.      */
  14759.     float angularSleepThreshold;
  14760.     /*!
  14761.     While the shape is in water linear and angular dampening will be scaled by this value. It is expected that this value will usually be greater than one.
  14762.    
  14763.      */
  14764.     float waterDampingScale;
  14765.     /*!
  14766.     The density of this shape for purposes of calculating buoyancy forces. The result of a particular value is relative to the density of the WaterObject it is within.
  14767.    
  14768.      */
  14769.     float buoyancyDensity;
  14770.     /// @}
  14771.  
  14772.  
  14773.     /*! @name Networking
  14774.     @{ */
  14775.     /*! */
  14776.     /*!
  14777.     Controls whether this shape is simulated on the server, client, or both physics simulations.
  14778.    
  14779.      */
  14780.     PhysicsSimType simType;
  14781.     /// @}
  14782.  
  14783.  };
  14784.  
  14785.  /*!
  14786.  @brief A volume in space that defines an ambient sound zone.
  14787.  
  14788.   */
  14789.  class  SFXSpace : public SceneObject {
  14790.    public:
  14791.  
  14792.     /*! @name Sound
  14793.     @{ */
  14794.     /*! */
  14795.     /*!
  14796.     Ambient sound environment for the space.
  14797.    
  14798.      */
  14799.     SFXAmbience soundAmbience;
  14800.     /// @}
  14801.  
  14802.  
  14803.     /*! @name Internal
  14804.     @{ */
  14805.     /*! */
  14806.     /*!
  14807.     For internal use only.
  14808.    
  14809.      */
  14810.     string plane;
  14811.     /*!
  14812.     For internal use only.
  14813.    
  14814.      */
  14815.     string point;
  14816.     /*!
  14817.     For internal use only.
  14818.    
  14819.      */
  14820.     string edge;
  14821.     /// @}
  14822.  
  14823.  
  14824.     /*! @name Transform
  14825.     @{ */
  14826.     /*! */
  14827.     /// @}
  14828.  
  14829.  
  14830.     /*! @name Editing
  14831.     @{ */
  14832.     /*! */
  14833.     /// @}
  14834.  
  14835.  
  14836.     /*! @name Mounting
  14837.     @{ */
  14838.     /*! */
  14839.     /// @}
  14840.  
  14841.  
  14842.     /*! @name Ungrouped
  14843.     @{ */
  14844.     /*! */
  14845.     /// @}
  14846.  
  14847.  
  14848.     /*! @name Object
  14849.     @{ */
  14850.     /*! */
  14851.     /// @}
  14852.  
  14853.  
  14854.     /*! @name Editing
  14855.     @{ */
  14856.     /*! */
  14857.     /// @}
  14858.  
  14859.  
  14860.     /*! @name Persistence
  14861.     @{ */
  14862.     /*! */
  14863.     /// @}
  14864.  
  14865.  };
  14866.  
  14867.  /*!
  14868.  @brief Displays the speed of the current Vehicle based control object.
  14869.  
  14870.  This control only works if a server connection exists, and its control object is a Vehicle derived class. If either of these requirements is false, the control is not rendered.<br>The control renders the speedometer needle as a colored quad, rotated to indicate the Vehicle speed as determined by the <i>minAngle</i>, <i>maxAngle</i>, and <i>maxSpeed</i> properties. This control is normally placed on top of a GuiBitmapCtrl representing the speedometer dial.
  14871.  
  14872.  @tsexample
  14873.  new GuiSpeedometerHud()
  14874.  {
  14875.     maxSpeed = "100";
  14876.     minAngle = "215";
  14877.     maxAngle = "0";
  14878.     color = "1 0.3 0.3 1";
  14879.     center = "130 123";
  14880.     length = "100";
  14881.     width = "2";
  14882.     tail = "0";
  14883.     //Properties not specific to this control have been omitted from this example.
  14884.  };
  14885.  @endtsexample
  14886.  
  14887.   */
  14888.  class  GuiSpeedometerHud : public GuiBitmapCtrl {
  14889.    public:
  14890.  
  14891.     /*! @name Needle
  14892.     @{ */
  14893.     /*! */
  14894.     /*!
  14895.     Maximum Vehicle speed (in Torque units per second) to represent on the speedo (Vehicle speeds greater than this are clamped to maxSpeed).
  14896.    
  14897.      */
  14898.     float maxSpeed;
  14899.     /*!
  14900.     Angle (in radians) of the needle when the Vehicle speed is 0. An angle of 0 points right, 90 points up etc).
  14901.    
  14902.      */
  14903.     float minAngle;
  14904.     /*!
  14905.     Angle (in radians) of the needle when the Vehicle speed is >= maxSpeed. An angle of 0 points right, 90 points up etc).
  14906.    
  14907.      */
  14908.     float maxAngle;
  14909.     /*!
  14910.     Color of the needle
  14911.    
  14912.      */
  14913.     ColorF color;
  14914.     /*!
  14915.     Center of the needle, offset from the GuiSpeedometerHud control top left corner
  14916.    
  14917.      */
  14918.     Point2F center;
  14919.     /*!
  14920.     Length of the needle from center to end
  14921.    
  14922.      */
  14923.     float Length;
  14924.     /*!
  14925.     Width of the needle
  14926.    
  14927.      */
  14928.     float width;
  14929.     /*!
  14930.     Length of the needle from center to tail
  14931.    
  14932.      */
  14933.     float tail;
  14934.     /// @}
  14935.  
  14936.  
  14937.     /*! @name Bitmap
  14938.     @{ */
  14939.     /*! */
  14940.     /// @}
  14941.  
  14942.  
  14943.     /*! @name Layout
  14944.     @{ */
  14945.     /*! */
  14946.     /// @}
  14947.  
  14948.  
  14949.     /*! @name Control
  14950.     @{ */
  14951.     /*! */
  14952.     /// @}
  14953.  
  14954.  
  14955.     /*! @name ToolTip
  14956.     @{ */
  14957.     /*! */
  14958.     /// @}
  14959.  
  14960.  
  14961.     /*! @name Editing
  14962.     @{ */
  14963.     /*! */
  14964.     /// @}
  14965.  
  14966.  
  14967.     /*! @name Localization
  14968.     @{ */
  14969.     /*! */
  14970.     /// @}
  14971.  
  14972.  
  14973.     /*! @name Ungrouped
  14974.     @{ */
  14975.     /*! */
  14976.     /// @}
  14977.  
  14978.  
  14979.     /*! @name Object
  14980.     @{ */
  14981.     /*! */
  14982.     /// @}
  14983.  
  14984.  
  14985.     /*! @name Editing
  14986.     @{ */
  14987.     /*! */
  14988.     /// @}
  14989.  
  14990.  
  14991.     /*! @name Persistence
  14992.     @{ */
  14993.     /*! */
  14994.     /// @}
  14995.  
  14996.  };
  14997.  
  14998.  /*!
  14999.  @brief Base functionality shared by all Vehicles (FlyingVehicle, HoverVehicle, WheeledVehicle.
  15000.  
  15001.  This object implements functionality shared by all Vehicle types, but should not be instantiated directly. Create a FlyingVehicle, HoverVehicle, or WheeledVehicle instead.
  15002.  @note The model used for any Vehicle must include a collision mesh at detail size -1.
  15003.  @ingroup Vehicles
  15004.   */
  15005.  class  Vehicle : public ShapeBase {
  15006.    public:
  15007.     /*!
  15008.     When this flag is set, the vehicle will ignore throttle changes.
  15009.    
  15010.      */
  15011.     bool disableMove;
  15012.  
  15013.     /*! @name Game
  15014.     @{ */
  15015.     /*! */
  15016.     /// @}
  15017.  
  15018.  
  15019.     /*! @name Transform
  15020.     @{ */
  15021.     /*! */
  15022.     /// @}
  15023.  
  15024.  
  15025.     /*! @name Editing
  15026.     @{ */
  15027.     /*! */
  15028.     /// @}
  15029.  
  15030.  
  15031.     /*! @name Mounting
  15032.     @{ */
  15033.     /*! */
  15034.     /// @}
  15035.  
  15036.  
  15037.     /*! @name Ungrouped
  15038.     @{ */
  15039.     /*! */
  15040.     /// @}
  15041.  
  15042.  
  15043.     /*! @name Object
  15044.     @{ */
  15045.     /*! */
  15046.     /// @}
  15047.  
  15048.  
  15049.     /*! @name Editing
  15050.     @{ */
  15051.     /*! */
  15052.     /// @}
  15053.  
  15054.  
  15055.     /*! @name Persistence
  15056.     @{ */
  15057.     /*! */
  15058.     /// @}
  15059.  
  15060.  };
  15061.  
  15062.  /*!
  15063.  @brief A datablock that describes an afxCamera.
  15064.  
  15065.  @ingroup afxMisc
  15066.  @ingroup AFX
  15067.  @ingroup Datablocks
  15068.   */
  15069.  class  afxCameraData : public ShapeBaseData {
  15070.    public:
  15071.  
  15072.     /*! @name Shadows
  15073.     @{ */
  15074.     /*! */
  15075.     /// @}
  15076.  
  15077.  
  15078.     /*! @name Render
  15079.     @{ */
  15080.     /*! */
  15081.     /// @}
  15082.  
  15083.  
  15084.     /*! @name Destruction
  15085.    
  15086.     Parameters related to the destruction effects of this object.
  15087.     @{ */
  15088.     /*! */
  15089.     /// @}
  15090.  
  15091.  
  15092.     /*! @name Physics
  15093.     @{ */
  15094.     /*! */
  15095.     /// @}
  15096.  
  15097.  
  15098.     /*! @name Damage/Energy
  15099.     @{ */
  15100.     /*! */
  15101.     /// @}
  15102.  
  15103.  
  15104.     /*! @name Camera
  15105.    
  15106.     The settings used by the shape when it is the camera.
  15107.     @{ */
  15108.     /*! */
  15109.     /// @}
  15110.  
  15111.  
  15112.     /*! @name Scripting
  15113.     @{ */
  15114.     /*! */
  15115.     /// @}
  15116.  
  15117.  
  15118.     /*! @name Ungrouped
  15119.     @{ */
  15120.     /*! */
  15121.     /// @}
  15122.  
  15123.  
  15124.     /*! @name Object
  15125.     @{ */
  15126.     /*! */
  15127.     /// @}
  15128.  
  15129.  
  15130.     /*! @name Editing
  15131.     @{ */
  15132.     /*! */
  15133.     /// @}
  15134.  
  15135.  
  15136.     /*! @name Persistence
  15137.     @{ */
  15138.     /*! */
  15139.     /// @}
  15140.  
  15141.  };
  15142.  
  15143.  /*!
  15144.  @brief An Effect Wrapper as defined by an afxEffectWrapperData datablock.
  15145.  
  15146.  Conceptually an effect wrapper encloses a building-block effect and acts as a handle for adding the effect to a choreographer. Effect wrapper fields primarily deal with effect timing, constraints, and conditional effect execution.
  15147.  
  15148.  Not intended to be used directly, afxEffectWrapper is an internal baseclass used to implement effect-specific adapter classes.
  15149.  
  15150.  @ingroup afxEffects
  15151.  @ingroup AFX
  15152.   */
  15153.  class  afxEffectWrapper : public SimObject {
  15154.    public:
  15155.     /*!
  15156.     ...
  15157.    
  15158.      */
  15159.     float liveScaleFactor;
  15160.     /*!
  15161.     ...
  15162.    
  15163.      */
  15164.     float liveFadeFactor;
  15165.  
  15166.     /*! @name Ungrouped
  15167.     @{ */
  15168.     /*! */
  15169.     /// @}
  15170.  
  15171.  
  15172.     /*! @name Object
  15173.     @{ */
  15174.     /*! */
  15175.     /// @}
  15176.  
  15177.  
  15178.     /*! @name Editing
  15179.     @{ */
  15180.     /*! */
  15181.     /// @}
  15182.  
  15183.  
  15184.     /*! @name Persistence
  15185.     @{ */
  15186.     /*! */
  15187.     /// @}
  15188.  
  15189.  };
  15190.  
  15191.  /*!
  15192.  @brief Defines a particular magic-missile type. (Use with afxMagicSpellData.)
  15193.  @tsexample
  15194.  datablock afxMagicMissileData(Fireball_MM)
  15195.  {
  15196.    muzzleVelocity = 50;
  15197.    velInheritFactor = 0;
  15198.    lifetime = 20000;
  15199.    isBallistic = true;
  15200.    ballisticCoefficient = 0.85;
  15201.    gravityMod = 0.05;
  15202.    isGuided = true;
  15203.    precision = 30;
  15204.    trackDelay = 7;
  15205.    launchOffset = "0 0 43.7965";
  15206.    launchOnServerSignal = true;
  15207.  };
  15208.  @endtsexample
  15209.  @ingroup AFX
  15210.   */
  15211.  class  afxMagicMissileData : public GameBaseData {
  15212.    public:
  15213.     /*!
  15214.      */
  15215.     ParticleEmitterData ParticleEmitter;
  15216.     /*!
  15217.      */
  15218.     ParticleEmitterData particleWaterEmitter;
  15219.     /*!
  15220.      */
  15221.     filename projectileShapeName;
  15222.     /*!
  15223.      */
  15224.     Point3F scale;
  15225.     /*!
  15226.      */
  15227.     SFXTrack sound;
  15228.     /*!
  15229.      */
  15230.     SplashData Splash;
  15231.     /*!
  15232.      */
  15233.     LightDescription lightDesc;
  15234.     /*!
  15235.      */
  15236.     bool isBallistic;
  15237.     /*!
  15238.      */
  15239.     float muzzleVelocity;
  15240.     /*!
  15241.      */
  15242.     int lifetime;
  15243.     /*!
  15244.      */
  15245.     float gravityMod;
  15246.     /*!
  15247.      */
  15248.     filename missileShapeName;
  15249.     /*!
  15250.      */
  15251.     Point3F missileShapeScale;
  15252.     /*!
  15253.      */
  15254.     Point3F startingVelocityVector;
  15255.     /*!
  15256.      */
  15257.     bool isGuided;
  15258.     /*!
  15259.      */
  15260.     float precision;
  15261.     /*!
  15262.      */
  15263.     int trackDelay;
  15264.     /*!
  15265.      */
  15266.     float ballisticCoefficient;
  15267.     /*!
  15268.      */
  15269.     int collisionMask;
  15270.     /*!
  15271.      */
  15272.     bool followTerrain;
  15273.     /*!
  15274.      */
  15275.     float followTerrainHeight;
  15276.     /*!
  15277.      */
  15278.     float followTerrainAdjustRate;
  15279.     /*!
  15280.      */
  15281.     int followTerrainAdjustDelay;
  15282.     /*!
  15283.      */
  15284.     float acceleration;
  15285.     /*!
  15286.      */
  15287.     int accelDelay;
  15288.     /*!
  15289.      */
  15290.     int accelLifetime;
  15291.     /*!
  15292.      */
  15293.     string launchNode;
  15294.     /*!
  15295.      */
  15296.     Point3F launchOffset;
  15297.     /*!
  15298.      */
  15299.     Point3F launchOffsetServer;
  15300.     /*!
  15301.      */
  15302.     Point3F launchOffsetClient;
  15303.     /*!
  15304.      */
  15305.     Point3F launchNodeOffset;
  15306.     /*!
  15307.      */
  15308.     float launchAimPitch;
  15309.     /*!
  15310.      */
  15311.     float launchAimPan;
  15312.     /*!
  15313.      */
  15314.     string launchConstraintServer;
  15315.     /*!
  15316.      */
  15317.     string launchConstraintClient;
  15318.     /*!
  15319.      */
  15320.     bool echoLaunchOffset;
  15321.     /*!
  15322.      */
  15323.     floatList wiggleMagnitudes;
  15324.     /*!
  15325.      */
  15326.     floatList wiggleSpeeds;
  15327.     /*!
  15328.      */
  15329.     string wiggleAxis;
  15330.     /*!
  15331.      */
  15332.     float hoverAltitude;
  15333.     /*!
  15334.      */
  15335.     float hoverAttackDistance;
  15336.     /*!
  15337.      */
  15338.     float hoverAttackGradient;
  15339.     /*!
  15340.      */
  15341.     int hovertime;
  15342.     /*!
  15343.      */
  15344.     bool reverseTargeting;
  15345.     /*!
  15346.      */
  15347.     int casterSafetyTime;
  15348.  
  15349.     /*! @name Scripting
  15350.     @{ */
  15351.     /*! */
  15352.     /// @}
  15353.  
  15354.  
  15355.     /*! @name Ungrouped
  15356.     @{ */
  15357.     /*! */
  15358.     /// @}
  15359.  
  15360.  
  15361.     /*! @name Object
  15362.     @{ */
  15363.     /*! */
  15364.     /// @}
  15365.  
  15366.  
  15367.     /*! @name Editing
  15368.     @{ */
  15369.     /*! */
  15370.     /// @}
  15371.  
  15372.  
  15373.     /*! @name Persistence
  15374.     @{ */
  15375.     /*! */
  15376.     /// @}
  15377.  
  15378.  };
  15379.  
  15380.  class  afxRenderHighlightMgr : public RenderTexTargetBinManager {
  15381.    public:
  15382.  
  15383.     /*! @name Ungrouped
  15384.     @{ */
  15385.     /*! */
  15386.     /// @}
  15387.  
  15388.  
  15389.     /*! @name Object
  15390.     @{ */
  15391.     /*! */
  15392.     /// @}
  15393.  
  15394.  
  15395.     /*! @name Editing
  15396.     @{ */
  15397.     /*! */
  15398.     /// @}
  15399.  
  15400.  
  15401.     /*! @name Persistence
  15402.     @{ */
  15403.     /*! */
  15404.     /// @}
  15405.  
  15406.  };
  15407.  
  15408.  /*!
  15409.  @brief A class that manages certain AFX effects that can persist for long durations.
  15410.  
  15411.  A class that manages certain AFX effects that can persist much longer than the duration of choreographers.
  15412.  @ingroup AFX
  15413.   */
  15414.  class  afxResidueMgr : public GameBase {
  15415.    public:
  15416.  
  15417.     /*! @name Game
  15418.     @{ */
  15419.     /*! */
  15420.     /// @}
  15421.  
  15422.  
  15423.     /*! @name Transform
  15424.     @{ */
  15425.     /*! */
  15426.     /// @}
  15427.  
  15428.  
  15429.     /*! @name Editing
  15430.     @{ */
  15431.     /*! */
  15432.     /// @}
  15433.  
  15434.  
  15435.     /*! @name Mounting
  15436.     @{ */
  15437.     /*! */
  15438.     /// @}
  15439.  
  15440.  
  15441.     /*! @name Ungrouped
  15442.     @{ */
  15443.     /*! */
  15444.     /// @}
  15445.  
  15446.  
  15447.     /*! @name Object
  15448.     @{ */
  15449.     /*! */
  15450.     /// @}
  15451.  
  15452.  
  15453.     /*! @name Editing
  15454.     @{ */
  15455.     /*! */
  15456.     /// @}
  15457.  
  15458.  
  15459.     /*! @name Persistence
  15460.     @{ */
  15461.     /*! */
  15462.     /// @}
  15463.  
  15464.  };
  15465.  
  15466.  /*!
  15467.  @brief A render bin for zodiac rendering on GroundPlane objects.
  15468.  
  15469.  This bin renders instances of AFX zodiac effects onto GroundPlane surfaces.
  15470.  
  15471.  @ingroup RenderBin
  15472.  @ingroup AFX
  15473.   */
  15474.  class  afxZodiacGroundPlaneRenderer : public RenderBinManager {
  15475.    public:
  15476.  
  15477.     /*! @name Ungrouped
  15478.     @{ */
  15479.     /*! */
  15480.     /// @}
  15481.  
  15482.  
  15483.     /*! @name Object
  15484.     @{ */
  15485.     /*! */
  15486.     /// @}
  15487.  
  15488.  
  15489.     /*! @name Editing
  15490.     @{ */
  15491.     /*! */
  15492.     /// @}
  15493.  
  15494.  
  15495.     /*! @name Persistence
  15496.     @{ */
  15497.     /*! */
  15498.     /// @}
  15499.  
  15500.  };
  15501.  
  15502.  /*!
  15503.  @brief A render bin for zodiac rendering on polysoup TSStatic objects.
  15504.  
  15505.  This bin renders instances of AFX zodiac effects onto polysoup TSStatic surfaces.
  15506.  
  15507.  @ingroup RenderBin
  15508.  @ingroup AFX
  15509.   */
  15510.  class  afxZodiacPolysoupRenderer : public RenderBinManager {
  15511.    public:
  15512.  
  15513.     /*! @name Ungrouped
  15514.     @{ */
  15515.     /*! */
  15516.     /// @}
  15517.  
  15518.  
  15519.     /*! @name Object
  15520.     @{ */
  15521.     /*! */
  15522.     /// @}
  15523.  
  15524.  
  15525.     /*! @name Editing
  15526.     @{ */
  15527.     /*! */
  15528.     /// @}
  15529.  
  15530.  
  15531.     /*! @name Persistence
  15532.     @{ */
  15533.     /*! */
  15534.     /// @}
  15535.  
  15536.  };
  15537.  
  15538.  /*!
  15539.  @brief A render bin for zodiac rendering on Terrain objects.
  15540.  
  15541.  This bin renders instances of AFX zodiac effects onto Terrain surfaces.
  15542.  
  15543.  @ingroup RenderBin
  15544.  @ingroup AFX
  15545.   */
  15546.  class  afxZodiacTerrainRenderer : public RenderBinManager {
  15547.    public:
  15548.  
  15549.     /*! @name Ungrouped
  15550.     @{ */
  15551.     /*! */
  15552.     /// @}
  15553.  
  15554.  
  15555.     /*! @name Object
  15556.     @{ */
  15557.     /*! */
  15558.     /// @}
  15559.  
  15560.  
  15561.     /*! @name Editing
  15562.     @{ */
  15563.     /*! */
  15564.     /// @}
  15565.  
  15566.  
  15567.     /*! @name Persistence
  15568.     @{ */
  15569.     /*! */
  15570.     /// @}
  15571.  
  15572.  };
  15573.  
  15574.  /*!
  15575.  @brief Event posted when player is fully loaded into the game and ready for interaction.
  15576.  
  15577.   */
  15578.  class  ClientZoneInEvent {
  15579.    public:
  15580.  };
  15581.  
  15582.  /*!
  15583.  @brief A datablock that specifies an Animation Clip effect.
  15584.  
  15585.  An Animation Clip forces a target ShapeBase-derived object, such as Player or AIPlayer, to perform a particular animation sequence. Animation Clip does not supply any new animation data, but simply selects, by name, a sequence that is already defined in the target. Animation Clip can also target afxModel effects within the same choreographer.
  15586.  
  15587.  The target of an Animation Clip is the constraint source object specified by the posConstraint field of the enclosing effect wrapper. The target must be a ShapeBase-derived object, or an afxModel and it must contain an animation sequence with the same name as the clipName field.
  15588.  
  15589.  Animation Clip controls the rate of animation playback and can even play a sequence in reverse. When an Animation Clip selects a blended animation sequence, it is mixed with the current animation instead of replacing it. Animation Clips can be used to activate multiple, overlapping blend sequences.
  15590.  
  15591.  Normally when an Animation Clip is applied to a user-controlled Player, any interactive user actions will override the animation selected by the clip, but Animation Clips can be configured to temporarily block out some user actions for the duration of the clip.
  15592.  
  15593.  @ingroup afxEffects
  15594.  @ingroup AFX
  15595.  @ingroup Datablocks
  15596.   */
  15597.  class  afxAnimClipData : public GameBaseData {
  15598.    public:
  15599.     /*!
  15600.     The name of an animation sequence to be played by a ShapeBase-derived object to which this effect is constrained. Also works on afxModel effects.
  15601. default: ""
  15602.  
  15603.    
  15604.      */
  15605.     string clipName;
  15606.     /*!
  15607.     The desired playback speed for the sequence. A value of 1.0 indicates forward playback at a normal rate. Negative values cause the sequence to play backwards.
  15608. default: 1.0
  15609.  
  15610.    
  15611.      */
  15612.     float rate;
  15613.     /*!
  15614.     Sets a starting offset for the selected animation clip. It directly specifies an animation thread position in the 0.0 to 1.0 range as a fraction of the clip's duration.
  15615. default: 1.0
  15616.  
  15617.    
  15618.      */
  15619.     float posOffset;
  15620.     /*!
  15621.     The duration in which the active animation overlaps and blends into the sequence selected by the animation clip.
  15622. default: 0.12
  15623.  
  15624.    
  15625.      */
  15626.     float transitionTime;
  15627.     /*!
  15628.     Specifies if the animation clip should not be applied to corpses or anything else with a disabled damage state.
  15629. default: false
  15630.  
  15631.    
  15632.      */
  15633.     bool ignoreCorpse;
  15634.     /*!
  15635.     Specifies if the animation clip should not be applied to living objects or anything else with an enabled damage state.
  15636. default: false
  15637.  
  15638.    
  15639.      */
  15640.     bool ignoreLiving;
  15641.     /*!
  15642.     Indicates if the animation clip is a death animation. If the target object dies during the effect, this will prevent the object from playing another standard death animation after this clip finishes.
  15643. default: false
  15644.  
  15645.    
  15646.      */
  15647.     bool treatAsDeathAnim;
  15648.     /*!
  15649.     Indicates if user control of a Player should be temporarily blocked during the clip. (See afxAnimLockData.)
  15650. default: false
  15651.  
  15652.    
  15653.      */
  15654.     bool lockAnimation;
  15655.     /*!
  15656.     If true, the clip will not be played on targets that are the control object and the camera is in first person mode.
  15657. default: false
  15658.  
  15659.    
  15660.      */
  15661.     bool ignoreFirstPerson;
  15662.     /*!
  15663.     If true, the clip will not be played on targets that are the control object and the camera is in third person mode.
  15664. default: false
  15665.  
  15666.    
  15667.      */
  15668.     bool ignoreThirdPerson;
  15669.     /*!
  15670.     A synonym for ignoreLiving.
  15671.    
  15672.      */
  15673.     bool ignoreDisabled;
  15674.     /*!
  15675.     A synonym for ignoreCorpse.
  15676.    
  15677.      */
  15678.     bool ignoreEnabled;
  15679.  
  15680.     /*! @name Scripting
  15681.     @{ */
  15682.     /*! */
  15683.     /// @}
  15684.  
  15685.  
  15686.     /*! @name Ungrouped
  15687.     @{ */
  15688.     /*! */
  15689.     /// @}
  15690.  
  15691.  
  15692.     /*! @name Object
  15693.     @{ */
  15694.     /*! */
  15695.     /// @}
  15696.  
  15697.  
  15698.     /*! @name Editing
  15699.     @{ */
  15700.     /*! */
  15701.     /// @}
  15702.  
  15703.  
  15704.     /*! @name Persistence
  15705.     @{ */
  15706.     /*! */
  15707.     /// @}
  15708.  
  15709.  };
  15710.  
  15711.  /*!
  15712.  @brief A datablock that specifies an Animation Lock effect.
  15713.  
  15714.  Animation Lock is used to temporarily lock out user-controlled Player actions, usually while an Animation Clip is concurrently playing. Animation Clips can already do this, but must lock out user actions for the entire clip length. Sometimes you only want to block user actions for a short section of a longer playing animation, such as the part where the Player is thrown into the air from an impact. With Animation Lock, you can set a specific timespan for when user actions are blocked, independent of any Animation Clip timing.
  15715.  
  15716.  The target of an Animation Lock is the constraint source object specified by the posConstraint field of the enclosing effect wrapper. The target must be a Player, a subclass of Player, or an afxModel.
  15717.  
  15718.  The timing of the Animation Lock is determined by the timing fields of the enclosing effect wrapper.
  15719.  
  15720.  Locking behavior timing is set by fields of the enclosing effect wrapper, so afxAnimLockData does not require any fields. However, TorqueScript syntax disallows the declaration of an empty datablock. Therefore, it is recommended that you set a dynamic field named 'priority' to zero in the body of the datablock as a workaround to this limitation.
  15721.  
  15722.  @ingroup afxEffects
  15723.  @ingroup AFX
  15724.  @ingroup Datablocks
  15725.   */
  15726.  class  afxAnimLockData : public GameBaseData {
  15727.    public:
  15728.  
  15729.     /*! @name Scripting
  15730.     @{ */
  15731.     /*! */
  15732.     /// @}
  15733.  
  15734.  
  15735.     /*! @name Ungrouped
  15736.     @{ */
  15737.     /*! */
  15738.     /// @}
  15739.  
  15740.  
  15741.     /*! @name Object
  15742.     @{ */
  15743.     /*! */
  15744.     /// @}
  15745.  
  15746.  
  15747.     /*! @name Editing
  15748.     @{ */
  15749.     /*! */
  15750.     /// @}
  15751.  
  15752.  
  15753.     /*! @name Persistence
  15754.     @{ */
  15755.     /*! */
  15756.     /// @}
  15757.  
  15758.  };
  15759.  
  15760.  /*!
  15761.  @brief A datablock that specifies an Area Damage effect.
  15762.  
  15763.  An Area Damage effect is useful for assigning area damage with unusual timing that must be synchronized with other effects. Negative damage amounts can be used for healing effects.
  15764.  
  15765.  The primary difference between afxAreaDamageData and afxDamageData, which is also capable of inflicting area damage, is that afxAreaDamageData effects calculate the area damage in C++ code rather than calling out to the script function radiusDamage(). In cases where area damage needs to be inflicted repeatedly or in areas crowded with many targets, afxAreaDamageData is likely to get better performance.
  15766.  
  15767.  @ingroup afxEffects
  15768.  @ingroup AFX
  15769.  @ingroup Datablocks
  15770.   */
  15771.  class  afxAreaDamageData : public GameBaseData {
  15772.    public:
  15773.     /*!
  15774.     An arbitrary string which is passed as an argument to a spell's onDamage() script method. It is used to classify a type of damage such as 'melee', 'magical', or 'fire'.
  15775.    
  15776.      */
  15777.     string flavor;
  15778.     /*!
  15779.     An amount of area damage to inflict on a target. Objects within half the radius receive full damage which then diminishes out to the full distance of the specified radius.
  15780.    
  15781.      */
  15782.     float damage;
  15783.     /*!
  15784.     Radius centered at the effect position in which damage will be applied.
  15785.    
  15786.      */
  15787.     float radius;
  15788.     /*!
  15789.     Specifies an amount of force to apply to damaged objects. Objects within half the radius receive full impulse which then diminishes out to the full distance of the specified radius.
  15790.    
  15791.      */
  15792.     float impulse;
  15793.     /*!
  15794.     When true, the onInflictedAreaDamage() method of the damaged object will be called to notify it of the damage. This is useful for starting some effects or action that responds to the damage.
  15795.    
  15796.      */
  15797.     bool notifyDamageSource;
  15798.     /*!
  15799.     When true, the object specified as the effect's primary position constraint will not receive any damage.
  15800.    
  15801.      */
  15802.     bool excludeConstraintObject;
  15803.  
  15804.     /*! @name Scripting
  15805.     @{ */
  15806.     /*! */
  15807.     /// @}
  15808.  
  15809.  
  15810.     /*! @name Ungrouped
  15811.     @{ */
  15812.     /*! */
  15813.     /// @}
  15814.  
  15815.  
  15816.     /*! @name Object
  15817.     @{ */
  15818.     /*! */
  15819.     /// @}
  15820.  
  15821.  
  15822.     /*! @name Editing
  15823.     @{ */
  15824.     /*! */
  15825.     /// @}
  15826.  
  15827.  
  15828.     /*! @name Persistence
  15829.     @{ */
  15830.     /*! */
  15831.     /// @}
  15832.  
  15833.  };
  15834.  
  15835.  /*!
  15836.  @brief A datablock that specifies an Audio Bank effect.
  15837.  
  15838.  afxAudioBank is very similar to the stock Torque SFXProfile datablock but it allows specification of up to 32 different sound files. The sound that actually plays is determined by the playIndex field.
  15839.  
  15840.  afxAudioBank is most useful when used in combination with field substitutions, whereby a substitution statement assigned to playIndex selects a different sound (perhaps randomly) each time the effect is used.
  15841.  
  15842.  @ingroup afxEffects
  15843.  @ingroup AFX
  15844.  @ingroup Datablocks
  15845.   */
  15846.  class  afxAudioBank : public SimDataBlock {
  15847.    public:
  15848.     /*!
  15849.     A filesystem path to the folder containing the sound files specified by the filenames[] field. All sound files used in a single AudioBank must be located in the same folder.
  15850.    
  15851.      */
  15852.     filename path;
  15853.     /*!
  15854.     Up to 32 names of sound files found in the path folder. The sound that is actually played by an Audio Bank effect is determined by the playIndex field.
  15855.    
  15856.      */
  15857.     string filenames;
  15858.     /*!
  15859.     SFXDescription datablock to use with this set of sounds.
  15860.    
  15861.      */
  15862.     SFXDescription Description;
  15863.     /*!
  15864.     If set to true, file is pre-loaded, otherwise it is loaded on-demand.
  15865.    
  15866.      */
  15867.     bool preload;
  15868.     /*!
  15869.     An array index that selects a sound to play from the filenames[] field. Values outside of the range of assigned filename[] entries will not play any sound.
  15870.    
  15871.      */
  15872.     int playIndex;
  15873.  
  15874.     /*! @name Ungrouped
  15875.     @{ */
  15876.     /*! */
  15877.     /// @}
  15878.  
  15879.  
  15880.     /*! @name Object
  15881.     @{ */
  15882.     /*! */
  15883.     /// @}
  15884.  
  15885.  
  15886.     /*! @name Editing
  15887.     @{ */
  15888.     /*! */
  15889.     /// @}
  15890.  
  15891.  
  15892.     /*! @name Persistence
  15893.     @{ */
  15894.     /*! */
  15895.     /// @}
  15896.  
  15897.  };
  15898.  
  15899.  /*!
  15900.  @brief A datablock that specifies a Billboard effect.
  15901.  
  15902.  A Billboard effect is a textured quadrangle which is always aligned to face towards the camera. It is much like a single static particle and is rendered in a similar fashion.
  15903.  
  15904.  @ingroup afxEffects
  15905.  @ingroup AFX
  15906.  @ingroup Datablocks
  15907.   */
  15908.  class  afxBillboardData : public GameBaseData {
  15909.    public:
  15910.     /*!
  15911.     The color assigned to the quadrangle geometry. The way it combines with the given texture varies according to the setting of the textureFunction field.
  15912.    
  15913.      */
  15914.     ColorF color;
  15915.     /*!
  15916.     An image to use as the billboard's texture.
  15917.    
  15918.      */
  15919.     filename texture;
  15920.     /*!
  15921.     A value-pair that specifies the horizontal and vertical dimensions of the billboard in scene units.
  15922.    
  15923.      */
  15924.     Point2F dimensions;
  15925.     /*!
  15926.     An array of four value-pairs that specify the UV texture coordinates for the four corners of the billboard's quadrangle.
  15927.    
  15928.      */
  15929.     Point2F textureCoords;
  15930.     /*!
  15931.     Selects a common blend factor preset. When set to 'user', srcBlendFactor and dstBlendFactor can be used to set additional blend factor combinations.
  15932. Possible values: normal, additive, subtractive, premultalpha, or user.
  15933.    
  15934.      */
  15935.     afxBillboard_BlendStyle blendStyle;
  15936.     /*!
  15937.     Specifies source blend factor when blendStyle is set to 'user'.
  15938. Possible values: GFXBlendZero, GFXBlendOne, GFXBlendDestColor, GFXBlendInvDestColor, GFXBlendSrcAlpha, GFXBlendInvSrcAlpha, GFXBlendDestAlpha, GFXBlendInvDestAlpha, or GFXBlendSrcAlphaSat
  15939.    
  15940.      */
  15941.     GFXBlend srcBlendFactor;
  15942.     /*!
  15943.     Specifies destination blend factor when blendStyle is set to 'user'.
  15944. Possible values: GFXBlendZero, GFXBlendOne, GFXBlendSrcColor, GFXBlendInvSrcColor, GFXBlendSrcAlpha, GFXBlendInvSrcAlpha, GFXBlendDestAlpha, or GFXBlendInvDestAlpha
  15945.    
  15946.      */
  15947.     GFXBlend dstBlendFactor;
  15948.     /*!
  15949.     Selects a texture function that determines how the texture pixels are combined with the shaded color of the billboard's quadrangle geometry.
  15950. Possible values: replace, modulate, or add.
  15951.    
  15952.      */
  15953.     afxBillboard_TexFuncType textureFunction;
  15954.  
  15955.     /*! @name Scripting
  15956.     @{ */
  15957.     /*! */
  15958.     /// @}
  15959.  
  15960.  
  15961.     /*! @name Ungrouped
  15962.     @{ */
  15963.     /*! */
  15964.     /// @}
  15965.  
  15966.  
  15967.     /*! @name Object
  15968.     @{ */
  15969.     /*! */
  15970.     /// @}
  15971.  
  15972.  
  15973.     /*! @name Editing
  15974.     @{ */
  15975.     /*! */
  15976.     /// @}
  15977.  
  15978.  
  15979.     /*! @name Persistence
  15980.     @{ */
  15981.     /*! */
  15982.     /// @}
  15983.  
  15984.  };
  15985.  
  15986.  /*!
  15987.  @brief A Billboard effect as defined by an afxBillboardData datablock.
  15988.  
  15989.  A Billboard effect is a textured quadrangle which is always aligned to face towards the camera. It is much like a single static particle and is rendered in a similar fashion.
  15990.  @ingroup afxEffects
  15991.  @ingroup AFX
  15992.   */
  15993.  class  afxBillboard : public GameBase {
  15994.    public:
  15995.  
  15996.     /*! @name Game
  15997.     @{ */
  15998.     /*! */
  15999.     /// @}
  16000.  
  16001.  
  16002.     /*! @name Transform
  16003.     @{ */
  16004.     /*! */
  16005.     /// @}
  16006.  
  16007.  
  16008.     /*! @name Editing
  16009.     @{ */
  16010.     /*! */
  16011.     /// @}
  16012.  
  16013.  
  16014.     /*! @name Mounting
  16015.     @{ */
  16016.     /*! */
  16017.     /// @}
  16018.  
  16019.  
  16020.     /*! @name Ungrouped
  16021.     @{ */
  16022.     /*! */
  16023.     /// @}
  16024.  
  16025.  
  16026.     /*! @name Object
  16027.     @{ */
  16028.     /*! */
  16029.     /// @}
  16030.  
  16031.  
  16032.     /*! @name Editing
  16033.     @{ */
  16034.     /*! */
  16035.     /// @}
  16036.  
  16037.  
  16038.     /*! @name Persistence
  16039.     @{ */
  16040.     /*! */
  16041.     /// @}
  16042.  
  16043.  };
  16044.  
  16045.  /*!
  16046.  @brief A datablock that specifies a Camera Puppet effect.
  16047.  
  16048.  A Camera Puppet effect is used to control the position and orientation of the camera using the AFX constraint system. Camera Puppet effects are useful for creating small cut-scenes and can add a lot of visual drama to a spell or effectron effect.
  16049.  
  16050.  Effective use of Camera Puppet effects require a fairly advanced understanding of how Torque cameras work in a server-client context. Care must be taken to prevent client cameras from drifting too far out of sync from the server camera. Otherwise, obvious discontinuities in the motion will result when the Camera Puppet ends and control is restored to the server camera. Scoping problems can also result if a client camera is moved to a location that is inconsistent with the scene scoping done by the server camera.
  16051.  
  16052.  Often it is useful to manage camera controlling in an isolated effectron rather than directly incorporated into a magic-spell. This way the camera controlling effectron can target the specific client associated with the spellcaster. The spellcasting player observes the spell in a dramatic cut-scene-like fashion while other players continue to observe from their own viewing locations.
  16053.  
  16054.  @ingroup afxEffects
  16055.  @ingroup AFX
  16056.  @ingroup Datablocks
  16057.   */
  16058.  class  afxCameraPuppetData : public GameBaseData {
  16059.    public:
  16060.     /*!
  16061.     This field is like the effect-wrapper fields for specifying constraint sources, but here it specifies a target for the camera-puppet effect.
  16062.    
  16063.      */
  16064.     string cameraSpec;
  16065.     /*!
  16066.     Specifies the networking model used for the camerapuppet effect. The effect can puppet just the server camera, just the client camera, or both.
  16067. Possible values: $AFX::SERVER_ONLY, $AFX::CLIENT_ONLY, or $AFX::SERVER_AND_CLIENT.
  16068.    
  16069.      */
  16070.     char networking;
  16071.  
  16072.     /*! @name Scripting
  16073.     @{ */
  16074.     /*! */
  16075.     /// @}
  16076.  
  16077.  
  16078.     /*! @name Ungrouped
  16079.     @{ */
  16080.     /*! */
  16081.     /// @}
  16082.  
  16083.  
  16084.     /*! @name Object
  16085.     @{ */
  16086.     /*! */
  16087.     /// @}
  16088.  
  16089.  
  16090.     /*! @name Editing
  16091.     @{ */
  16092.     /*! */
  16093.     /// @}
  16094.  
  16095.  
  16096.     /*! @name Persistence
  16097.     @{ */
  16098.     /*! */
  16099.     /// @}
  16100.  
  16101.  };
  16102.  
  16103.  /*!
  16104.  @brief A datablock that specifies a Camera Shake effect.
  16105.  
  16106.  Camera Shake internally utilizes the standard Torque CameraShake class to implement a shaken camera effect.
  16107.  
  16108.  @ingroup afxEffects
  16109.  @ingroup AFX
  16110.  @ingroup Datablocks
  16111.   */
  16112.  class  afxCameraShakeData : public GameBaseData {
  16113.    public:
  16114.     /*!
  16115.     The camera shake frequencies for all three axes: X, Y, Z.
  16116.    
  16117.      */
  16118.     Point3F frequency;
  16119.     /*!
  16120.     The camera shake amplitudes for all three axes: X, Y, Z.
  16121.    
  16122.      */
  16123.     Point3F amplitude;
  16124.     /*!
  16125.     Radius about the effect position in which shaking will be applied.
  16126.    
  16127.      */
  16128.     float radius;
  16129.     /*!
  16130.     Magnitude by which shaking decreases over distance to radius.
  16131.    
  16132.      */
  16133.     float falloff;
  16134.  
  16135.     /*! @name Scripting
  16136.     @{ */
  16137.     /*! */
  16138.     /// @}
  16139.  
  16140.  
  16141.     /*! @name Ungrouped
  16142.     @{ */
  16143.     /*! */
  16144.     /// @}
  16145.  
  16146.  
  16147.     /*! @name Object
  16148.     @{ */
  16149.     /*! */
  16150.     /// @}
  16151.  
  16152.  
  16153.     /*! @name Editing
  16154.     @{ */
  16155.     /*! */
  16156.     /// @}
  16157.  
  16158.  
  16159.     /*! @name Persistence
  16160.     @{ */
  16161.     /*! */
  16162.     /// @}
  16163.  
  16164.  };
  16165.  
  16166.  /*!
  16167.  @brief A datablock that specifies a Collision Event effect.
  16168.  
  16169.  MORE NEEDED HERE.
  16170.  @ingroup afxEffects
  16171.  @ingroup AFX
  16172.  @ingroup Datablocks
  16173.   */
  16174.  class  afxCollisionEventData : public GameBaseData {
  16175.    public:
  16176.     /*!
  16177.     ...
  16178.    
  16179.      */
  16180.     string methodName;
  16181.     /*!
  16182.     ...
  16183.    
  16184.      */
  16185.     string scriptData;
  16186.     /*!
  16187.     ...
  16188.    
  16189.      */
  16190.     bool generateTrigger;
  16191.     /*!
  16192.     ...
  16193.    
  16194.      */
  16195.     char triggerBit;
  16196.  
  16197.     /*! @name Scripting
  16198.     @{ */
  16199.     /*! */
  16200.     /// @}
  16201.  
  16202.  
  16203.     /*! @name Ungrouped
  16204.     @{ */
  16205.     /*! */
  16206.     /// @}
  16207.  
  16208.  
  16209.     /*! @name Object
  16210.     @{ */
  16211.     /*! */
  16212.     /// @}
  16213.  
  16214.  
  16215.     /*! @name Editing
  16216.     @{ */
  16217.     /*! */
  16218.     /// @}
  16219.  
  16220.  
  16221.     /*! @name Persistence
  16222.     @{ */
  16223.     /*! */
  16224.     /// @}
  16225.  
  16226.  };
  16227.  
  16228.  /*!
  16229.  @brief A datablock that specifies a Console Message effect.
  16230.  
  16231.  Console Message effects are useful for debugging purposes when you want to make sure that an effect with a certain kind of timing is actually getting executed and for evaluating some kinds of field substitutions.
  16232.  
  16233.  @ingroup afxEffects
  16234.  @ingroup AFX
  16235.  @ingroup Datablocks
  16236.   */
  16237.  class  afxConsoleMessageData : public GameBaseData {
  16238.    public:
  16239.     /*!
  16240.     A text message to be displayed when the effect is executed.
  16241.    
  16242.      */
  16243.     string message;
  16244.  
  16245.     /*! @name Scripting
  16246.     @{ */
  16247.     /*! */
  16248.     /// @}
  16249.  
  16250.  
  16251.     /*! @name Ungrouped
  16252.     @{ */
  16253.     /*! */
  16254.     /// @}
  16255.  
  16256.  
  16257.     /*! @name Object
  16258.     @{ */
  16259.     /*! */
  16260.     /// @}
  16261.  
  16262.  
  16263.     /*! @name Editing
  16264.     @{ */
  16265.     /*! */
  16266.     /// @}
  16267.  
  16268.  
  16269.     /*! @name Persistence
  16270.     @{ */
  16271.     /*! */
  16272.     /// @}
  16273.  
  16274.  };
  16275.  
  16276.  /*!
  16277.  @brief A datablock that specifies a Damage effect.
  16278.  
  16279.  A Damage effect is useful for assigning damage with unusual timing that must be synchronized with other effects. They can be used to deal direct damage, radius damage, and damage over time. Negative damage amounts can be used for healing effects.
  16280.  
  16281.  @ingroup afxEffects
  16282.  @ingroup AFX
  16283.  @ingroup Datablocks
  16284.   */
  16285.  class  afxDamageData : public GameBaseData {
  16286.    public:
  16287.     /*!
  16288.     An arbitrary string which is passed as an argument to a spell's onDamage() script method. It can be used to identify which damage effect the damage came from in cases where more than one damage effect is used in a single spell.
  16289.    
  16290.      */
  16291.     string label;
  16292.     /*!
  16293.     An arbitrary string which is passed as an argument to a spell's onDamage() script method. It is used to classify a type of damage such as 'melee', 'magical', or 'fire'.
  16294.    
  16295.      */
  16296.     string flavor;
  16297.     /*!
  16298.     An amount of direct damage to inflict on a target.
  16299.    
  16300.      */
  16301.     float directDamage;
  16302.     /*!
  16303.     The number of times to inflict the damage specified by directDamage. Values greater than 1 inflict damage over time, with the amount of directDamage repeatedly dealt at evenly spaced intervals over the lifetime of the effect.
  16304.    
  16305.      */
  16306.     char directDamageRepeats;
  16307.     /*!
  16308.     An amount of area damage to inflict on a target. Objects within half the radius receive full damage which then diminishes out to the full distance of areaDamageRadius.
  16309.    
  16310.      */
  16311.     float areaDamage;
  16312.     /*!
  16313.     Radius centered at the effect position in which damage will be applied.
  16314.    
  16315.      */
  16316.     float areaDamageRadius;
  16317.     /*!
  16318.     Specifies an amount of force to apply to damaged objects. Objects within half the radius receive full impulse which then diminishes out to the full distance of areaDamageRadius.
  16319.    
  16320.      */
  16321.     float areaDamageImpulse;
  16322.  
  16323.     /*! @name Scripting
  16324.     @{ */
  16325.     /*! */
  16326.     /// @}
  16327.  
  16328.  
  16329.     /*! @name Ungrouped
  16330.     @{ */
  16331.     /*! */
  16332.     /// @}
  16333.  
  16334.  
  16335.     /*! @name Object
  16336.     @{ */
  16337.     /*! */
  16338.     /// @}
  16339.  
  16340.  
  16341.     /*! @name Editing
  16342.     @{ */
  16343.     /*! */
  16344.     /// @}
  16345.  
  16346.  
  16347.     /*! @name Persistence
  16348.     @{ */
  16349.     /*! */
  16350.     /// @}
  16351.  
  16352.  };
  16353.  
  16354.  /*!
  16355.  @brief A datablock that specifies a Foot Switch effect.
  16356.  
  16357.  A Foot Switch effect is used to disable some or all of the standard built-in footstep effects generated by Player objects.
  16358.  
  16359.  Stock Player objects generate footprint decals, footstep sounds, and puffs of particle dust in response to special animation triggers embedded in the Player's dts model. With the help of Phase Effects, AFX can substitute alternatives for these built-in effects. When this is done, it is often preferable to turn off some or all of the built-in footstep effects.
  16360.  
  16361.  Foot Switch effects are only meaningful when the primary position constraint is a Player or Player-derived object.
  16362.  
  16363.  @ingroup afxEffects
  16364.  @ingroup AFX
  16365.  @ingroup Datablocks
  16366.   */
  16367.  class  afxFootSwitchData : public GameBaseData {
  16368.    public:
  16369.     /*!
  16370.     When true, all of a Player's footstep effects are turned off for the duration of the foot-switch effect.
  16371.    
  16372.      */
  16373.     bool overrideAll;
  16374.     /*!
  16375.     Specifically selects whether the Player's footprint decals are enabled.
  16376.    
  16377.      */
  16378.     bool overrideDecals;
  16379.     /*!
  16380.     Specifically selects whether the Player's footstep sounds are enabled.
  16381.    
  16382.      */
  16383.     bool overrideSounds;
  16384.     /*!
  16385.     Specifically selects whether the Player's footstep puffs of dust are enabled.
  16386.    
  16387.      */
  16388.     bool overrideDust;
  16389.  
  16390.     /*! @name Scripting
  16391.     @{ */
  16392.     /*! */
  16393.     /// @}
  16394.  
  16395.  
  16396.     /*! @name Ungrouped
  16397.     @{ */
  16398.     /*! */
  16399.     /// @}
  16400.  
  16401.  
  16402.     /*! @name Object
  16403.     @{ */
  16404.     /*! */
  16405.     /// @}
  16406.  
  16407.  
  16408.     /*! @name Editing
  16409.     @{ */
  16410.     /*! */
  16411.     /// @}
  16412.  
  16413.  
  16414.     /*! @name Persistence
  16415.     @{ */
  16416.     /*! */
  16417.     /// @}
  16418.  
  16419.  };
  16420.  
  16421.  /*!
  16422.  @brief A datablock that specifies a Gui Controller effect.
  16423.  
  16424.  A Gui Controller enables effect manipulation of pre-existing gui controls. With a Gui Controller effect, a regular gui control is located by name, made visible during the lifetime of the effect, and potentially repositioned by projecting 3D constraint positions into 2D screen space. In addition, when used with a progress-bar control, (GuiProgressCtrl, afxSpellCastBar, afxStatusBar), the progress-bar will continuously reflect the elapsed progress of the effect over its lifetime.
  16425.  
  16426.  @ingroup afxEffects
  16427.  @ingroup AFX
  16428.  @ingroup Datablocks
  16429.   */
  16430.  class  afxGuiControllerData : public GameBaseData {
  16431.    public:
  16432.     /*!
  16433.     Specifies the name of an existing gui-control.
  16434.    
  16435.      */
  16436.     string controlName;
  16437.     /*!
  16438.     When true, the gui-control will retain its initial position, otherwise the gui-control position will be continuously updated using a projection of the 3D constraint position into 2D screen coordinates.
  16439.    
  16440.      */
  16441.     bool preservePosition;
  16442.     /*!
  16443.     If true, the effect will only be applied to a gui-control on the client that matches the controlling-client of the primary position constraint object.
  16444.    
  16445.      */
  16446.     bool controllingClientOnly;
  16447.  
  16448.     /*! @name Scripting
  16449.     @{ */
  16450.     /*! */
  16451.     /// @}
  16452.  
  16453.  
  16454.     /*! @name Ungrouped
  16455.     @{ */
  16456.     /*! */
  16457.     /// @}
  16458.  
  16459.  
  16460.     /*! @name Object
  16461.     @{ */
  16462.     /*! */
  16463.     /// @}
  16464.  
  16465.  
  16466.     /*! @name Editing
  16467.     @{ */
  16468.     /*! */
  16469.     /// @}
  16470.  
  16471.  
  16472.     /*! @name Persistence
  16473.     @{ */
  16474.     /*! */
  16475.     /// @}
  16476.  
  16477.  };
  16478.  
  16479.  /*!
  16480.  @brief A datablock that specifies a Gui Text effect.
  16481.  
  16482.  A Gui Text effect, with the help of an existing afxGuiTextHud, can be used to display 2D text effects on the Gui Canvas. Essentially, using Gui Text effects with an afxGuiTextHud is like using the stock GuiShapeNameHud, but with the ability to make additional text elements come and go as effects constrained to the projection of 3D positions onto the 2D screen.
  16483.  
  16484.  @ingroup afxEffects
  16485.  @ingroup AFX
  16486.  @ingroup Datablocks
  16487.   */
  16488.  class  afxGuiTextData : public GameBaseData {
  16489.    public:
  16490.     /*!
  16491.     The literal text to display on the afxGuiTextHud. The center of the text will be placed at the projection of the 3D constraint position into 2D screen space.
  16492. If the text field is set to the special string, '#shapeName', the shape name of the primary position constraint object will be used. (This is only meaningful if the constraint source is a ShapeBase-derived object.)
  16493.    
  16494.      */
  16495.     string text;
  16496.     /*!
  16497.     A color value for the text label.
  16498.    
  16499.      */
  16500.     ColorF color;
  16501.  
  16502.     /*! @name Scripting
  16503.     @{ */
  16504.     /*! */
  16505.     /// @}
  16506.  
  16507.  
  16508.     /*! @name Ungrouped
  16509.     @{ */
  16510.     /*! */
  16511.     /// @}
  16512.  
  16513.  
  16514.     /*! @name Object
  16515.     @{ */
  16516.     /*! */
  16517.     /// @}
  16518.  
  16519.  
  16520.     /*! @name Editing
  16521.     @{ */
  16522.     /*! */
  16523.     /// @}
  16524.  
  16525.  
  16526.     /*! @name Persistence
  16527.     @{ */
  16528.     /*! */
  16529.     /// @}
  16530.  
  16531.  };
  16532.  
  16533.  /*!
  16534.  @brief afxLightData is a legacy datablock which is not supported for T3D.
  16535.  
  16536.  In T3D, instead of afxLightData, use afxT3DPointLightData or afxT3DSpotLightData.
  16537.  @ingroup afxEffects
  16538.  @ingroup AFX
  16539.  @ingroup Datablocks
  16540.   */
  16541.  class  afxLightData : public GameBaseData {
  16542.    public:
  16543.  
  16544.     /*! @name Scripting
  16545.     @{ */
  16546.     /*! */
  16547.     /// @}
  16548.  
  16549.  
  16550.     /*! @name Ungrouped
  16551.     @{ */
  16552.     /*! */
  16553.     /// @}
  16554.  
  16555.  
  16556.     /*! @name Object
  16557.     @{ */
  16558.     /*! */
  16559.     /// @}
  16560.  
  16561.  
  16562.     /*! @name Editing
  16563.     @{ */
  16564.     /*! */
  16565.     /// @}
  16566.  
  16567.  
  16568.     /*! @name Persistence
  16569.     @{ */
  16570.     /*! */
  16571.     /// @}
  16572.  
  16573.  };
  16574.  
  16575.  /*!
  16576.  @brief A datablock baseclass for afxT3DPointLightData and afxT3DSpotLightData.
  16577.  
  16578.  Not intended to be used directly, afxT3DLightBaseData exists to provide base member variables and generic functionality for the derived classes afxT3DPointLightData and afxT3DSpotLightData.
  16579.  
  16580.  @see afxT3DPointLightData
  16581.  
  16582.  @see afxT3DSpotLightData
  16583.  
  16584.  @see PointLight
  16585.  
  16586.  @see SpotLight
  16587.  
  16588.  @ingroup afxEffects
  16589.  @ingroup AFX
  16590.  @ingroup Datablocks
  16591.   */
  16592.  class  afxT3DLightBaseData : public GameBaseData {
  16593.    public:
  16594.  
  16595.     /*! @name Light
  16596.     @{ */
  16597.     /*! */
  16598.     /*!
  16599.     Enables/Disables the object rendering and functionality in the scene.
  16600.    
  16601.      */
  16602.     bool isEnabled;
  16603.     /*!
  16604.     Changes the base color hue of the light.
  16605.    
  16606.      */
  16607.     ColorF color;
  16608.     /*!
  16609.     Adjusts the lights power, 0 being off completely.
  16610.    
  16611.      */
  16612.     float brightness;
  16613.     /*!
  16614.     Enables/disables shadow casts by this light.
  16615.    
  16616.      */
  16617.     bool castShadows;
  16618.     /*!
  16619.     Used for sorting of lights by the light manager. Priority determines if a light has a stronger effect than, those with a lower value
  16620.    
  16621.      */
  16622.     float priority;
  16623.     /*!
  16624.     Enables/disables a semi-transparent geometry to help visualize the light's range and placement.
  16625.    
  16626.      */
  16627.     bool localRenderViz;
  16628.     /// @}
  16629.  
  16630.  
  16631.     /*! @name Light Animation
  16632.     @{ */
  16633.     /*! */
  16634.     /*!
  16635.     Toggles animation for the light on and off
  16636.    
  16637.      */
  16638.     bool animate;
  16639.     /*!
  16640.     Datablock containing light animation information (LightAnimData)
  16641.    
  16642.      */
  16643.     LightAnimData animationType;
  16644.     /*!
  16645.     The length of time in seconds for a single playback of the light animation
  16646.    
  16647.      */
  16648.     float animationPeriod;
  16649.     /*!
  16650.     The phase used to offset the animation start time to vary the animation of nearby lights.
  16651.    
  16652.      */
  16653.     float animationPhase;
  16654.     /// @}
  16655.  
  16656.  
  16657.     /*! @name Misc
  16658.     @{ */
  16659.     /*! */
  16660.     /*!
  16661.     Datablock containing light flare information (LightFlareData)
  16662.    
  16663.      */
  16664.     LightFlareData flareType;
  16665.     /*!
  16666.     Globally scales all features of the light flare
  16667.    
  16668.      */
  16669.     float flareScale;
  16670.     /// @}
  16671.  
  16672.  
  16673.     /*! @name Scripting
  16674.     @{ */
  16675.     /*! */
  16676.     /// @}
  16677.  
  16678.  
  16679.     /*! @name Ungrouped
  16680.     @{ */
  16681.     /*! */
  16682.     /// @}
  16683.  
  16684.  
  16685.     /*! @name Object
  16686.     @{ */
  16687.     /*! */
  16688.     /// @}
  16689.  
  16690.  
  16691.     /*! @name Editing
  16692.     @{ */
  16693.     /*! */
  16694.     /// @}
  16695.  
  16696.  
  16697.     /*! @name Persistence
  16698.     @{ */
  16699.     /*! */
  16700.     /// @}
  16701.  
  16702.  };
  16703.  
  16704.  /*!
  16705.  @brief A datablock that specifies a Model effect.
  16706.  
  16707.  A Model effect is a lightweight client-only geometry object useful for effect-driven props.
  16708.  
  16709.  @ingroup afxEffects
  16710.  @ingroup AFX
  16711.  @ingroup Datablocks
  16712.   */
  16713.  class  afxModelData : public GameBaseData {
  16714.    public:
  16715.     /*!
  16716.     The name of a .dts format file to use for the model.
  16717.    
  16718.      */
  16719.     filename shapeFile;
  16720.     /*!
  16721.     The name of an animation sequence to play in the model.
  16722.    
  16723.      */
  16724.     filename sequence;
  16725.     /*!
  16726.     The rate of playback for the sequence.
  16727.    
  16728.      */
  16729.     float sequenceRate;
  16730.     /*!
  16731.     An offset in seconds indicating a starting point for the animation sequence specified by the sequence field. A rate of 1.0 (rather than sequenceRate) is used to convert from seconds to the thread offset.
  16732.    
  16733.      */
  16734.     float sequenceOffset;
  16735.     /*!
  16736.     An alpha multiplier used to set maximum opacity of the model.
  16737.    
  16738.      */
  16739.     float alphaMult;
  16740.     /*!
  16741.    
  16742.    
  16743.      */
  16744.     float fogMult;
  16745.     /*!
  16746.     Rename one or more texture tags in the model. Texture tags are what link a model's textures to materials.
  16747. Field should be a string containing space-separated remapping tokens. A remapping token is two names separated by a colon, ':'. The first name should be a texture-tag that exists in the model, while the second is a new name to replace it. The string can have any number of remapping tokens as long as the total string length does not exceed 255.
  16748.    
  16749.      */
  16750.     string remapTextureTags;
  16751.     /*!
  16752.     Sets whether the model casts a shadow.
  16753.    
  16754.      */
  16755.     bool shadowEnable;
  16756.     /*!
  16757.     deprecated
  16758.    
  16759.      */
  16760.     bool useVertexAlpha;
  16761.     /*!
  16762.     deprecated
  16763.    
  16764.      */
  16765.     int forceOnMaterialFlags;
  16766.     /*!
  16767.     deprecated
  16768.    
  16769.      */
  16770.     int forceOffMaterialFlags;
  16771.     /*!
  16772.     deprecated
  16773.    
  16774.      */
  16775.     bool textureFiltering;
  16776.     /*!
  16777.     deprecated
  16778.    
  16779.      */
  16780.     bool overrideLightingOptions;
  16781.     /*!
  16782.    
  16783.    
  16784.      */
  16785.     bool receiveSunLight;
  16786.     /*!
  16787.     deprecated
  16788.    
  16789.      */
  16790.     bool receiveLMLighting;
  16791.     /*!
  16792.     deprecated
  16793.    
  16794.      */
  16795.     bool useAdaptiveSelfIllumination;
  16796.     /*!
  16797.     deprecated
  16798.    
  16799.      */
  16800.     bool useCustomAmbientLighting;
  16801.     /*!
  16802.     deprecated
  16803.    
  16804.      */
  16805.     bool customAmbientSelfIllumination;
  16806.     /*!
  16807.     deprecated
  16808.    
  16809.      */
  16810.     ColorF customAmbientLighting;
  16811.     /*!
  16812.     deprecated
  16813.    
  16814.      */
  16815.     int shadowSize;
  16816.     /*!
  16817.     deprecated
  16818.    
  16819.      */
  16820.     float shadowMaxVisibleDistance;
  16821.     /*!
  16822.     deprecated
  16823.    
  16824.      */
  16825.     float shadowProjectionDistance;
  16826.     /*!
  16827.     deprecated
  16828.    
  16829.      */
  16830.     float shadowSphereAdjust;
  16831.  
  16832.     /*! @name Scripting
  16833.     @{ */
  16834.     /*! */
  16835.     /// @}
  16836.  
  16837.  
  16838.     /*! @name Ungrouped
  16839.     @{ */
  16840.     /*! */
  16841.     /// @}
  16842.  
  16843.  
  16844.     /*! @name Object
  16845.     @{ */
  16846.     /*! */
  16847.     /// @}
  16848.  
  16849.  
  16850.     /*! @name Editing
  16851.     @{ */
  16852.     /*! */
  16853.     /// @}
  16854.  
  16855.  
  16856.     /*! @name Persistence
  16857.     @{ */
  16858.     /*! */
  16859.     /// @}
  16860.  
  16861.  };
  16862.  
  16863.  /*!
  16864.  @brief A Model effect as defined by an afxModelData datablock.
  16865.  
  16866.  A Model effect is a lightweight client-only geometry object useful for effect-driven props.
  16867.  @ingroup afxEffects
  16868.  @ingroup AFX
  16869.   */
  16870.  class  afxModel : public GameBase {
  16871.    public:
  16872.  
  16873.     /*! @name Game
  16874.     @{ */
  16875.     /*! */
  16876.     /// @}
  16877.  
  16878.  
  16879.     /*! @name Transform
  16880.     @{ */
  16881.     /*! */
  16882.     /// @}
  16883.  
  16884.  
  16885.     /*! @name Editing
  16886.     @{ */
  16887.     /*! */
  16888.     /// @}
  16889.  
  16890.  
  16891.     /*! @name Mounting
  16892.     @{ */
  16893.     /*! */
  16894.     /// @}
  16895.  
  16896.  
  16897.     /*! @name Ungrouped
  16898.     @{ */
  16899.     /*! */
  16900.     /// @}
  16901.  
  16902.  
  16903.     /*! @name Object
  16904.     @{ */
  16905.     /*! */
  16906.     /// @}
  16907.  
  16908.  
  16909.     /*! @name Editing
  16910.     @{ */
  16911.     /*! */
  16912.     /// @}
  16913.  
  16914.  
  16915.     /*! @name Persistence
  16916.     @{ */
  16917.     /*! */
  16918.     /// @}
  16919.  
  16920.  };
  16921.  
  16922.  /*!
  16923.  @brief A Mooring effect as defined by an afxMooringData datablock.
  16924.  
  16925.  A Mooring is an invisible effect object which can be positioned and oriented within a scene like other objects. Its main purpose is to serve as a common mount point for other effects within the same choreographer. Typically one uses AFX animation features to create movement for a Mooring and then other effects are bound to it using effect-to-effect constraints (#effect).
  16926.  @ingroup afxEffects
  16927.  @ingroup AFX
  16928.   */
  16929.  class  afxMooring : public GameBase {
  16930.    public:
  16931.  
  16932.     /*! @name Game
  16933.     @{ */
  16934.     /*! */
  16935.     /// @}
  16936.  
  16937.  
  16938.     /*! @name Transform
  16939.     @{ */
  16940.     /*! */
  16941.     /// @}
  16942.  
  16943.  
  16944.     /*! @name Editing
  16945.     @{ */
  16946.     /*! */
  16947.     /// @}
  16948.  
  16949.  
  16950.     /*! @name Mounting
  16951.     @{ */
  16952.     /*! */
  16953.     /// @}
  16954.  
  16955.  
  16956.     /*! @name Ungrouped
  16957.     @{ */
  16958.     /*! */
  16959.     /// @}
  16960.  
  16961.  
  16962.     /*! @name Object
  16963.     @{ */
  16964.     /*! */
  16965.     /// @}
  16966.  
  16967.  
  16968.     /*! @name Editing
  16969.     @{ */
  16970.     /*! */
  16971.     /// @}
  16972.  
  16973.  
  16974.     /*! @name Persistence
  16975.     @{ */
  16976.     /*! */
  16977.     /// @}
  16978.  
  16979.  };
  16980.  
  16981.  /*!
  16982.  @brief afxMultiLightData is a legacy datablock which is not supported for T3D.
  16983.  
  16984.  @ingroup afxEffects
  16985.  @ingroup AFX
  16986.  @ingroup Datablocks
  16987.   */
  16988.  class  afxMultiLightData : public GameBaseData {
  16989.    public:
  16990.  
  16991.     /*! @name Scripting
  16992.     @{ */
  16993.     /*! */
  16994.     /// @}
  16995.  
  16996.  
  16997.     /*! @name Ungrouped
  16998.     @{ */
  16999.     /*! */
  17000.     /// @}
  17001.  
  17002.  
  17003.     /*! @name Object
  17004.     @{ */
  17005.     /*! */
  17006.     /// @}
  17007.  
  17008.  
  17009.     /*! @name Editing
  17010.     @{ */
  17011.     /*! */
  17012.     /// @}
  17013.  
  17014.  
  17015.     /*! @name Persistence
  17016.     @{ */
  17017.     /*! */
  17018.     /// @}
  17019.  
  17020.  };
  17021.  
  17022.  /*!
  17023.  @brief A base datablock inherited by AFX Particle Emitter effects.
  17024.  
  17025.  A base datablock inherited by AFX Particle Emitter effects.
  17026.  
  17027.  @ingroup afxEffects
  17028.  @ingroup AFX
  17029.  @ingroup Datablocks
  17030.   */
  17031.  class  afxParticleEmitterData : public ParticleEmitterData {
  17032.    public:
  17033.     /*!
  17034.     If true, the initial velocity of emitted particles is multiplied by the fade amount of the containing effect wrapper. As the effect fades-in and out, so does the initial velocity of new particles.
  17035.    
  17036.      */
  17037.     bool fadeVelocity;
  17038.     /*!
  17039.     If true, the ejection offset of emitted particles is multiplied by the fade amount of the containing effect wrapper. As the effect fades-in and out, so does the ejection offset of new particles.
  17040.    
  17041.      */
  17042.     bool fadeOffset;
  17043.     /*!
  17044.     General direction vector used for emitting particles. Its exact interpretation is determined by the particle emitter subclass.
  17045.    
  17046.      */
  17047.     Point3F vector;
  17048.     /*!
  17049.     Sets whether the vector field should be interpreted as a vector in the world coordinate system.
  17050.    
  17051.      */
  17052.     bool vectorIsWorld;
  17053.     /*!
  17054.     A string of paths to be used as transform paths. Each path name must reference an afxPathData datablock. Transform paths are used to translate particles along a given path or series of paths.
  17055.    
  17056.      */
  17057.     string pathsTransform;
  17058.  
  17059.     /*! @name ParticleEmitterData
  17060.     @{ */
  17061.     /*! */
  17062.     /// @}
  17063.  
  17064.  
  17065.     /*! @name AFX
  17066.     @{ */
  17067.     /*! */
  17068.     /// @}
  17069.  
  17070.  
  17071.     /*! @name AFX Pooled Particles
  17072.     @{ */
  17073.     /*! */
  17074.     /// @}
  17075.  
  17076.  
  17077.     /*! @name Scripting
  17078.     @{ */
  17079.     /*! */
  17080.     /// @}
  17081.  
  17082.  
  17083.     /*! @name Ungrouped
  17084.     @{ */
  17085.     /*! */
  17086.     /// @}
  17087.  
  17088.  
  17089.     /*! @name Object
  17090.     @{ */
  17091.     /*! */
  17092.     /// @}
  17093.  
  17094.  
  17095.     /*! @name Editing
  17096.     @{ */
  17097.     /*! */
  17098.     /// @}
  17099.  
  17100.  
  17101.     /*! @name Persistence
  17102.     @{ */
  17103.     /*! */
  17104.     /// @}
  17105.  
  17106.  };
  17107.  
  17108.  /*!
  17109.  @brief An AFX customized particle emitter that emits particles along a 3D vector.
  17110.  
  17111.  An AFX customized particle emitter that emits particles along a 3D vector.
  17112.  
  17113.  @ingroup afxEffects
  17114.  @ingroup AFX
  17115.  @ingroup Datablocks
  17116.   */
  17117.  class  afxParticleEmitterVectorData : public afxParticleEmitterData {
  17118.    public:
  17119.  
  17120.     /*! @name ParticleEmitterData
  17121.     @{ */
  17122.     /*! */
  17123.     /// @}
  17124.  
  17125.  
  17126.     /*! @name AFX
  17127.     @{ */
  17128.     /*! */
  17129.     /// @}
  17130.  
  17131.  
  17132.     /*! @name AFX Pooled Particles
  17133.     @{ */
  17134.     /*! */
  17135.     /// @}
  17136.  
  17137.  
  17138.     /*! @name Scripting
  17139.     @{ */
  17140.     /*! */
  17141.     /// @}
  17142.  
  17143.  
  17144.     /*! @name Ungrouped
  17145.     @{ */
  17146.     /*! */
  17147.     /// @}
  17148.  
  17149.  
  17150.     /*! @name Object
  17151.     @{ */
  17152.     /*! */
  17153.     /// @}
  17154.  
  17155.  
  17156.     /*! @name Editing
  17157.     @{ */
  17158.     /*! */
  17159.     /// @}
  17160.  
  17161.  
  17162.     /*! @name Persistence
  17163.     @{ */
  17164.     /*! */
  17165.     /// @}
  17166.  
  17167.  };
  17168.  
  17169.  /*!
  17170.  @brief An AFX customized particle emitter that emits particles within a cone shape.
  17171.  
  17172.  An AFX customized particle emitter that emits particles within a cone shape.
  17173.  
  17174.  @ingroup afxEffects
  17175.  @ingroup AFX
  17176.  @ingroup Datablocks
  17177.   */
  17178.  class  afxParticleEmitterConeData : public afxParticleEmitterData {
  17179.    public:
  17180.     /*!
  17181.     ...
  17182.    
  17183.      */
  17184.     float spreadMin;
  17185.     /*!
  17186.     ...
  17187.    
  17188.      */
  17189.     float spreadMax;
  17190.  
  17191.     /*! @name ParticleEmitterData
  17192.     @{ */
  17193.     /*! */
  17194.     /// @}
  17195.  
  17196.  
  17197.     /*! @name AFX
  17198.     @{ */
  17199.     /*! */
  17200.     /// @}
  17201.  
  17202.  
  17203.     /*! @name AFX Pooled Particles
  17204.     @{ */
  17205.     /*! */
  17206.     /// @}
  17207.  
  17208.  
  17209.     /*! @name Scripting
  17210.     @{ */
  17211.     /*! */
  17212.     /// @}
  17213.  
  17214.  
  17215.     /*! @name Ungrouped
  17216.     @{ */
  17217.     /*! */
  17218.     /// @}
  17219.  
  17220.  
  17221.     /*! @name Object
  17222.     @{ */
  17223.     /*! */
  17224.     /// @}
  17225.  
  17226.  
  17227.     /*! @name Editing
  17228.     @{ */
  17229.     /*! */
  17230.     /// @}
  17231.  
  17232.  
  17233.     /*! @name Persistence
  17234.     @{ */
  17235.     /*! */
  17236.     /// @}
  17237.  
  17238.  };
  17239.  
  17240.  /*!
  17241.  @brief An AFX customized particle emitter that emits particles along a path.
  17242.  
  17243.  An AFX customized particle emitter that emits particles along a path.
  17244.  
  17245.  @ingroup afxEffects
  17246.  @ingroup AFX
  17247.  @ingroup Datablocks
  17248.   */
  17249.  class  afxParticleEmitterPathData : public afxParticleEmitterData {
  17250.    public:
  17251.     /*!
  17252.     ...
  17253.    
  17254.      */
  17255.     string paths;
  17256.     /*!
  17257.     ...
  17258.    
  17259.      */
  17260.     afxParticleEmitterPath_OriginType pathOrigin;
  17261.     /*!
  17262.     ...
  17263.    
  17264.      */
  17265.     bool groundConform;
  17266.     /*!
  17267.     ...
  17268.    
  17269.      */
  17270.     bool groundConformTerrain;
  17271.     /*!
  17272.     ...
  17273.    
  17274.      */
  17275.     bool groundConformInteriors;
  17276.     /*!
  17277.     ...
  17278.    
  17279.      */
  17280.     float groundConformHeight;
  17281.  
  17282.     /*! @name ParticleEmitterData
  17283.     @{ */
  17284.     /*! */
  17285.     /// @}
  17286.  
  17287.  
  17288.     /*! @name AFX
  17289.     @{ */
  17290.     /*! */
  17291.     /// @}
  17292.  
  17293.  
  17294.     /*! @name AFX Pooled Particles
  17295.     @{ */
  17296.     /*! */
  17297.     /// @}
  17298.  
  17299.  
  17300.     /*! @name Scripting
  17301.     @{ */
  17302.     /*! */
  17303.     /// @}
  17304.  
  17305.  
  17306.     /*! @name Ungrouped
  17307.     @{ */
  17308.     /*! */
  17309.     /// @}
  17310.  
  17311.  
  17312.     /*! @name Object
  17313.     @{ */
  17314.     /*! */
  17315.     /// @}
  17316.  
  17317.  
  17318.     /*! @name Editing
  17319.     @{ */
  17320.     /*! */
  17321.     /// @}
  17322.  
  17323.  
  17324.     /*! @name Persistence
  17325.     @{ */
  17326.     /*! */
  17327.     /// @}
  17328.  
  17329.  };
  17330.  
  17331.  /*!
  17332.  @brief An AFX customized particle emitter that emits particles within a disc shape.
  17333.  
  17334.  An AFX customized particle emitter that emits particles within a disc shape.
  17335.  
  17336.  @ingroup afxEffects
  17337.  @ingroup AFX
  17338.  @ingroup Datablocks
  17339.   */
  17340.  class  afxParticleEmitterDiscData : public afxParticleEmitterData {
  17341.    public:
  17342.     /*!
  17343.     ...
  17344.    
  17345.      */
  17346.     float radiusMin;
  17347.     /*!
  17348.     ...
  17349.    
  17350.      */
  17351.     float radiusMax;
  17352.  
  17353.     /*! @name ParticleEmitterData
  17354.     @{ */
  17355.     /*! */
  17356.     /// @}
  17357.  
  17358.  
  17359.     /*! @name AFX
  17360.     @{ */
  17361.     /*! */
  17362.     /// @}
  17363.  
  17364.  
  17365.     /*! @name AFX Pooled Particles
  17366.     @{ */
  17367.     /*! */
  17368.     /// @}
  17369.  
  17370.  
  17371.     /*! @name Scripting
  17372.     @{ */
  17373.     /*! */
  17374.     /// @}
  17375.  
  17376.  
  17377.     /*! @name Ungrouped
  17378.     @{ */
  17379.     /*! */
  17380.     /// @}
  17381.  
  17382.  
  17383.     /*! @name Object
  17384.     @{ */
  17385.     /*! */
  17386.     /// @}
  17387.  
  17388.  
  17389.     /*! @name Editing
  17390.     @{ */
  17391.     /*! */
  17392.     /// @}
  17393.  
  17394.  
  17395.     /*! @name Persistence
  17396.     @{ */
  17397.     /*! */
  17398.     /// @}
  17399.  
  17400.  };
  17401.  
  17402.  /*!
  17403.  @brief A datablock that specifies a PhysicalZone effect.
  17404.  
  17405.  A Physical Zone is a Torque effect that applies physical forces to Players and other movable objects that enter a specific region of influence. AFX has enhanced Physical Zones by allowing orientation of vector forces and adding radial forces. AFX has also optimized Physical Zone networking so that they can be constrained to moving objects for a variety of effects including repelling and flying.
  17406.  
  17407.  @ingroup afxEffects
  17408.  @ingroup AFX
  17409.  @ingroup Datablocks
  17410.   */
  17411.  class  afxPhysicalZoneData : public GameBaseData {
  17412.    public:
  17413.     /*!
  17414.     A multiplier that biases the velocity of an object every tick it is within the zone.
  17415.    
  17416.      */
  17417.     float velocityMod;
  17418.     /*!
  17419.     A multiplier that biases the influence of gravity on objects within the zone.
  17420.    
  17421.      */
  17422.     float gravityMod;
  17423.     /*!
  17424.     A three-valued vector representing a directional force applied to objects withing the zone.
  17425.    
  17426.      */
  17427.     Point3F appliedForce;
  17428.     /*!
  17429.     Floating point values describing the outer bounds of the PhysicalZone's region of influence.
  17430.    
  17431.      */
  17432.     string polyhedron;
  17433.     /*!
  17434.     This enumerated attribute defines the type of force used in the PhysicalZone. Possible values: vector, sphere, or cylinder.
  17435.    
  17436.      */
  17437.     PhysicalZone_ForceType forceType;
  17438.     /*!
  17439.     Determines if the force can be oriented by the PhysicalZone's transform matrix.
  17440.    
  17441.      */
  17442.     bool orientForce;
  17443.     /*!
  17444.     When true, an object used as the primary position constraint of a physical-zone effect will not be influenced by the forces of the zone.
  17445.    
  17446.      */
  17447.     bool excludeConstraintObject;
  17448.  
  17449.     /*! @name Scripting
  17450.     @{ */
  17451.     /*! */
  17452.     /// @}
  17453.  
  17454.  
  17455.     /*! @name Ungrouped
  17456.     @{ */
  17457.     /*! */
  17458.     /// @}
  17459.  
  17460.  
  17461.     /*! @name Object
  17462.     @{ */
  17463.     /*! */
  17464.     /// @}
  17465.  
  17466.  
  17467.     /*! @name Editing
  17468.     @{ */
  17469.     /*! */
  17470.     /// @}
  17471.  
  17472.  
  17473.     /*! @name Persistence
  17474.     @{ */
  17475.     /*! */
  17476.     /// @}
  17477.  
  17478.  };
  17479.  
  17480.  /*!
  17481.  @brief A datablock that specifies a Player Movement effect.
  17482.  
  17483.  Player Movement effects are used to directly alter the speed and/or movement direction of Player objects. The Player Movement effect is similar to the Player Puppet effect, but where puppet effects totally take over a Player's transformation using the AFX constraint system, Player Movement effects 'steer' the player using the same mechanisms that allow Player control from mouse and keyboard input. Another difference is that Player Movement effects only influence the server instance of a Player. Puppet effects can influence both the Player's server instance and its client ghosts.
  17484.  
  17485.  @ingroup afxEffects
  17486.  @ingroup AFX
  17487.  @ingroup Datablocks
  17488.   */
  17489.  class  afxPlayerMovementData : public GameBaseData {
  17490.    public:
  17491.     /*!
  17492.     A floating-point multiplier that scales the constraint Player's movement speed.
  17493.    
  17494.      */
  17495.     float speedBias;
  17496.     /*!
  17497.    
  17498.    
  17499.      */
  17500.     Point3F movement;
  17501.     /*!
  17502.     Possible values: add, multiply, or replace.
  17503.    
  17504.      */
  17505.     afxPlayerMovement_OpType movementOp;
  17506.  
  17507.     /*! @name Scripting
  17508.     @{ */
  17509.     /*! */
  17510.     /// @}
  17511.  
  17512.  
  17513.     /*! @name Ungrouped
  17514.     @{ */
  17515.     /*! */
  17516.     /// @}
  17517.  
  17518.  
  17519.     /*! @name Object
  17520.     @{ */
  17521.     /*! */
  17522.     /// @}
  17523.  
  17524.  
  17525.     /*! @name Editing
  17526.     @{ */
  17527.     /*! */
  17528.     /// @}
  17529.  
  17530.  
  17531.     /*! @name Persistence
  17532.     @{ */
  17533.     /*! */
  17534.     /// @}
  17535.  
  17536.  };
  17537.  
  17538.  /*!
  17539.  @brief A datablock that specifies a Player Puppet effect.
  17540.  
  17541.  Player Puppet effects are defined using the afxPlayerPuppetData datablock and are used to control the movement of Player objects with the AFX constraint system. The Player Puppet effect is similar to the Player Movement effect, but where movement effects 'steer' the player using the same mechanisms that allow Player control from mouse and keyboard input, Player Puppet effects totally take over a Player's transformation using the AFX constraint system.
  17542.  
  17543.  Player Puppet can be configured to directly move a Player's client ghosts as well as its server instance. When doing this, it is important to keep the general motion of the Player object and its ghosts somewhat consistent. Otherwise, obvious discontinuities in the motion will result when the Player Puppet ends and control is restored to the server Player.
  17544.  
  17545.  @ingroup afxEffects
  17546.  @ingroup AFX
  17547.  @ingroup Datablocks
  17548.   */
  17549.  class  afxPlayerPuppetData : public GameBaseData {
  17550.    public:
  17551.     /*!
  17552.     ...
  17553.    
  17554.      */
  17555.     string objectSpec;
  17556.     /*!
  17557.     ...
  17558.    
  17559.      */
  17560.     char networking;
  17561.  
  17562.     /*! @name Scripting
  17563.     @{ */
  17564.     /*! */
  17565.     /// @}
  17566.  
  17567.  
  17568.     /*! @name Ungrouped
  17569.     @{ */
  17570.     /*! */
  17571.     /// @}
  17572.  
  17573.  
  17574.     /*! @name Object
  17575.     @{ */
  17576.     /*! */
  17577.     /// @}
  17578.  
  17579.  
  17580.     /*! @name Editing
  17581.     @{ */
  17582.     /*! */
  17583.     /// @}
  17584.  
  17585.  
  17586.     /*! @name Persistence
  17587.     @{ */
  17588.     /*! */
  17589.     /// @}
  17590.  
  17591.  };
  17592.  
  17593.  /*!
  17594.  @brief A datablock that specifies a dynamic Point Light effect.
  17595.  
  17596.  A Point Light effect that uses the T3D PointLight object. afxT3DPointLightData has the same fields found in PointLight but in a datablock structure.
  17597.  
  17598.  @ingroup afxEffects
  17599.  @ingroup AFX
  17600.  @ingroup Datablocks
  17601.   */
  17602.  class  afxT3DPointLightData : public afxT3DLightBaseData {
  17603.    public:
  17604.  
  17605.     /*! @name Light
  17606.     @{ */
  17607.     /*! */
  17608.     /*!
  17609.     Controls the falloff of the light emission
  17610.    
  17611.      */
  17612.     float radius;
  17613.     /// @}
  17614.  
  17615.  
  17616.     /*! @name Light
  17617.     @{ */
  17618.     /*! */
  17619.     /// @}
  17620.  
  17621.  
  17622.     /*! @name Light Animation
  17623.     @{ */
  17624.     /*! */
  17625.     /// @}
  17626.  
  17627.  
  17628.     /*! @name Misc
  17629.     @{ */
  17630.     /*! */
  17631.     /// @}
  17632.  
  17633.  
  17634.     /*! @name Scripting
  17635.     @{ */
  17636.     /*! */
  17637.     /// @}
  17638.  
  17639.  
  17640.     /*! @name Ungrouped
  17641.     @{ */
  17642.     /*! */
  17643.     /// @}
  17644.  
  17645.  
  17646.     /*! @name Object
  17647.     @{ */
  17648.     /*! */
  17649.     /// @}
  17650.  
  17651.  
  17652.     /*! @name Editing
  17653.     @{ */
  17654.     /*! */
  17655.     /// @}
  17656.  
  17657.  
  17658.     /*! @name Persistence
  17659.     @{ */
  17660.     /*! */
  17661.     /// @}
  17662.  
  17663.  };
  17664.  
  17665.  /*!
  17666.  @brief A datablock that specifies a Script Event effect.
  17667.  
  17668.  Arbitrary script functions can be called as an AFX effect using afxScriptEventData. They are useful for implementing high-level scripted side-effects such as character resurrection or teleportation.
  17669.  
  17670.  @ingroup afxEffects
  17671.  @ingroup AFX
  17672.  @ingroup Datablocks
  17673.   */
  17674.  class  afxScriptEventData : public GameBaseData {
  17675.    public:
  17676.     /*!
  17677.     The name of a script method defined for the instance class of an effects choreographer. The arguments used to call this method are determined by the type of choreographer.
  17678.    
  17679.      */
  17680.     string methodName;
  17681.     /*!
  17682.     An arbitrary blind data value which is passed in as an argument of the script event method. The value of scriptData can be used to differentiate uses when handling different script event effects with a single method.
  17683.    
  17684.      */
  17685.     string scriptData;
  17686.  
  17687.     /*! @name Scripting
  17688.     @{ */
  17689.     /*! */
  17690.     /// @}
  17691.  
  17692.  
  17693.     /*! @name Ungrouped
  17694.     @{ */
  17695.     /*! */
  17696.     /// @}
  17697.  
  17698.  
  17699.     /*! @name Object
  17700.     @{ */
  17701.     /*! */
  17702.     /// @}
  17703.  
  17704.  
  17705.     /*! @name Editing
  17706.     @{ */
  17707.     /*! */
  17708.     /// @}
  17709.  
  17710.  
  17711.     /*! @name Persistence
  17712.     @{ */
  17713.     /*! */
  17714.     /// @}
  17715.  
  17716.  };
  17717.  
  17718.  /*!
  17719.  @brief A datablock that specifies a dynamic Spot Light effect.
  17720.  
  17721.  A Spot Light effect that uses the T3D SpotLight object. afxT3DSpotLightData has the same fields found in SpotLight but in a datablock structure.
  17722.  
  17723.  @ingroup afxEffects
  17724.  @ingroup AFX
  17725.  @ingroup Datablocks
  17726.   */
  17727.  class  afxT3DSpotLightData : public afxT3DLightBaseData {
  17728.    public:
  17729.  
  17730.     /*! @name Light
  17731.     @{ */
  17732.     /*! */
  17733.     /*!
  17734.     ...
  17735.    
  17736.      */
  17737.     float range;
  17738.     /*!
  17739.     ...
  17740.    
  17741.      */
  17742.     float innerAngle;
  17743.     /*!
  17744.     ...
  17745.    
  17746.      */
  17747.     float outerAngle;
  17748.     /// @}
  17749.  
  17750.  
  17751.     /*! @name Light
  17752.     @{ */
  17753.     /*! */
  17754.     /// @}
  17755.  
  17756.  
  17757.     /*! @name Light Animation
  17758.     @{ */
  17759.     /*! */
  17760.     /// @}
  17761.  
  17762.  
  17763.     /*! @name Misc
  17764.     @{ */
  17765.     /*! */
  17766.     /// @}
  17767.  
  17768.  
  17769.     /*! @name Scripting
  17770.     @{ */
  17771.     /*! */
  17772.     /// @}
  17773.  
  17774.  
  17775.     /*! @name Ungrouped
  17776.     @{ */
  17777.     /*! */
  17778.     /// @}
  17779.  
  17780.  
  17781.     /*! @name Object
  17782.     @{ */
  17783.     /*! */
  17784.     /// @}
  17785.  
  17786.  
  17787.     /*! @name Editing
  17788.     @{ */
  17789.     /*! */
  17790.     /// @}
  17791.  
  17792.  
  17793.     /*! @name Persistence
  17794.     @{ */
  17795.     /*! */
  17796.     /// @}
  17797.  
  17798.  };
  17799.  
  17800.  /*!
  17801.  @brief A datablock that specifies a StaticShape effect.
  17802.  
  17803.  afxStaticShapeData inherits from StaticShapeData and adds some AFX specific fields. StaticShape effects should be specified using afxStaticShapeData rather than StaticShapeData datablocks.
  17804.  
  17805.  @ingroup afxEffects
  17806.  @ingroup AFX
  17807.  @ingroup Datablocks
  17808.   */
  17809.  class  afxStaticShapeData : public StaticShapeData {
  17810.    public:
  17811.     /*!
  17812.     An animation sequence in the StaticShape to play.
  17813.    
  17814.      */
  17815.     filename sequence;
  17816.     /*!
  17817.     ...
  17818.    
  17819.      */
  17820.     bool ignoreSceneAmbient;
  17821.     /*!
  17822.     ...
  17823.    
  17824.      */
  17825.     bool useCustomSceneAmbient;
  17826.     /*!
  17827.     ...
  17828.    
  17829.      */
  17830.     ColorF customSceneAmbient;
  17831.     /*!
  17832.     When true, the StaticShape effect will leave behind the StaticShape object as a permanent part of the scene.
  17833.    
  17834.      */
  17835.     bool doSpawn;
  17836.  
  17837.     /*! @name Shadows
  17838.     @{ */
  17839.     /*! */
  17840.     /// @}
  17841.  
  17842.  
  17843.     /*! @name Render
  17844.     @{ */
  17845.     /*! */
  17846.     /// @}
  17847.  
  17848.  
  17849.     /*! @name Destruction
  17850.    
  17851.     Parameters related to the destruction effects of this object.
  17852.     @{ */
  17853.     /*! */
  17854.     /// @}
  17855.  
  17856.  
  17857.     /*! @name Physics
  17858.     @{ */
  17859.     /*! */
  17860.     /// @}
  17861.  
  17862.  
  17863.     /*! @name Damage/Energy
  17864.     @{ */
  17865.     /*! */
  17866.     /// @}
  17867.  
  17868.  
  17869.     /*! @name Camera
  17870.    
  17871.     The settings used by the shape when it is the camera.
  17872.     @{ */
  17873.     /*! */
  17874.     /// @}
  17875.  
  17876.  
  17877.     /*! @name Scripting
  17878.     @{ */
  17879.     /*! */
  17880.     /// @}
  17881.  
  17882.  
  17883.     /*! @name Ungrouped
  17884.     @{ */
  17885.     /*! */
  17886.     /// @}
  17887.  
  17888.  
  17889.     /*! @name Object
  17890.     @{ */
  17891.     /*! */
  17892.     /// @}
  17893.  
  17894.  
  17895.     /*! @name Editing
  17896.     @{ */
  17897.     /*! */
  17898.     /// @}
  17899.  
  17900.  
  17901.     /*! @name Persistence
  17902.     @{ */
  17903.     /*! */
  17904.     /// @}
  17905.  
  17906.  };
  17907.  
  17908.  /*!
  17909.  @brief A StaticShape effect as defined by an afxStaticShapeData datablock.
  17910.  
  17911.  @ingroup afxEffects
  17912.  @ingroup AFX
  17913.   */
  17914.  class  afxStaticShape : public StaticShape {
  17915.    public:
  17916.  
  17917.     /*! @name Game
  17918.     @{ */
  17919.     /*! */
  17920.     /// @}
  17921.  
  17922.  
  17923.     /*! @name Transform
  17924.     @{ */
  17925.     /*! */
  17926.     /// @}
  17927.  
  17928.  
  17929.     /*! @name Editing
  17930.     @{ */
  17931.     /*! */
  17932.     /// @}
  17933.  
  17934.  
  17935.     /*! @name Mounting
  17936.     @{ */
  17937.     /*! */
  17938.     /// @}
  17939.  
  17940.  
  17941.     /*! @name Ungrouped
  17942.     @{ */
  17943.     /*! */
  17944.     /// @}
  17945.  
  17946.  
  17947.     /*! @name Object
  17948.     @{ */
  17949.     /*! */
  17950.     /// @}
  17951.  
  17952.  
  17953.     /*! @name Editing
  17954.     @{ */
  17955.     /*! */
  17956.     /// @}
  17957.  
  17958.  
  17959.     /*! @name Persistence
  17960.     @{ */
  17961.     /*! */
  17962.     /// @}
  17963.  
  17964.  };
  17965.  
  17966.  /*!
  17967.  @brief afxVolumeLightData is a legacy datablock which is not supported for T3D.
  17968.  
  17969.  @ingroup afxEffects
  17970.  @ingroup AFX
  17971.  @ingroup Datablocks
  17972.   */
  17973.  class  afxVolumeLightData : public GameBaseData {
  17974.    public:
  17975.  
  17976.     /*! @name Scripting
  17977.     @{ */
  17978.     /*! */
  17979.     /// @}
  17980.  
  17981.  
  17982.     /*! @name Ungrouped
  17983.     @{ */
  17984.     /*! */
  17985.     /// @}
  17986.  
  17987.  
  17988.     /*! @name Object
  17989.     @{ */
  17990.     /*! */
  17991.     /// @}
  17992.  
  17993.  
  17994.     /*! @name Editing
  17995.     @{ */
  17996.     /*! */
  17997.     /// @}
  17998.  
  17999.  
  18000.     /*! @name Persistence
  18001.     @{ */
  18002.     /*! */
  18003.     /// @}
  18004.  
  18005.  };
  18006.  
  18007.  /*!
  18008.  @brief A datablock that specifies a Zodiac Plane effect.
  18009.  
  18010.  afxZodiacData describes a zodiac-like effect called a zodiac plane. It reproduces most of the behavior of normal zodiacs but unlike zodiac decals, it is represented as a flat plane of geometry that can be more flexibly positioned and oriented.
  18011.  
  18012.  @ingroup afxEffects
  18013.  @ingroup AFX
  18014.  @ingroup Datablocks
  18015.   */
  18016.  class  afxZodiacPlaneData : public GameBaseData {
  18017.    public:
  18018.     /*!
  18019.     An image to use as the zodiac's texture.
  18020.    
  18021.      */
  18022.     filename texture;
  18023.     /*!
  18024.     The zodiac's radius in scene units.
  18025.    
  18026.      */
  18027.     float radius;
  18028.     /*!
  18029.     The starting angle in degrees of the zodiac's rotation.
  18030.    
  18031.      */
  18032.     float startAngle;
  18033.     /*!
  18034.     The rate of rotation in degrees-per-second. Zodiacs with a positive rotationRate rotate clockwise, while those with negative values turn counter-clockwise.
  18035.    
  18036.      */
  18037.     float rotationRate;
  18038.     /*!
  18039.     A duration of time in seconds over which the zodiac grows from a zero size to its full size as specified by the radius.
  18040.    
  18041.      */
  18042.     float growInTime;
  18043.     /*!
  18044.     A duration of time in seconds over which the zodiac shrinks from full size to invisible.
  18045.    
  18046.      */
  18047.     float shrinkOutTime;
  18048.     /*!
  18049.     A rate in meters-per-second at which the zodiac grows in size. A negative value will shrink the zodiac.
  18050.    
  18051.      */
  18052.     float growthRate;
  18053.     /*!
  18054.     A color value for the zodiac.
  18055.    
  18056.      */
  18057.     ColorF color;
  18058.     /*!
  18059.     A blending style for the zodiac. Possible values: normal, additive, or subtractive.
  18060.    
  18061.      */
  18062.     afxZodiacPlane_BlendType blend;
  18063.     /*!
  18064.     Specifies if the zodiac's rotation should be defined by its constrained transformation.
  18065.    
  18066.      */
  18067.     bool trackOrientConstraint;
  18068.     /*!
  18069.     Controls whether the zodiac-plane's polygons are rendered when viewed from either side. If set to false, the zodiac-plane will only be seen when viewed from the direction it is facing (according to faceDir).
  18070.    
  18071.      */
  18072.     bool doubleSided;
  18073.     /*!
  18074.     Specifies which direction the zodiac-plane's polygons face. Possible values: up, down, front, back, right, or left.
  18075.    
  18076.      */
  18077.     afxZodiacPlane_FacingType faceDir;
  18078.     /*!
  18079.     Normal zodiacs have only one degree of freedom, a rotation around the z-axis. Depending on the setting for trackOrientConstraint, this means that the effect's orientation is either ignored or is limited to influencing the zodiac's angle of rotation. By default, zodiac-plane reproduces this limited behavior in order to match normal zodiacs. When useFullTransform is set to true, the zodiac can be arbitrarily oriented.
  18080.    
  18081.      */
  18082.     bool useFullTransform;
  18083.  
  18084.     /*! @name Scripting
  18085.     @{ */
  18086.     /*! */
  18087.     /// @}
  18088.  
  18089.  
  18090.     /*! @name Ungrouped
  18091.     @{ */
  18092.     /*! */
  18093.     /// @}
  18094.  
  18095.  
  18096.     /*! @name Object
  18097.     @{ */
  18098.     /*! */
  18099.     /// @}
  18100.  
  18101.  
  18102.     /*! @name Editing
  18103.     @{ */
  18104.     /*! */
  18105.     /// @}
  18106.  
  18107.  
  18108.     /*! @name Persistence
  18109.     @{ */
  18110.     /*! */
  18111.     /// @}
  18112.  
  18113.  };
  18114.  
  18115.  /*!
  18116.  @brief A ZodiacPlane effect as defined by an afxZodiacPlaneData datablock.
  18117.  
  18118.  @ingroup afxEffects
  18119.  @ingroup AFX
  18120.   */
  18121.  class  afxZodiacPlane : public GameBase {
  18122.    public:
  18123.  
  18124.     /*! @name Game
  18125.     @{ */
  18126.     /*! */
  18127.     /// @}
  18128.  
  18129.  
  18130.     /*! @name Transform
  18131.     @{ */
  18132.     /*! */
  18133.     /// @}
  18134.  
  18135.  
  18136.     /*! @name Editing
  18137.     @{ */
  18138.     /*! */
  18139.     /// @}
  18140.  
  18141.  
  18142.     /*! @name Mounting
  18143.     @{ */
  18144.     /*! */
  18145.     /// @}
  18146.  
  18147.  
  18148.     /*! @name Ungrouped
  18149.     @{ */
  18150.     /*! */
  18151.     /// @}
  18152.  
  18153.  
  18154.     /*! @name Object
  18155.     @{ */
  18156.     /*! */
  18157.     /// @}
  18158.  
  18159.  
  18160.     /*! @name Editing
  18161.     @{ */
  18162.     /*! */
  18163.     /// @}
  18164.  
  18165.  
  18166.     /*! @name Persistence
  18167.     @{ */
  18168.     /*! */
  18169.     /// @}
  18170.  
  18171.  };
  18172.  
  18173.  /*!
  18174.  @brief Allows legacy sgLightObjectData datablocks to appear in scripts.
  18175.  
  18176.  @ingroup afxMisc
  18177.  @ingroup AFX
  18178.  @ingroup Datablocks
  18179.   */
  18180.  class  sgLightObjectData : public GameBaseData {
  18181.    public:
  18182.  
  18183.     /*! @name Scripting
  18184.     @{ */
  18185.     /*! */
  18186.     /// @}
  18187.  
  18188.  
  18189.     /*! @name Ungrouped
  18190.     @{ */
  18191.     /*! */
  18192.     /// @}
  18193.  
  18194.  
  18195.     /*! @name Object
  18196.     @{ */
  18197.     /*! */
  18198.     /// @}
  18199.  
  18200.  
  18201.     /*! @name Editing
  18202.     @{ */
  18203.     /*! */
  18204.     /// @}
  18205.  
  18206.  
  18207.     /*! @name Persistence
  18208.     @{ */
  18209.     /*! */
  18210.     /// @}
  18211.  
  18212.  };
  18213.  
  18214.  /*!
  18215.  @brief A datablock for specifiying AFX drag forces.
  18216.  
  18217.  @ingroup afxExperimental
  18218.  @ingroup AFX
  18219.  @ingroup Datablocks
  18220.   */
  18221.  class  afxF_DragData : public GameBaseData {
  18222.    public:
  18223.     /*!
  18224.     ...
  18225.    
  18226.      */
  18227.     float drag;
  18228.     /*!
  18229.     ...
  18230.    
  18231.      */
  18232.     float airDensity;
  18233.     /*!
  18234.     ...
  18235.    
  18236.      */
  18237.     float crossSectionalArea;
  18238.     /*!
  18239.     ...
  18240.    
  18241.      */
  18242.     string forceSetName;
  18243.  
  18244.     /*! @name Scripting
  18245.     @{ */
  18246.     /*! */
  18247.     /// @}
  18248.  
  18249.  
  18250.     /*! @name Ungrouped
  18251.     @{ */
  18252.     /*! */
  18253.     /// @}
  18254.  
  18255.  
  18256.     /*! @name Object
  18257.     @{ */
  18258.     /*! */
  18259.     /// @}
  18260.  
  18261.  
  18262.     /*! @name Editing
  18263.     @{ */
  18264.     /*! */
  18265.     /// @}
  18266.  
  18267.  
  18268.     /*! @name Persistence
  18269.     @{ */
  18270.     /*! */
  18271.     /// @}
  18272.  
  18273.  };
  18274.  
  18275.  /*!
  18276.  @brief A datablock for specifiying AFX gravity forces.
  18277.  
  18278.  @ingroup afxExperimental
  18279.  @ingroup AFX
  18280.  @ingroup Datablocks
  18281.   */
  18282.  class  afxF_GravityData : public GameBaseData {
  18283.    public:
  18284.     /*!
  18285.     ...
  18286.    
  18287.      */
  18288.     float gravity;
  18289.     /*!
  18290.     ...
  18291.    
  18292.      */
  18293.     string forceSetName;
  18294.  
  18295.     /*! @name Scripting
  18296.     @{ */
  18297.     /*! */
  18298.     /// @}
  18299.  
  18300.  
  18301.     /*! @name Ungrouped
  18302.     @{ */
  18303.     /*! */
  18304.     /// @}
  18305.  
  18306.  
  18307.     /*! @name Object
  18308.     @{ */
  18309.     /*! */
  18310.     /// @}
  18311.  
  18312.  
  18313.     /*! @name Editing
  18314.     @{ */
  18315.     /*! */
  18316.     /// @}
  18317.  
  18318.  
  18319.     /*! @name Persistence
  18320.     @{ */
  18321.     /*! */
  18322.     /// @}
  18323.  
  18324.  };
  18325.  
  18326.  /*!
  18327.  @brief An xmod datablock.
  18328.  
  18329.  @ingroup afxExperimental
  18330.  @ingroup afxXMods
  18331.  @ingroup AFX
  18332.  @ingroup Datablocks
  18333.   */
  18334.  class  afxXM_ForceData : public afxXM_WeightedBaseData {
  18335.    public:
  18336.     /*!
  18337.     ...
  18338.    
  18339.      */
  18340.     string forceSetName;
  18341.     /*!
  18342.     ...
  18343.    
  18344.      */
  18345.     float updateDT;
  18346.  
  18347.     /*! @name Scripting
  18348.     @{ */
  18349.     /*! */
  18350.     /// @}
  18351.  
  18352.  
  18353.     /*! @name Ungrouped
  18354.     @{ */
  18355.     /*! */
  18356.     /// @}
  18357.  
  18358.  
  18359.     /*! @name Object
  18360.     @{ */
  18361.     /*! */
  18362.     /// @}
  18363.  
  18364.  
  18365.     /*! @name Editing
  18366.     @{ */
  18367.     /*! */
  18368.     /// @}
  18369.  
  18370.  
  18371.     /*! @name Persistence
  18372.     @{ */
  18373.     /*! */
  18374.     /// @}
  18375.  
  18376.  };
  18377.  
  18378.  /*!
  18379.  @brief A datablock for defining RPG aspects of a spell.
  18380.  
  18381.  @ingroup afxMisc
  18382.  @ingroup AFX
  18383.  @ingroup Datablocks
  18384.   */
  18385.  class  afxRPGMagicSpellData : public GameBaseData {
  18386.    public:
  18387.     /*!
  18388.     ...
  18389.    
  18390.      */
  18391.     string spellName;
  18392.     /*!
  18393.     ...
  18394.    
  18395.      */
  18396.     string desc;
  18397.     /*!
  18398.     ...
  18399.    
  18400.      */
  18401.     afxRPGMagicSpell_TargetType target;
  18402.     /*!
  18403.     ...
  18404.    
  18405.      */
  18406.     float range;
  18407.     /*!
  18408.     ...
  18409.    
  18410.      */
  18411.     int manaCost;
  18412.     /*!
  18413.     ...
  18414.    
  18415.      */
  18416.     char reagentCost;
  18417.     /*!
  18418.     ...
  18419.    
  18420.      */
  18421.     string reagentName;
  18422.     /*!
  18423.      */
  18424.     float castingDur;
  18425.     /*!
  18426.      */
  18427.     filename iconBitmap;
  18428.     /*!
  18429.      */
  18430.     string sourcePack;
  18431.     /*!
  18432.      */
  18433.     bool isPlaceholder;
  18434.     /*!
  18435.      */
  18436.     char freeTargetStyle;
  18437.     /*!
  18438.      */
  18439.     bool targetOptional;
  18440.  
  18441.     /*! @name Scripting
  18442.     @{ */
  18443.     /*! */
  18444.     /// @}
  18445.  
  18446.  
  18447.     /*! @name Ungrouped
  18448.     @{ */
  18449.     /*! */
  18450.     /// @}
  18451.  
  18452.  
  18453.     /*! @name Object
  18454.     @{ */
  18455.     /*! */
  18456.     /// @}
  18457.  
  18458.  
  18459.     /*! @name Editing
  18460.     @{ */
  18461.     /*! */
  18462.     /// @}
  18463.  
  18464.  
  18465.     /*! @name Persistence
  18466.     @{ */
  18467.     /*! */
  18468.     /// @}
  18469.  
  18470.  };
  18471.  
  18472.  /*!
  18473.  @brief A simple but useful GUI control that propagates all events to its parent control.
  18474.  
  18475.  afxEventCatchAll is useful when you want certain events to be handled by its parent afxTSCtrl and not get consumed by certain non-interactive controls like a text HUD.
  18476.  
  18477.  @ingroup afxGUI
  18478.  @ingroup AFX
  18479.   */
  18480.  class  afxEventCatchAll : public GuiControl {
  18481.    public:
  18482.  
  18483.     /*! @name Layout
  18484.     @{ */
  18485.     /*! */
  18486.     /// @}
  18487.  
  18488.  
  18489.     /*! @name Control
  18490.     @{ */
  18491.     /*! */
  18492.     /// @}
  18493.  
  18494.  
  18495.     /*! @name ToolTip
  18496.     @{ */
  18497.     /*! */
  18498.     /// @}
  18499.  
  18500.  
  18501.     /*! @name Editing
  18502.     @{ */
  18503.     /*! */
  18504.     /// @}
  18505.  
  18506.  
  18507.     /*! @name Localization
  18508.     @{ */
  18509.     /*! */
  18510.     /// @}
  18511.  
  18512.  
  18513.     /*! @name Ungrouped
  18514.     @{ */
  18515.     /*! */
  18516.     /// @}
  18517.  
  18518.  
  18519.     /*! @name Object
  18520.     @{ */
  18521.     /*! */
  18522.     /// @}
  18523.  
  18524.  
  18525.     /*! @name Editing
  18526.     @{ */
  18527.     /*! */
  18528.     /// @}
  18529.  
  18530.  
  18531.     /*! @name Persistence
  18532.     @{ */
  18533.     /*! */
  18534.     /// @}
  18535.  
  18536.  };
  18537.  
  18538.  /*!
  18539.  @brief Similar to GuiShapeNameHud, afxGuiTextHud displays ShapeBase object names but also allows Gui Text effects.
  18540.  
  18541.  @ingroup GuiGame
  18542.   */
  18543.  class  afxGuiTextHud : public GuiControl {
  18544.    public:
  18545.  
  18546.     /*! @name Colors
  18547.     @{ */
  18548.     /*! */
  18549.     /*!
  18550.     ...
  18551.    
  18552.      */
  18553.     ColorF fillColor;
  18554.     /*!
  18555.     ...
  18556.    
  18557.      */
  18558.     ColorF frameColor;
  18559.     /*!
  18560.     ...
  18561.    
  18562.      */
  18563.     ColorF textColor;
  18564.     /// @}
  18565.  
  18566.  
  18567.     /*! @name Misc
  18568.     @{ */
  18569.     /*! */
  18570.     /*!
  18571.     ...
  18572.    
  18573.      */
  18574.     bool showFill;
  18575.     /*!
  18576.     ...
  18577.    
  18578.      */
  18579.     bool showFrame;
  18580.     /*!
  18581.     ...
  18582.    
  18583.      */
  18584.     float verticalOffset;
  18585.     /*!
  18586.     ...
  18587.    
  18588.      */
  18589.     float distanceFade;
  18590.     /*!
  18591.     ...
  18592.    
  18593.      */
  18594.     bool labelAllShapes;
  18595.     /*!
  18596.     ...
  18597.    
  18598.      */
  18599.     bool enableControlObjectOcclusion;
  18600.     /// @}
  18601.  
  18602.  
  18603.     /*! @name Layout
  18604.     @{ */
  18605.     /*! */
  18606.     /// @}
  18607.  
  18608.  
  18609.     /*! @name Control
  18610.     @{ */
  18611.     /*! */
  18612.     /// @}
  18613.  
  18614.  
  18615.     /*! @name ToolTip
  18616.     @{ */
  18617.     /*! */
  18618.     /// @}
  18619.  
  18620.  
  18621.     /*! @name Editing
  18622.     @{ */
  18623.     /*! */
  18624.     /// @}
  18625.  
  18626.  
  18627.     /*! @name Localization
  18628.     @{ */
  18629.     /*! */
  18630.     /// @}
  18631.  
  18632.  
  18633.     /*! @name Ungrouped
  18634.     @{ */
  18635.     /*! */
  18636.     /// @}
  18637.  
  18638.  
  18639.     /*! @name Object
  18640.     @{ */
  18641.     /*! */
  18642.     /// @}
  18643.  
  18644.  
  18645.     /*! @name Editing
  18646.     @{ */
  18647.     /*! */
  18648.     /// @}
  18649.  
  18650.  
  18651.     /*! @name Persistence
  18652.     @{ */
  18653.     /*! */
  18654.     /// @}
  18655.  
  18656.  };
  18657.  
  18658.  /*!
  18659.  @brief A simple GUI control used to contain player status bars and a label.
  18660.  
  18661.  @ingroup afxGUI
  18662.  @ingroup AFX
  18663.   */
  18664.  class  afxStatusBox : public GuiBitmapCtrl {
  18665.    public:
  18666.  
  18667.     /*! @name Bitmap
  18668.     @{ */
  18669.     /*! */
  18670.     /// @}
  18671.  
  18672.  
  18673.     /*! @name Layout
  18674.     @{ */
  18675.     /*! */
  18676.     /// @}
  18677.  
  18678.  
  18679.     /*! @name Control
  18680.     @{ */
  18681.     /*! */
  18682.     /// @}
  18683.  
  18684.  
  18685.     /*! @name ToolTip
  18686.     @{ */
  18687.     /*! */
  18688.     /// @}
  18689.  
  18690.  
  18691.     /*! @name Editing
  18692.     @{ */
  18693.     /*! */
  18694.     /// @}
  18695.  
  18696.  
  18697.     /*! @name Localization
  18698.     @{ */
  18699.     /*! */
  18700.     /// @}
  18701.  
  18702.  
  18703.     /*! @name Ungrouped
  18704.     @{ */
  18705.     /*! */
  18706.     /// @}
  18707.  
  18708.  
  18709.     /*! @name Object
  18710.     @{ */
  18711.     /*! */
  18712.     /// @}
  18713.  
  18714.  
  18715.     /*! @name Editing
  18716.     @{ */
  18717.     /*! */
  18718.     /// @}
  18719.  
  18720.  
  18721.     /*! @name Persistence
  18722.     @{ */
  18723.     /*! */
  18724.     /// @}
  18725.  
  18726.  };
  18727.  
  18728.  /*!
  18729.  @brief A simple GUI control used for a player status label.
  18730.  
  18731.  @ingroup afxGUI
  18732.  @ingroup AFX
  18733.   */
  18734.  class  afxStatusLabel : public GuiMLTextCtrl {
  18735.    public:
  18736.  
  18737.     /*! @name Text
  18738.     @{ */
  18739.     /*! */
  18740.     /// @}
  18741.  
  18742.  
  18743.     /*! @name Layout
  18744.     @{ */
  18745.     /*! */
  18746.     /// @}
  18747.  
  18748.  
  18749.     /*! @name Control
  18750.     @{ */
  18751.     /*! */
  18752.     /// @}
  18753.  
  18754.  
  18755.     /*! @name ToolTip
  18756.     @{ */
  18757.     /*! */
  18758.     /// @}
  18759.  
  18760.  
  18761.     /*! @name Editing
  18762.     @{ */
  18763.     /*! */
  18764.     /// @}
  18765.  
  18766.  
  18767.     /*! @name Localization
  18768.     @{ */
  18769.     /*! */
  18770.     /// @}
  18771.  
  18772.  
  18773.     /*! @name Ungrouped
  18774.     @{ */
  18775.     /*! */
  18776.     /// @}
  18777.  
  18778.  
  18779.     /*! @name Object
  18780.     @{ */
  18781.     /*! */
  18782.     /// @}
  18783.  
  18784.  
  18785.     /*! @name Editing
  18786.     @{ */
  18787.     /*! */
  18788.     /// @}
  18789.  
  18790.  
  18791.     /*! @name Persistence
  18792.     @{ */
  18793.     /*! */
  18794.     /// @}
  18795.  
  18796.  };
  18797.  
  18798.  /*!
  18799.  @brief A ParticlePool datablock.
  18800.  
  18801.  @ingroup afxUtil
  18802.  @ingroup AFX
  18803.   */
  18804.  class  afxParticlePoolData : public GameBaseData {
  18805.    public:
  18806.     /*!
  18807.     ...
  18808.    
  18809.      */
  18810.     afxParticlePool_PoolType poolType;
  18811.     /*!
  18812.     ...
  18813.    
  18814.      */
  18815.     ColorF baseColor;
  18816.     /*!
  18817.     ...
  18818.    
  18819.      */
  18820.     float blendWeight;
  18821.  
  18822.     /*! @name Scripting
  18823.     @{ */
  18824.     /*! */
  18825.     /// @}
  18826.  
  18827.  
  18828.     /*! @name Ungrouped
  18829.     @{ */
  18830.     /*! */
  18831.     /// @}
  18832.  
  18833.  
  18834.     /*! @name Object
  18835.     @{ */
  18836.     /*! */
  18837.     /// @}
  18838.  
  18839.  
  18840.     /*! @name Editing
  18841.     @{ */
  18842.     /*! */
  18843.     /// @}
  18844.  
  18845.  
  18846.     /*! @name Persistence
  18847.     @{ */
  18848.     /*! */
  18849.     /// @}
  18850.  
  18851.  };
  18852.  
  18853.  /*!
  18854.  @brief A ParticlePool object as defined by an afxParticlePoolData datablock.
  18855.  
  18856.  @ingroup afxUtil
  18857.  @ingroup AFX
  18858.   */
  18859.  class  afxParticlePool : public GameBase {
  18860.    public:
  18861.  
  18862.     /*! @name Game
  18863.     @{ */
  18864.     /*! */
  18865.     /// @}
  18866.  
  18867.  
  18868.     /*! @name Transform
  18869.     @{ */
  18870.     /*! */
  18871.     /// @}
  18872.  
  18873.  
  18874.     /*! @name Editing
  18875.     @{ */
  18876.     /*! */
  18877.     /// @}
  18878.  
  18879.  
  18880.     /*! @name Mounting
  18881.     @{ */
  18882.     /*! */
  18883.     /// @}
  18884.  
  18885.  
  18886.     /*! @name Ungrouped
  18887.     @{ */
  18888.     /*! */
  18889.     /// @}
  18890.  
  18891.  
  18892.     /*! @name Object
  18893.     @{ */
  18894.     /*! */
  18895.     /// @}
  18896.  
  18897.  
  18898.     /*! @name Editing
  18899.     @{ */
  18900.     /*! */
  18901.     /// @}
  18902.  
  18903.  
  18904.     /*! @name Persistence
  18905.     @{ */
  18906.     /*! */
  18907.     /// @}
  18908.  
  18909.  };
  18910.  
  18911.  /*!
  18912.  @brief A datablock for specifiying a 3D path for use with AFX.
  18913.  
  18914.  @ingroup afxUtil
  18915.  @ingroup AFX
  18916.  @ingroup Datablocks
  18917.   */
  18918.  class  afxPathData : public GameBaseData {
  18919.    public:
  18920.     /*!
  18921.     ...
  18922.    
  18923.      */
  18924.     string points;
  18925.     /*!
  18926.     ...
  18927.    
  18928.      */
  18929.     string roll;
  18930.     /*!
  18931.     ...
  18932.    
  18933.      */
  18934.     string times;
  18935.     /*!
  18936.     ...
  18937.    
  18938.      */
  18939.     string loop;
  18940.     /*!
  18941.     ...
  18942.    
  18943.      */
  18944.     float mult;
  18945.     /*!
  18946.     ...
  18947.    
  18948.      */
  18949.     float delay;
  18950.     /*!
  18951.     ...
  18952.    
  18953.      */
  18954.     float lifetime;
  18955.     /*!
  18956.     ...
  18957.    
  18958.      */
  18959.     float timeOffset;
  18960.     /*!
  18961.     ...
  18962.    
  18963.      */
  18964.     bool reverse;
  18965.     /*!
  18966.     ...
  18967.    
  18968.      */
  18969.     Point3F offset;
  18970.     /*!
  18971.     ...
  18972.    
  18973.      */
  18974.     bool echo;
  18975.     /*!
  18976.     ...
  18977.    
  18978.      */
  18979.     bool concentric;
  18980.  
  18981.     /*! @name Scripting
  18982.     @{ */
  18983.     /*! */
  18984.     /// @}
  18985.  
  18986.  
  18987.     /*! @name Ungrouped
  18988.     @{ */
  18989.     /*! */
  18990.     /// @}
  18991.  
  18992.  
  18993.     /*! @name Object
  18994.     @{ */
  18995.     /*! */
  18996.     /// @}
  18997.  
  18998.  
  18999.     /*! @name Editing
  19000.     @{ */
  19001.     /*! */
  19002.     /// @}
  19003.  
  19004.  
  19005.     /*! @name Persistence
  19006.     @{ */
  19007.     /*! */
  19008.     /// @}
  19009.  
  19010.  };
  19011.  
  19012.  /*!
  19013.  @brief An xmod datablock.
  19014.  
  19015.  @ingroup afxXMods
  19016.  @ingroup AFX
  19017.  @ingroup Datablocks
  19018.   */
  19019.  class  afxXM_BoxAdaptData : public afxXM_WeightedBaseData {
  19020.    public:
  19021.     /*!
  19022.     ...
  19023.    
  19024.      */
  19025.     float scaleFactor;
  19026.     /*!
  19027.     ...
  19028.    
  19029.      */
  19030.     Point2F dimensionRange;
  19031.  
  19032.     /*! @name Scripting
  19033.     @{ */
  19034.     /*! */
  19035.     /// @}
  19036.  
  19037.  
  19038.     /*! @name Ungrouped
  19039.     @{ */
  19040.     /*! */
  19041.     /// @}
  19042.  
  19043.  
  19044.     /*! @name Object
  19045.     @{ */
  19046.     /*! */
  19047.     /// @}
  19048.  
  19049.  
  19050.     /*! @name Editing
  19051.     @{ */
  19052.     /*! */
  19053.     /// @}
  19054.  
  19055.  
  19056.     /*! @name Persistence
  19057.     @{ */
  19058.     /*! */
  19059.     /// @}
  19060.  
  19061.  };
  19062.  
  19063.  /*!
  19064.  @brief An xmod datablock.
  19065.  
  19066.  @ingroup afxXMods
  19067.  @ingroup AFX
  19068.  @ingroup Datablocks
  19069.   */
  19070.  class  afxXM_BoxConformData : public afxXM_BaseData {
  19071.    public:
  19072.     /*!
  19073.     ...
  19074.    
  19075.      */
  19076.     afxXM_BoxConformType boxAlignment;
  19077.  
  19078.     /*! @name Scripting
  19079.     @{ */
  19080.     /*! */
  19081.     /// @}
  19082.  
  19083.  
  19084.     /*! @name Ungrouped
  19085.     @{ */
  19086.     /*! */
  19087.     /// @}
  19088.  
  19089.  
  19090.     /*! @name Object
  19091.     @{ */
  19092.     /*! */
  19093.     /// @}
  19094.  
  19095.  
  19096.     /*! @name Editing
  19097.     @{ */
  19098.     /*! */
  19099.     /// @}
  19100.  
  19101.  
  19102.     /*! @name Persistence
  19103.     @{ */
  19104.     /*! */
  19105.     /// @}
  19106.  
  19107.  };
  19108.  
  19109.  /*!
  19110.  @brief An xmod datablock.
  19111.  
  19112.  @ingroup afxXMods
  19113.  @ingroup AFX
  19114.  @ingroup Datablocks
  19115.   */
  19116.  class  afxXM_BoxHeightOffsetData : public afxXM_BaseData {
  19117.    public:
  19118.     /*!
  19119.      */
  19120.     Point3F offset;
  19121.  
  19122.     /*! @name Scripting
  19123.     @{ */
  19124.     /*! */
  19125.     /// @}
  19126.  
  19127.  
  19128.     /*! @name Ungrouped
  19129.     @{ */
  19130.     /*! */
  19131.     /// @}
  19132.  
  19133.  
  19134.     /*! @name Object
  19135.     @{ */
  19136.     /*! */
  19137.     /// @}
  19138.  
  19139.  
  19140.     /*! @name Editing
  19141.     @{ */
  19142.     /*! */
  19143.     /// @}
  19144.  
  19145.  
  19146.     /*! @name Persistence
  19147.     @{ */
  19148.     /*! */
  19149.     /// @}
  19150.  
  19151.  };
  19152.  
  19153.  /*!
  19154.  @brief An xmod datablock.
  19155.  
  19156.  @ingroup afxXMods
  19157.  @ingroup AFX
  19158.  @ingroup Datablocks
  19159.   */
  19160.  class  afxXM_GroundConformData : public afxXM_WeightedBaseData {
  19161.    public:
  19162.     /*!
  19163.     ...
  19164.    
  19165.      */
  19166.     float height;
  19167.     /*!
  19168.     ...
  19169.    
  19170.      */
  19171.     bool conformToTerrain;
  19172.     /*!
  19173.     ...
  19174.    
  19175.      */
  19176.     bool conformToInteriors;
  19177.     /*!
  19178.     ...
  19179.    
  19180.      */
  19181.     bool conformOrientation;
  19182.  
  19183.     /*! @name Scripting
  19184.     @{ */
  19185.     /*! */
  19186.     /// @}
  19187.  
  19188.  
  19189.     /*! @name Ungrouped
  19190.     @{ */
  19191.     /*! */
  19192.     /// @}
  19193.  
  19194.  
  19195.     /*! @name Object
  19196.     @{ */
  19197.     /*! */
  19198.     /// @}
  19199.  
  19200.  
  19201.     /*! @name Editing
  19202.     @{ */
  19203.     /*! */
  19204.     /// @}
  19205.  
  19206.  
  19207.     /*! @name Persistence
  19208.     @{ */
  19209.     /*! */
  19210.     /// @}
  19211.  
  19212.  };
  19213.  
  19214.  /*!
  19215.  @brief An xmod datablock.
  19216.  
  19217.  @ingroup afxXMods
  19218.  @ingroup AFX
  19219.  @ingroup Datablocks
  19220.   */
  19221.  class  afxXM_HeightSamplerData : public afxXM_WeightedBaseData {
  19222.    public:
  19223.  
  19224.     /*! @name Scripting
  19225.     @{ */
  19226.     /*! */
  19227.     /// @}
  19228.  
  19229.  
  19230.     /*! @name Ungrouped
  19231.     @{ */
  19232.     /*! */
  19233.     /// @}
  19234.  
  19235.  
  19236.     /*! @name Object
  19237.     @{ */
  19238.     /*! */
  19239.     /// @}
  19240.  
  19241.  
  19242.     /*! @name Editing
  19243.     @{ */
  19244.     /*! */
  19245.     /// @}
  19246.  
  19247.  
  19248.     /*! @name Persistence
  19249.     @{ */
  19250.     /*! */
  19251.     /// @}
  19252.  
  19253.  };
  19254.  
  19255.  /*!
  19256.  @brief An xmod datablock.
  19257.  
  19258.  @ingroup afxXMods
  19259.  @ingroup AFX
  19260.  @ingroup Datablocks
  19261.   */
  19262.  class  afxXM_MountedImageNodeData : public afxXM_BaseData {
  19263.    public:
  19264.     /*!
  19265.     ...
  19266.    
  19267.      */
  19268.     int imageSlot;
  19269.     /*!
  19270.     ...
  19271.    
  19272.      */
  19273.     string nodeName;
  19274.  
  19275.     /*! @name Scripting
  19276.     @{ */
  19277.     /*! */
  19278.     /// @}
  19279.  
  19280.  
  19281.     /*! @name Ungrouped
  19282.     @{ */
  19283.     /*! */
  19284.     /// @}
  19285.  
  19286.  
  19287.     /*! @name Object
  19288.     @{ */
  19289.     /*! */
  19290.     /// @}
  19291.  
  19292.  
  19293.     /*! @name Editing
  19294.     @{ */
  19295.     /*! */
  19296.     /// @}
  19297.  
  19298.  
  19299.     /*! @name Persistence
  19300.     @{ */
  19301.     /*! */
  19302.     /// @}
  19303.  
  19304.  };
  19305.  
  19306.  /*!
  19307.  @brief An xmod datablock.
  19308.  
  19309.  @ingroup afxXMods
  19310.  @ingroup AFX
  19311.  @ingroup Datablocks
  19312.   */
  19313.  class  afxXM_LocalOffsetData : public afxXM_WeightedBaseData {
  19314.    public:
  19315.     /*!
  19316.     ...
  19317.    
  19318.      */
  19319.     Point3F localOffset;
  19320.     /*!
  19321.     ...
  19322.    
  19323.      */
  19324.     bool offsetPos2;
  19325.  
  19326.     /*! @name Scripting
  19327.     @{ */
  19328.     /*! */
  19329.     /// @}
  19330.  
  19331.  
  19332.     /*! @name Ungrouped
  19333.     @{ */
  19334.     /*! */
  19335.     /// @}
  19336.  
  19337.  
  19338.     /*! @name Object
  19339.     @{ */
  19340.     /*! */
  19341.     /// @}
  19342.  
  19343.  
  19344.     /*! @name Editing
  19345.     @{ */
  19346.     /*! */
  19347.     /// @}
  19348.  
  19349.  
  19350.     /*! @name Persistence
  19351.     @{ */
  19352.     /*! */
  19353.     /// @}
  19354.  
  19355.  };
  19356.  
  19357.  /*!
  19358.  @brief An xmod datablock.
  19359.  
  19360.  @ingroup afxXMods
  19361.  @ingroup AFX
  19362.  @ingroup Datablocks
  19363.   */
  19364.  class  afxXM_WorldOffsetData : public afxXM_WeightedBaseData {
  19365.    public:
  19366.     /*!
  19367.     ...
  19368.    
  19369.      */
  19370.     Point3F worldOffset;
  19371.     /*!
  19372.     ...
  19373.    
  19374.      */
  19375.     bool offsetPos2;
  19376.  
  19377.     /*! @name Scripting
  19378.     @{ */
  19379.     /*! */
  19380.     /// @}
  19381.  
  19382.  
  19383.     /*! @name Ungrouped
  19384.     @{ */
  19385.     /*! */
  19386.     /// @}
  19387.  
  19388.  
  19389.     /*! @name Object
  19390.     @{ */
  19391.     /*! */
  19392.     /// @}
  19393.  
  19394.  
  19395.     /*! @name Editing
  19396.     @{ */
  19397.     /*! */
  19398.     /// @}
  19399.  
  19400.  
  19401.     /*! @name Persistence
  19402.     @{ */
  19403.     /*! */
  19404.     /// @}
  19405.  
  19406.  };
  19407.  
  19408.  /*!
  19409.  @brief An xmod datablock.
  19410.  
  19411.  @ingroup afxXMods
  19412.  @ingroup AFX
  19413.  @ingroup Datablocks
  19414.   */
  19415.  class  afxXM_OscillateData : public afxXM_WeightedBaseData {
  19416.    public:
  19417.     /*!
  19418.     ...
  19419.    
  19420.      */
  19421.     int mask;
  19422.     /*!
  19423.     ...
  19424.    
  19425.      */
  19426.     Point3F min;
  19427.     /*!
  19428.     ...
  19429.    
  19430.      */
  19431.     Point3F max;
  19432.     /*!
  19433.     ...
  19434.    
  19435.      */
  19436.     float speed;
  19437.     /*!
  19438.     ...
  19439.    
  19440.      */
  19441.     Point3F axis;
  19442.     /*!
  19443.     ...
  19444.    
  19445.      */
  19446.     bool additiveScale;
  19447.     /*!
  19448.     ...
  19449.    
  19450.      */
  19451.     bool localOffset;
  19452.  
  19453.     /*! @name Scripting
  19454.     @{ */
  19455.     /*! */
  19456.     /// @}
  19457.  
  19458.  
  19459.     /*! @name Ungrouped
  19460.     @{ */
  19461.     /*! */
  19462.     /// @}
  19463.  
  19464.  
  19465.     /*! @name Object
  19466.     @{ */
  19467.     /*! */
  19468.     /// @}
  19469.  
  19470.  
  19471.     /*! @name Editing
  19472.     @{ */
  19473.     /*! */
  19474.     /// @}
  19475.  
  19476.  
  19477.     /*! @name Persistence
  19478.     @{ */
  19479.     /*! */
  19480.     /// @}
  19481.  
  19482.  };
  19483.  
  19484.  /*!
  19485.  @brief An xmod datablock.
  19486.  
  19487.  @ingroup afxXMods
  19488.  @ingroup AFX
  19489.  @ingroup Datablocks
  19490.   */
  19491.  class  afxXM_OscillateZodiacColorData : public afxXM_WeightedBaseData {
  19492.    public:
  19493.     /*!
  19494.     ...
  19495.    
  19496.      */
  19497.     ColorF colorA;
  19498.     /*!
  19499.     ...
  19500.    
  19501.      */
  19502.     ColorF colorB;
  19503.     /*!
  19504.     ...
  19505.    
  19506.      */
  19507.     float speed;
  19508.  
  19509.     /*! @name Scripting
  19510.     @{ */
  19511.     /*! */
  19512.     /// @}
  19513.  
  19514.  
  19515.     /*! @name Ungrouped
  19516.     @{ */
  19517.     /*! */
  19518.     /// @}
  19519.  
  19520.  
  19521.     /*! @name Object
  19522.     @{ */
  19523.     /*! */
  19524.     /// @}
  19525.  
  19526.  
  19527.     /*! @name Editing
  19528.     @{ */
  19529.     /*! */
  19530.     /// @}
  19531.  
  19532.  
  19533.     /*! @name Persistence
  19534.     @{ */
  19535.     /*! */
  19536.     /// @}
  19537.  
  19538.  };
  19539.  
  19540.  /*!
  19541.  @brief An xmod datablock.
  19542.  
  19543.  @ingroup afxXMods
  19544.  @ingroup AFX
  19545.  @ingroup Datablocks
  19546.   */
  19547.  class  afxXM_PathConformData : public afxXM_WeightedBaseData {
  19548.    public:
  19549.     /*!
  19550.     ...
  19551.    
  19552.      */
  19553.     string paths;
  19554.     /*!
  19555.     ...
  19556.    
  19557.      */
  19558.     float pathMult;
  19559.     /*!
  19560.     ...
  19561.    
  19562.      */
  19563.     float pathTimeOffset;
  19564.     /*!
  19565.     ...
  19566.    
  19567.      */
  19568.     bool orientToPath;
  19569.  
  19570.     /*! @name Scripting
  19571.     @{ */
  19572.     /*! */
  19573.     /// @}
  19574.  
  19575.  
  19576.     /*! @name Ungrouped
  19577.     @{ */
  19578.     /*! */
  19579.     /// @}
  19580.  
  19581.  
  19582.     /*! @name Object
  19583.     @{ */
  19584.     /*! */
  19585.     /// @}
  19586.  
  19587.  
  19588.     /*! @name Editing
  19589.     @{ */
  19590.     /*! */
  19591.     /// @}
  19592.  
  19593.  
  19594.     /*! @name Persistence
  19595.     @{ */
  19596.     /*! */
  19597.     /// @}
  19598.  
  19599.  };
  19600.  
  19601.  /*!
  19602.  @brief An xmod datablock.
  19603.  
  19604.  @ingroup afxXMods
  19605.  @ingroup AFX
  19606.  @ingroup Datablocks
  19607.   */
  19608.  class  afxXM_PivotNodeOffsetData : public afxXM_BaseData {
  19609.    public:
  19610.     /*!
  19611.     ...
  19612.    
  19613.      */
  19614.     string nodeName;
  19615.     /*!
  19616.     ...
  19617.    
  19618.      */
  19619.     bool nodeIsStatic;
  19620.  
  19621.     /*! @name Scripting
  19622.     @{ */
  19623.     /*! */
  19624.     /// @}
  19625.  
  19626.  
  19627.     /*! @name Ungrouped
  19628.     @{ */
  19629.     /*! */
  19630.     /// @}
  19631.  
  19632.  
  19633.     /*! @name Object
  19634.     @{ */
  19635.     /*! */
  19636.     /// @}
  19637.  
  19638.  
  19639.     /*! @name Editing
  19640.     @{ */
  19641.     /*! */
  19642.     /// @}
  19643.  
  19644.  
  19645.     /*! @name Persistence
  19646.     @{ */
  19647.     /*! */
  19648.     /// @}
  19649.  
  19650.  };
  19651.  
  19652.  /*!
  19653.  @brief An xmod datablock.
  19654.  
  19655.  @ingroup afxXMods
  19656.  @ingroup AFX
  19657.  @ingroup Datablocks
  19658.   */
  19659.  class  afxXM_RandomRotData : public afxXM_BaseData {
  19660.    public:
  19661.     /*!
  19662.     ...
  19663.    
  19664.      */
  19665.     Point3F axis;
  19666.     /*!
  19667.     ...
  19668.    
  19669.      */
  19670.     float thetaMin;
  19671.     /*!
  19672.     ...
  19673.    
  19674.      */
  19675.     float thetaMax;
  19676.     /*!
  19677.     ...
  19678.    
  19679.      */
  19680.     float phiMin;
  19681.     /*!
  19682.     ...
  19683.    
  19684.      */
  19685.     float phiMax;
  19686.  
  19687.     /*! @name Scripting
  19688.     @{ */
  19689.     /*! */
  19690.     /// @}
  19691.  
  19692.  
  19693.     /*! @name Ungrouped
  19694.     @{ */
  19695.     /*! */
  19696.     /// @}
  19697.  
  19698.  
  19699.     /*! @name Object
  19700.     @{ */
  19701.     /*! */
  19702.     /// @}
  19703.  
  19704.  
  19705.     /*! @name Editing
  19706.     @{ */
  19707.     /*! */
  19708.     /// @}
  19709.  
  19710.  
  19711.     /*! @name Persistence
  19712.     @{ */
  19713.     /*! */
  19714.     /// @}
  19715.  
  19716.  };
  19717.  
  19718.  /*!
  19719.  @brief An xmod datablock.
  19720.  
  19721.  @ingroup afxXMods
  19722.  @ingroup AFX
  19723.  @ingroup Datablocks
  19724.   */
  19725.  class  afxXM_ShockwaveData : public afxXM_BaseData {
  19726.    public:
  19727.     /*!
  19728.     ...
  19729.    
  19730.      */
  19731.     float rate;
  19732.     /*!
  19733.     ...
  19734.    
  19735.      */
  19736.     bool aimZOnly;
  19737.  
  19738.     /*! @name Scripting
  19739.     @{ */
  19740.     /*! */
  19741.     /// @}
  19742.  
  19743.  
  19744.     /*! @name Ungrouped
  19745.     @{ */
  19746.     /*! */
  19747.     /// @}
  19748.  
  19749.  
  19750.     /*! @name Object
  19751.     @{ */
  19752.     /*! */
  19753.     /// @}
  19754.  
  19755.  
  19756.     /*! @name Editing
  19757.     @{ */
  19758.     /*! */
  19759.     /// @}
  19760.  
  19761.  
  19762.     /*! @name Persistence
  19763.     @{ */
  19764.     /*! */
  19765.     /// @}
  19766.  
  19767.  };
  19768.  
  19769.  /*!
  19770.  @brief An xmod datablock.
  19771.  
  19772.  @ingroup afxXMods
  19773.  @ingroup AFX
  19774.  @ingroup Datablocks
  19775.   */
  19776.  class  afxXM_VelocityOffsetData : public afxXM_WeightedBaseData {
  19777.    public:
  19778.     /*!
  19779.     ...
  19780.    
  19781.      */
  19782.     float offsetFactor;
  19783.     /*!
  19784.     ...
  19785.    
  19786.      */
  19787.     bool offsetPos2;
  19788.     /*!
  19789.     ...
  19790.    
  19791.      */
  19792.     bool normalize;
  19793.  
  19794.     /*! @name Scripting
  19795.     @{ */
  19796.     /*! */
  19797.     /// @}
  19798.  
  19799.  
  19800.     /*! @name Ungrouped
  19801.     @{ */
  19802.     /*! */
  19803.     /// @}
  19804.  
  19805.  
  19806.     /*! @name Object
  19807.     @{ */
  19808.     /*! */
  19809.     /// @}
  19810.  
  19811.  
  19812.     /*! @name Editing
  19813.     @{ */
  19814.     /*! */
  19815.     /// @}
  19816.  
  19817.  
  19818.     /*! @name Persistence
  19819.     @{ */
  19820.     /*! */
  19821.     /// @}
  19822.  
  19823.  };
  19824.  
  19825.  /*!
  19826.  @brief An xmod datablock.
  19827.  
  19828.  @ingroup afxXMods
  19829.  @ingroup AFX
  19830.  @ingroup Datablocks
  19831.   */
  19832.  class  afxXM_WaveBaseData : public afxXM_WeightedBaseData {
  19833.    public:
  19834.     /*!
  19835.     ...
  19836.    
  19837.      */
  19838.     afxXM_WaveFormType waveform;
  19839.     /*!
  19840.     ...
  19841.    
  19842.      */
  19843.     afxXM_WaveParamType parameter;
  19844.     /*!
  19845.     ...
  19846.    
  19847.      */
  19848.     afxXM_WaveOpType op;
  19849.     /*!
  19850.     waves per second
  19851.    
  19852.      */
  19853.     float speed;
  19854.     /*!
  19855.     ...
  19856.    
  19857.      */
  19858.     float speedVariance;
  19859.     /*!
  19860.     ...
  19861.    
  19862.      */
  19863.     float acceleration;
  19864.     /*!
  19865.     ...
  19866.    
  19867.      */
  19868.     float phaseShift;
  19869.     /*!
  19870.     ...
  19871.    
  19872.      */
  19873.     float dutyCycle;
  19874.     /*!
  19875.     ...
  19876.    
  19877.      */
  19878.     float dutyShift;
  19879.     /*!
  19880.     ...
  19881.    
  19882.      */
  19883.     float offDutyT;
  19884.     /*!
  19885.     ...
  19886.    
  19887.      */
  19888.     ByteRange wavesPerPulse;
  19889.     /*!
  19890.     ...
  19891.    
  19892.      */
  19893.     ByteRange wavesPerRest;
  19894.     /*!
  19895.     ...
  19896.    
  19897.      */
  19898.     float restDuration;
  19899.     /*!
  19900.     ...
  19901.    
  19902.      */
  19903.     float restDurationVariance;
  19904.     /*!
  19905.     ...
  19906.    
  19907.      */
  19908.     Point3F axis;
  19909.     /*!
  19910.     ...
  19911.    
  19912.      */
  19913.     bool axisIsLocal;
  19914.  
  19915.     /*! @name Scripting
  19916.     @{ */
  19917.     /*! */
  19918.     /// @}
  19919.  
  19920.  
  19921.     /*! @name Ungrouped
  19922.     @{ */
  19923.     /*! */
  19924.     /// @}
  19925.  
  19926.  
  19927.     /*! @name Object
  19928.     @{ */
  19929.     /*! */
  19930.     /// @}
  19931.  
  19932.  
  19933.     /*! @name Editing
  19934.     @{ */
  19935.     /*! */
  19936.     /// @}
  19937.  
  19938.  
  19939.     /*! @name Persistence
  19940.     @{ */
  19941.     /*! */
  19942.     /// @}
  19943.  
  19944.  };
  19945.  
  19946.  /*!
  19947.  @brief An xmod datablock.
  19948.  
  19949.  @ingroup afxXMods
  19950.  @ingroup AFX
  19951.  @ingroup Datablocks
  19952.   */
  19953.  class  afxXM_WaveRiderBaseData : public afxXM_WeightedBaseData {
  19954.    public:
  19955.     /*!
  19956.     ...
  19957.    
  19958.      */
  19959.     afxXM_WaveFormType waveform;
  19960.     /*!
  19961.     ...
  19962.    
  19963.      */
  19964.     afxXM_WaveParamType parameter;
  19965.     /*!
  19966.     ...
  19967.    
  19968.      */
  19969.     afxXM_WaveOpType op;
  19970.     /*!
  19971.     ...
  19972.    
  19973.      */
  19974.     float offDutyT;
  19975.     /*!
  19976.     ...
  19977.    
  19978.      */
  19979.     Point3F axis;
  19980.     /*!
  19981.     ...
  19982.    
  19983.      */
  19984.     bool axisIsLocal;
  19985.  
  19986.     /*! @name Scripting
  19987.     @{ */
  19988.     /*! */
  19989.     /// @}
  19990.  
  19991.  
  19992.     /*! @name Ungrouped
  19993.     @{ */
  19994.     /*! */
  19995.     /// @}
  19996.  
  19997.  
  19998.     /*! @name Object
  19999.     @{ */
  20000.     /*! */
  20001.     /// @}
  20002.  
  20003.  
  20004.     /*! @name Editing
  20005.     @{ */
  20006.     /*! */
  20007.     /// @}
  20008.  
  20009.  
  20010.     /*! @name Persistence
  20011.     @{ */
  20012.     /*! */
  20013.     /// @}
  20014.  
  20015.  };
  20016.  
  20017.  /*!
  20018.  @brief An xmod datablock.
  20019.  
  20020.  @ingroup afxXMods
  20021.  @ingroup AFX
  20022.  @ingroup Datablocks
  20023.   */
  20024.  class  afxXM_WaveColorData : public afxXM_WaveBaseData {
  20025.    public:
  20026.     /*!
  20027.     ...
  20028.    
  20029.      */
  20030.     ColorF a;
  20031.     /*!
  20032.     ...
  20033.    
  20034.      */
  20035.     ColorF b;
  20036.     /*!
  20037.     ...
  20038.    
  20039.      */
  20040.     ColorF aVariance;
  20041.     /*!
  20042.     ...
  20043.    
  20044.      */
  20045.     ColorF bVariance;
  20046.     /*!
  20047.     ...
  20048.    
  20049.      */
  20050.     bool syncVariances;
  20051.  
  20052.     /*! @name Scripting
  20053.     @{ */
  20054.     /*! */
  20055.     /// @}
  20056.  
  20057.  
  20058.     /*! @name Ungrouped
  20059.     @{ */
  20060.     /*! */
  20061.     /// @}
  20062.  
  20063.  
  20064.     /*! @name Object
  20065.     @{ */
  20066.     /*! */
  20067.     /// @}
  20068.  
  20069.  
  20070.     /*! @name Editing
  20071.     @{ */
  20072.     /*! */
  20073.     /// @}
  20074.  
  20075.  
  20076.     /*! @name Persistence
  20077.     @{ */
  20078.     /*! */
  20079.     /// @}
  20080.  
  20081.  };
  20082.  
  20083.  /*!
  20084.  @brief An xmod datablock.
  20085.  
  20086.  @ingroup afxXMods
  20087.  @ingroup AFX
  20088.  @ingroup Datablocks
  20089.   */
  20090.  class  afxXM_WaveRiderColorData : public afxXM_WaveRiderBaseData {
  20091.    public:
  20092.     /*!
  20093.     ...
  20094.    
  20095.      */
  20096.     ColorF a;
  20097.     /*!
  20098.     ...
  20099.    
  20100.      */
  20101.     ColorF b;
  20102.     /*!
  20103.     ...
  20104.    
  20105.      */
  20106.     ColorF aVariance;
  20107.     /*!
  20108.     ...
  20109.    
  20110.      */
  20111.     ColorF bVariance;
  20112.     /*!
  20113.     ...
  20114.    
  20115.      */
  20116.     bool syncVariances;
  20117.  
  20118.     /*! @name Scripting
  20119.     @{ */
  20120.     /*! */
  20121.     /// @}
  20122.  
  20123.  
  20124.     /*! @name Ungrouped
  20125.     @{ */
  20126.     /*! */
  20127.     /// @}
  20128.  
  20129.  
  20130.     /*! @name Object
  20131.     @{ */
  20132.     /*! */
  20133.     /// @}
  20134.  
  20135.  
  20136.     /*! @name Editing
  20137.     @{ */
  20138.     /*! */
  20139.     /// @}
  20140.  
  20141.  
  20142.     /*! @name Persistence
  20143.     @{ */
  20144.     /*! */
  20145.     /// @}
  20146.  
  20147.  };
  20148.  
  20149.  /*!
  20150.  @brief An xmod datablock.
  20151.  
  20152.  @ingroup afxXMods
  20153.  @ingroup AFX
  20154.  @ingroup Datablocks
  20155.   */
  20156.  class  afxXM_WaveScalarData : public afxXM_WaveBaseData {
  20157.    public:
  20158.     /*!
  20159.     ...
  20160.    
  20161.      */
  20162.     float a;
  20163.     /*!
  20164.     ...
  20165.    
  20166.      */
  20167.     float b;
  20168.     /*!
  20169.     ...
  20170.    
  20171.      */
  20172.     float aVariance;
  20173.     /*!
  20174.     ...
  20175.    
  20176.      */
  20177.     float bVariance;
  20178.     /*!
  20179.     ...
  20180.    
  20181.      */
  20182.     bool syncVariances;
  20183.  
  20184.     /*! @name Scripting
  20185.     @{ */
  20186.     /*! */
  20187.     /// @}
  20188.  
  20189.  
  20190.     /*! @name Ungrouped
  20191.     @{ */
  20192.     /*! */
  20193.     /// @}
  20194.  
  20195.  
  20196.     /*! @name Object
  20197.     @{ */
  20198.     /*! */
  20199.     /// @}
  20200.  
  20201.  
  20202.     /*! @name Editing
  20203.     @{ */
  20204.     /*! */
  20205.     /// @}
  20206.  
  20207.  
  20208.     /*! @name Persistence
  20209.     @{ */
  20210.     /*! */
  20211.     /// @}
  20212.  
  20213.  };
  20214.  
  20215.  /*!
  20216.  @brief An xmod datablock.
  20217.  
  20218.  @ingroup afxXMods
  20219.  @ingroup AFX
  20220.  @ingroup Datablocks
  20221.   */
  20222.  class  afxXM_WaveRiderScalarData : public afxXM_WaveRiderBaseData {
  20223.    public:
  20224.     /*!
  20225.     ...
  20226.    
  20227.      */
  20228.     float a;
  20229.     /*!
  20230.     ...
  20231.    
  20232.      */
  20233.     float b;
  20234.     /*!
  20235.     ...
  20236.    
  20237.      */
  20238.     float aVariance;
  20239.     /*!
  20240.     ...
  20241.    
  20242.      */
  20243.     float bVariance;
  20244.     /*!
  20245.     ...
  20246.    
  20247.      */
  20248.     bool syncVariances;
  20249.  
  20250.     /*! @name Scripting
  20251.     @{ */
  20252.     /*! */
  20253.     /// @}
  20254.  
  20255.  
  20256.     /*! @name Ungrouped
  20257.     @{ */
  20258.     /*! */
  20259.     /// @}
  20260.  
  20261.  
  20262.     /*! @name Object
  20263.     @{ */
  20264.     /*! */
  20265.     /// @}
  20266.  
  20267.  
  20268.     /*! @name Editing
  20269.     @{ */
  20270.     /*! */
  20271.     /// @}
  20272.  
  20273.  
  20274.     /*! @name Persistence
  20275.     @{ */
  20276.     /*! */
  20277.     /// @}
  20278.  
  20279.  };
  20280.  
  20281.  class  ChatEvent {
  20282.    public:
  20283.  };
  20284.  
  20285.  class  ConfigEvent {
  20286.    public:
  20287.  };
  20288.  
  20289.  class  CmMessageEvent {
  20290.    public:
  20291.  };
  20292.  
  20293.  class  CmMessageResultEvent {
  20294.    public:
  20295.  };
  20296.  
  20297.  class  YoConnectedPlayerEvent {
  20298.    public:
  20299.  };
  20300.  
  20301.  class  AchievementEvent {
  20302.    public:
  20303.  };
  20304.  
  20305.  class  StableEvent {
  20306.    public:
  20307.  };
  20308.  
  20309.  class  CharacterInfoEvent {
  20310.    public:
  20311.  };
  20312.  
  20313.  class  CmChatClient : public SimObject {
  20314.    public:
  20315.  
  20316.     /*! @name Ungrouped
  20317.     @{ */
  20318.     /*! */
  20319.     /// @}
  20320.  
  20321.  
  20322.     /*! @name Object
  20323.     @{ */
  20324.     /*! */
  20325.     /// @}
  20326.  
  20327.  
  20328.     /*! @name Editing
  20329.     @{ */
  20330.     /*! */
  20331.     /// @}
  20332.  
  20333.  
  20334.     /*! @name Persistence
  20335.     @{ */
  20336.     /*! */
  20337.     /// @}
  20338.  
  20339.  };
  20340.  
  20341.  class  ClaimEvent {
  20342.    public:
  20343.  };
  20344.  
  20345.  class  CraftworkEvent {
  20346.    public:
  20347.  };
  20348.  
  20349.  class  ObjectItemsListEvent {
  20350.    public:
  20351.  };
  20352.  
  20353.  class  CmBuildModeEvent {
  20354.    public:
  20355.  };
  20356.  
  20357.  class  EquipmentEvent {
  20358.    public:
  20359.  };
  20360.  
  20361.  class  CmObjectEvent {
  20362.    public:
  20363.  };
  20364.  
  20365.  class  CmSiegeWeaponStaticShape : public StaticShape {
  20366.    public:
  20367.  
  20368.     /*! @name Game
  20369.     @{ */
  20370.     /*! */
  20371.     /// @}
  20372.  
  20373.  
  20374.     /*! @name Transform
  20375.     @{ */
  20376.     /*! */
  20377.     /// @}
  20378.  
  20379.  
  20380.     /*! @name Editing
  20381.     @{ */
  20382.     /*! */
  20383.     /// @}
  20384.  
  20385.  
  20386.     /*! @name Mounting
  20387.     @{ */
  20388.     /*! */
  20389.     /// @}
  20390.  
  20391.  
  20392.     /*! @name Ungrouped
  20393.     @{ */
  20394.     /*! */
  20395.     /// @}
  20396.  
  20397.  
  20398.     /*! @name Object
  20399.     @{ */
  20400.     /*! */
  20401.     /// @}
  20402.  
  20403.  
  20404.     /*! @name Editing
  20405.     @{ */
  20406.     /*! */
  20407.     /// @}
  20408.  
  20409.  
  20410.     /*! @name Persistence
  20411.     @{ */
  20412.     /*! */
  20413.     /// @}
  20414.  
  20415.  };
  20416.  
  20417.  class  GuildEvent {
  20418.    public:
  20419.  };
  20420.  
  20421.  class  HerbalEvent {
  20422.    public:
  20423.  };
  20424.  
  20425.  /*!
  20426.  @brief A static object derived from a 3D model file and placed within the game world.
  20427.  
  20428.  TSStatic is the most basic 3D shape in Torque.  Unlike StaticShape it doesn't make use of a datablock.  It derrives directly from SceneObject.  This makes TSStatic extremely light weight, which is why the Tools use this class when you want to drop in a DTS or DAE object.
  20429.  
  20430.  While a TSStatic doesn't provide any motion -- it stays were you initally put it -- it does allow for a single ambient animation sequence to play when the object is first added to the scene.
  20431.  
  20432.  @tsexample
  20433.  new TSStatic(Team1Base) {
  20434.     shapeName = "art/shapes/desertStructures/station01.dts";
  20435.     playAmbient = "1";
  20436.     receiveSunLight = "1";
  20437.     receiveLMLighting = "1";
  20438.     useCustomAmbientLighting = "0";
  20439.     customAmbientLighting = "0 0 0 1";
  20440.     collisionType = "Visible Mesh";
  20441.     decalType = "Collision Mesh";
  20442.     allowPlayerStep = "1";
  20443.     renderNormals = "0";
  20444.     forceDetail = "-1";
  20445.     position = "315.18 -180.418 244.313";
  20446.     rotation = "0 0 1 195.952";
  20447.     scale = "1 1 1";
  20448.     isRenderEnabled = "true";
  20449.     canSaveDynamicFields = "1";
  20450.  };
  20451.  @endtsexample
  20452.  @ingroup gameObjects
  20453.   */
  20454.  class  TSStatic : public SceneObject {
  20455.    public:
  20456.     /*! Get the name of the indexed shape material.
  20457. @param index index of the material to get (valid range is 0 - getTargetCount()-1).
  20458. @return the name of the indexed material.
  20459. @see getTargetCount()
  20460.  */
  20461.     virtual string getTargetName(( int index=0 )) {}
  20462.     /*! Get the number of materials in the shape.
  20463. @return the number of materials in the shape.
  20464. @see getTargetName()
  20465.  */
  20466.     virtual int getTargetCount(()) {}
  20467.     /*! @brief Change one of the materials on the shape.
  20468.  
  20469. This method changes materials per mapTo with others. The material that is being replaced is mapped to unmapped_mat as a part of this transition.
  20470. @note Warning, right now this only sort of works. It doesn't do a live update like it should.
  20471. @param mapTo the name of the material target to remap (from getTargetName)
  20472. @param oldMat the old Material that was mapped
  20473. @param newMat the new Material to map
  20474.  
  20475. @tsexample
  20476. // remap the first material in the shape
  20477. %mapTo = %obj.getTargetName( 0 );
  20478. %obj.changeMaterial( %mapTo, 0, MyMaterial );
  20479. @endtsexample
  20480.  */
  20481.     virtual void changeMaterial(( string mapTo="", Material oldMat=NULL, Material newMat=NULL )) {}
  20482.     /*! @brief Get the model filename used by this shape.
  20483.  
  20484. @return the shape filename
  20485.  
  20486. @tsexample
  20487. // Acquire the model filename used on this shape.
  20488. %modelFilename = %obj.getModelFile();
  20489. @endtsexample
  20490.  */
  20491.     virtual string getModelFile(()) {}
  20492.  
  20493.     /*! @name Media
  20494.     @{ */
  20495.     /*! */
  20496.     /*!
  20497.     %Path and filename of the model file (.DTS, .DAE) to use for this TSStatic.
  20498.    
  20499.      */
  20500.     filename shapeName;
  20501.     /// @}
  20502.  
  20503.  
  20504.     /*! @name Rendering
  20505.     @{ */
  20506.     /*! */
  20507.     /*!
  20508.     Enables automatic playing of the animation sequence named "ambient" (if it exists) when the TSStatic is loaded.
  20509.    
  20510.      */
  20511.     bool playAmbient;
  20512.     /*!
  20513.     Enables specify animation sequence name contolled by playAmbient. ("ambient" by default)
  20514.    
  20515.      */
  20516.     string ambientAnimName;
  20517.     /*!
  20518.     Enables detailed culling of meshes within the TSStatic. Should only be used with large complex shapes like buildings which contain many submeshes.
  20519.    
  20520.      */
  20521.     bool meshCulling;
  20522.     /*!
  20523.     Enables translucent sorting of the TSStatic by its origin instead of the bounds.
  20524.    
  20525.      */
  20526.     bool originSort;
  20527.     /// @}
  20528.  
  20529.  
  20530.     /*! @name Collision
  20531.     @{ */
  20532.     /*! */
  20533.     /*!
  20534.     The type of mesh data to use for collision queries.
  20535.    
  20536.      */
  20537.     TSMeshType collisionType;
  20538.     /*!
  20539.     The type of mesh data used to clip decal polygons against.
  20540.    
  20541.      */
  20542.     TSMeshType decalType;
  20543.     /*!
  20544.     @brief Allow a Player to walk up sloping polygons in the TSStatic (based on the collisionType).
  20545.  
  20546. When set to false, the slightest bump will stop the player from walking on top of the object.
  20547.  
  20548.    
  20549.      */
  20550.     bool allowPlayerStep;
  20551.     /// @}
  20552.  
  20553.  
  20554.     /*! @name Debug
  20555.     @{ */
  20556.     /*! */
  20557.     /*!
  20558.     Debug rendering mode shows the normals for each point in the TSStatic's mesh.
  20559.    
  20560.      */
  20561.     float renderNormals;
  20562.     /*!
  20563.     Forces rendering to a particular detail level.
  20564.    
  20565.      */
  20566.     int forceDetail;
  20567.     /// @}
  20568.  
  20569.  
  20570.     /*! @name AFX
  20571.     @{ */
  20572.     /*! */
  20573.     /*!
  20574.      */
  20575.     bool ignoreZodiacs;
  20576.     /*!
  20577.      */
  20578.     bool useGradientRange;
  20579.     /*!
  20580.      */
  20581.     Point2F gradientRange;
  20582.     /*!
  20583.      */
  20584.     bool invertGradientRange;
  20585.     /// @}
  20586.  
  20587.  
  20588.     /*! @name Transform
  20589.     @{ */
  20590.     /*! */
  20591.     /// @}
  20592.  
  20593.  
  20594.     /*! @name Editing
  20595.     @{ */
  20596.     /*! */
  20597.     /// @}
  20598.  
  20599.  
  20600.     /*! @name Mounting
  20601.     @{ */
  20602.     /*! */
  20603.     /// @}
  20604.  
  20605.  
  20606.     /*! @name Ungrouped
  20607.     @{ */
  20608.     /*! */
  20609.     /// @}
  20610.  
  20611.  
  20612.     /*! @name Object
  20613.     @{ */
  20614.     /*! */
  20615.     /// @}
  20616.  
  20617.  
  20618.     /*! @name Editing
  20619.     @{ */
  20620.     /*! */
  20621.     /// @}
  20622.  
  20623.  
  20624.     /*! @name Persistence
  20625.     @{ */
  20626.     /*! */
  20627.     /// @}
  20628.  
  20629.  };
  20630.  
  20631.  class  HerbalObject : public TSStatic {
  20632.    public:
  20633.  
  20634.     /*! @name Media
  20635.     @{ */
  20636.     /*! */
  20637.     /// @}
  20638.  
  20639.  
  20640.     /*! @name Rendering
  20641.     @{ */
  20642.     /*! */
  20643.     /// @}
  20644.  
  20645.  
  20646.     /*! @name Collision
  20647.     @{ */
  20648.     /*! */
  20649.     /// @}
  20650.  
  20651.  
  20652.     /*! @name Debug
  20653.     @{ */
  20654.     /*! */
  20655.     /// @}
  20656.  
  20657.  
  20658.     /*! @name AFX
  20659.     @{ */
  20660.     /*! */
  20661.     /// @}
  20662.  
  20663.  
  20664.     /*! @name Transform
  20665.     @{ */
  20666.     /*! */
  20667.     /// @}
  20668.  
  20669.  
  20670.     /*! @name Editing
  20671.     @{ */
  20672.     /*! */
  20673.     /// @}
  20674.  
  20675.  
  20676.     /*! @name Mounting
  20677.     @{ */
  20678.     /*! */
  20679.     /// @}
  20680.  
  20681.  
  20682.     /*! @name Ungrouped
  20683.     @{ */
  20684.     /*! */
  20685.     /// @}
  20686.  
  20687.  
  20688.     /*! @name Object
  20689.     @{ */
  20690.     /*! */
  20691.     /// @}
  20692.  
  20693.  
  20694.     /*! @name Editing
  20695.     @{ */
  20696.     /*! */
  20697.     /// @}
  20698.  
  20699.  
  20700.     /*! @name Persistence
  20701.     @{ */
  20702.     /*! */
  20703.     /// @}
  20704.  
  20705.  };
  20706.  
  20707.  class  MixerEvent {
  20708.    public:
  20709.  };
  20710.  
  20711.  class  ServerInventoryChangeEvent {
  20712.    public:
  20713.  };
  20714.  
  20715.  class  ServerObjInventoryChangeEvent {
  20716.    public:
  20717.  };
  20718.  
  20719.  class  ServerEquipmentChangeEvent {
  20720.    public:
  20721.  };
  20722.  
  20723.  class  ClientInventoryUpdateEvent {
  20724.    public:
  20725.  };
  20726.  
  20727.  class  SplitStackItemEvent {
  20728.    public:
  20729.  };
  20730.  
  20731.  class  ClientFeatureUpdateEvent {
  20732.    public:
  20733.  };
  20734.  
  20735.  class  JudgementHourStatusEvent {
  20736.    public:
  20737.  };
  20738.  
  20739.  /*!
  20740.  @brief Object used for remote procedure calls.
  20741.  
  20742.  Not intended for game development, for exposing ConsoleFunctions (such as commandToClient) only.
  20743.  
  20744.   */
  20745.  class  RemoteCommandEvent {
  20746.    public:
  20747.  };
  20748.  
  20749.  class  EventSkillToServer {
  20750.    public:
  20751.  };
  20752.  
  20753.  class  EventSkillToClient {
  20754.    public:
  20755.  };
  20756.  
  20757.  class  CmSkillsPlayer {
  20758.    public:
  20759.  
  20760.     /*! @name Ungrouped
  20761.     @{ */
  20762.     /*! */
  20763.     /*!
  20764.     Optional global name of this object.
  20765.    
  20766.      */
  20767.     string Name;
  20768.     /// @}
  20769.  
  20770.  
  20771.     /*! @name Object
  20772.     @{ */
  20773.     /*! */
  20774.     /*!
  20775.     Optional name that may be used to lookup this object within a SimSet.
  20776.    
  20777.      */
  20778.     string internalName;
  20779.     /*!
  20780.     Group hierarchy parent of the object.
  20781.    
  20782.      */
  20783.     SimObject parentGroup;
  20784.     /*!
  20785.     Script class of object.
  20786.    
  20787.      */
  20788.     string class;
  20789.     /*!
  20790.     Script super-class of object.
  20791.    
  20792.      */
  20793.     string superClass;
  20794.     /*!
  20795.     Script class of object.
  20796.    
  20797.      */
  20798.     string className;
  20799.     /// @}
  20800.  
  20801.  
  20802.     /*! @name Editing
  20803.     @{ */
  20804.     /*! */
  20805.     /*!
  20806.     Whether the object is visible.
  20807.    
  20808.      */
  20809.     bool hidden;
  20810.     /// @}
  20811.  
  20812.  
  20813.     /*! @name Persistence
  20814.     @{ */
  20815.     /*! */
  20816.     /*!
  20817.     Whether the object can be saved out. If false, the object is purely transient in nature.
  20818.    
  20819.      */
  20820.     bool canSave;
  20821.     /*!
  20822.     True if dynamic fields (added at runtime) should be saved. Defaults to true.
  20823.    
  20824.      */
  20825.     bool canSaveDynamicFields;
  20826.     /*!
  20827.     The universally unique identifier for the object.
  20828.    
  20829.      */
  20830.     pid persistentId;
  20831.     /*!
  20832.     True if this object is 4ever alone, perhaps it is an one side datablock.
  20833.    
  20834.      */
  20835.     bool local;
  20836.     /// @}
  20837.  
  20838.  };
  20839.  
  20840.  class  InspectATreeReportEvent {
  20841.    public:
  20842.  };
  20843.  
  20844.  class  AbilityCancelEvent {
  20845.    public:
  20846.  };
  20847.  
  20848.  class  AbilityCheckStatusEvent {
  20849.    public:
  20850.  };
  20851.  
  20852.  class  AbilityCooldownsEvent {
  20853.    public:
  20854.  };
  20855.  
  20856.  class  AbilityEvent {
  20857.    public:
  20858.  };
  20859.  
  20860.  class  AbilityReturnStatusEvent {
  20861.    public:
  20862.  };
  20863.  
  20864.  class  SlashCommandEvent {
  20865.    public:
  20866.  };
  20867.  
  20868.  class  GetSelectionEvent {
  20869.    public:
  20870.  };
  20871.  
  20872.  class  AbilityWidget : public GuiContainer {
  20873.    public:
  20874.  
  20875.     /*! @name Layout
  20876.     @{ */
  20877.     /*! */
  20878.     /// @}
  20879.  
  20880.  
  20881.     /*! @name Layout
  20882.     @{ */
  20883.     /*! */
  20884.     /// @}
  20885.  
  20886.  
  20887.     /*! @name Control
  20888.     @{ */
  20889.     /*! */
  20890.     /// @}
  20891.  
  20892.  
  20893.     /*! @name ToolTip
  20894.     @{ */
  20895.     /*! */
  20896.     /// @}
  20897.  
  20898.  
  20899.     /*! @name Editing
  20900.     @{ */
  20901.     /*! */
  20902.     /// @}
  20903.  
  20904.  
  20905.     /*! @name Localization
  20906.     @{ */
  20907.     /*! */
  20908.     /// @}
  20909.  
  20910.  
  20911.     /*! @name Ungrouped
  20912.     @{ */
  20913.     /*! */
  20914.     /// @}
  20915.  
  20916.  
  20917.     /*! @name Object
  20918.     @{ */
  20919.     /*! */
  20920.     /// @}
  20921.  
  20922.  
  20923.     /*! @name Editing
  20924.     @{ */
  20925.     /*! */
  20926.     /// @}
  20927.  
  20928.  
  20929.     /*! @name Persistence
  20930.     @{ */
  20931.     /*! */
  20932.     /// @}
  20933.  
  20934.  };
  20935.  
  20936.  /*!
  20937.  @brief A layer of clouds which change shape over time and are affected by scene lighting.
  20938.  
  20939.  %CloudLayer always renders overhead, following the camera. It is intended as part of the background of your level, rendering in front of Sky/Sun type objects and behind everything else.
  20940.  
  20941.  The illusion of clouds forming and changing over time is controlled by the normal/opacity texture and the three sets of texture animation parameters. The texture is sampled three times.  The first sample defines overall cloud density, where clouds are likely to form and their general size and shape. The second two samples control how it changes over time; they are combined and used as modifiers to the first sample.
  20942.  
  20943.  %CloudLayer is affected by scene lighting and is designed to be used in scenes with dynamic lighting or time of day changes.
  20944.  
  20945.   */
  20946.  class  CloudLayer : public SceneObject {
  20947.    public:
  20948.  
  20949.     /*! @name CloudLayer
  20950.     @{ */
  20951.     /*! */
  20952.     /*!
  20953.     An RGBA texture which should contain normals and opacity (density).
  20954.    
  20955.      */
  20956.     filename texture;
  20957.     /*!
  20958.     Controls the texture repeat of this slot.
  20959.    
  20960.      */
  20961.     float texScale;
  20962.     /*!
  20963.     Controls the direction this slot scrolls.
  20964.    
  20965.      */
  20966.     Point2F texDirection;
  20967.     /*!
  20968.     Controls the speed this slot scrolls.
  20969.    
  20970.      */
  20971.     float texSpeed;
  20972.     /*!
  20973.     Base cloud color before lighting.
  20974.    
  20975.      */
  20976.     ColorF baseColor;
  20977.     /*!
  20978.     Brightness scale so CloudLayer can be overblown if desired.
  20979.    
  20980.      */
  20981.     float exposure;
  20982.     /*!
  20983.     Fraction of sky covered by clouds 0-1.
  20984.    
  20985.      */
  20986.     float coverage;
  20987.     /*!
  20988.     Overall scalar to texture scroll speed.
  20989.    
  20990.      */
  20991.     float windSpeed;
  20992.     /*!
  20993.     Abstract number which controls the curvature and height of the dome mesh.
  20994.    
  20995.      */
  20996.     float height;
  20997.     /*!
  20998.     Value used instead of scatter sky sun scale
  20999.    
  21000.      */
  21001.     Point3F sunScale;
  21002.     /*!
  21003.     Value used instead of scatter sky ambient scale
  21004.    
  21005.      */
  21006.     Point3F ambientScale;
  21007.     /*!
  21008.    
  21009.    
  21010.      */
  21011.     float fogDensity;
  21012.     /// @}
  21013.  
  21014.  
  21015.     /*! @name Transform
  21016.     @{ */
  21017.     /*! */
  21018.     /// @}
  21019.  
  21020.  
  21021.     /*! @name Editing
  21022.     @{ */
  21023.     /*! */
  21024.     /// @}
  21025.  
  21026.  
  21027.     /*! @name Mounting
  21028.     @{ */
  21029.     /*! */
  21030.     /// @}
  21031.  
  21032.  
  21033.     /*! @name Ungrouped
  21034.     @{ */
  21035.     /*! */
  21036.     /// @}
  21037.  
  21038.  
  21039.     /*! @name Object
  21040.     @{ */
  21041.     /*! */
  21042.     /// @}
  21043.  
  21044.  
  21045.     /*! @name Editing
  21046.     @{ */
  21047.     /*! */
  21048.     /// @}
  21049.  
  21050.  
  21051.     /*! @name Persistence
  21052.     @{ */
  21053.     /*! */
  21054.     /// @}
  21055.  
  21056.  };
  21057.  
  21058.  class  GameDateTimeEvent {
  21059.    public:
  21060.  };
  21061.  
  21062.  /*!
  21063.  @brief Base class for events used by node editors, like River
  21064.  
  21065.  Editor use only.
  21066.  
  21067.   */
  21068.  class  NodeListEvent {
  21069.    public:
  21070.  };
  21071.  
  21072.  class  WeatherEvent {
  21073.    public:
  21074.  };
  21075.  
  21076.  class  HotBarCell : public GuiButtonBaseCtrl {
  21077.    public:
  21078.  
  21079.     /*! @name Button
  21080.     @{ */
  21081.     /*! */
  21082.     /// @}
  21083.  
  21084.  
  21085.     /*! @name Layout
  21086.     @{ */
  21087.     /*! */
  21088.     /// @}
  21089.  
  21090.  
  21091.     /*! @name Control
  21092.     @{ */
  21093.     /*! */
  21094.     /// @}
  21095.  
  21096.  
  21097.     /*! @name ToolTip
  21098.     @{ */
  21099.     /*! */
  21100.     /// @}
  21101.  
  21102.  
  21103.     /*! @name Editing
  21104.     @{ */
  21105.     /*! */
  21106.     /// @}
  21107.  
  21108.  
  21109.     /*! @name Localization
  21110.     @{ */
  21111.     /*! */
  21112.     /// @}
  21113.  
  21114.  
  21115.     /*! @name Ungrouped
  21116.     @{ */
  21117.     /*! */
  21118.     /// @}
  21119.  
  21120.  
  21121.     /*! @name Object
  21122.     @{ */
  21123.     /*! */
  21124.     /// @}
  21125.  
  21126.  
  21127.     /*! @name Editing
  21128.     @{ */
  21129.     /*! */
  21130.     /// @}
  21131.  
  21132.  
  21133.     /*! @name Persistence
  21134.     @{ */
  21135.     /*! */
  21136.     /// @}
  21137.  
  21138.  };
  21139.  
  21140.  class  ButtonCooldown : public GuiControl {
  21141.    public:
  21142.  
  21143.     /*! @name Layout
  21144.     @{ */
  21145.     /*! */
  21146.     /// @}
  21147.  
  21148.  
  21149.     /*! @name Control
  21150.     @{ */
  21151.     /*! */
  21152.     /// @}
  21153.  
  21154.  
  21155.     /*! @name ToolTip
  21156.     @{ */
  21157.     /*! */
  21158.     /// @}
  21159.  
  21160.  
  21161.     /*! @name Editing
  21162.     @{ */
  21163.     /*! */
  21164.     /// @}
  21165.  
  21166.  
  21167.     /*! @name Localization
  21168.     @{ */
  21169.     /*! */
  21170.     /// @}
  21171.  
  21172.  
  21173.     /*! @name Ungrouped
  21174.     @{ */
  21175.     /*! */
  21176.     /// @}
  21177.  
  21178.  
  21179.     /*! @name Object
  21180.     @{ */
  21181.     /*! */
  21182.     /// @}
  21183.  
  21184.  
  21185.     /*! @name Editing
  21186.     @{ */
  21187.     /*! */
  21188.     /// @}
  21189.  
  21190.  
  21191.     /*! @name Persistence
  21192.     @{ */
  21193.     /*! */
  21194.     /// @}
  21195.  
  21196.  };
  21197.  
  21198.  /*!
  21199.  @brief An extension of GuiBitmapButtonCtrl that additionally renders a text label on the bitmapped button.
  21200.  
  21201.  The text for the label is taken from the GuiButtonBaseCtrl::text property.
  21202.  
  21203.  For rendering, the label is placed, relative to the control's upper left corner, at the text offset specified in the control's profile (GuiControlProfile::textOffset) and justified according to the profile's setting (GuiControlProfile::justify).
  21204.  
  21205.  @see GuiControlProfile::textOffset
  21206.  @see GuiControlProfile::justify
  21207.   */
  21208.  class  GuiBitmapButtonTextCtrl : public GuiBitmapButtonCtrl {
  21209.    public:
  21210.  
  21211.     /*! @name Bitmap
  21212.     @{ */
  21213.     /*! */
  21214.     /// @}
  21215.  
  21216.  
  21217.     /*! @name Button
  21218.     @{ */
  21219.     /*! */
  21220.     /// @}
  21221.  
  21222.  
  21223.     /*! @name Button
  21224.     @{ */
  21225.     /*! */
  21226.     /// @}
  21227.  
  21228.  
  21229.     /*! @name Layout
  21230.     @{ */
  21231.     /*! */
  21232.     /// @}
  21233.  
  21234.  
  21235.     /*! @name Control
  21236.     @{ */
  21237.     /*! */
  21238.     /// @}
  21239.  
  21240.  
  21241.     /*! @name ToolTip
  21242.     @{ */
  21243.     /*! */
  21244.     /// @}
  21245.  
  21246.  
  21247.     /*! @name Editing
  21248.     @{ */
  21249.     /*! */
  21250.     /// @}
  21251.  
  21252.  
  21253.     /*! @name Localization
  21254.     @{ */
  21255.     /*! */
  21256.     /// @}
  21257.  
  21258.  
  21259.     /*! @name Ungrouped
  21260.     @{ */
  21261.     /*! */
  21262.     /// @}
  21263.  
  21264.  
  21265.     /*! @name Object
  21266.     @{ */
  21267.     /*! */
  21268.     /// @}
  21269.  
  21270.  
  21271.     /*! @name Editing
  21272.     @{ */
  21273.     /*! */
  21274.     /// @}
  21275.  
  21276.  
  21277.     /*! @name Persistence
  21278.     @{ */
  21279.     /*! */
  21280.     /// @}
  21281.  
  21282.  };
  21283.  
  21284.  /*!
  21285.  @brief A push button that renders only a border.
  21286.  
  21287.  A border button consists of a border rendered along its extents according to the border thickness defined in its profile (GuiControlProfile::border).  For the border color, a color is selected from the profile according to current button state:
  21288.  - Default state: GuiControlProfile::borderColor
  21289.  - Highlighted (mouse is over the button): GuiControlProfile::fontColorHL
  21290.  - Depressed (mouse button down but not yet released): GuiControlProfile::fontColorSEL
  21291.  @ingroup GuiButtons
  21292.   */
  21293.  class  GuiBorderButtonCtrl : public GuiButtonBaseCtrl {
  21294.    public:
  21295.  
  21296.     /*! @name Button
  21297.     @{ */
  21298.     /*! */
  21299.     /// @}
  21300.  
  21301.  
  21302.     /*! @name Layout
  21303.     @{ */
  21304.     /*! */
  21305.     /// @}
  21306.  
  21307.  
  21308.     /*! @name Control
  21309.     @{ */
  21310.     /*! */
  21311.     /// @}
  21312.  
  21313.  
  21314.     /*! @name ToolTip
  21315.     @{ */
  21316.     /*! */
  21317.     /// @}
  21318.  
  21319.  
  21320.     /*! @name Editing
  21321.     @{ */
  21322.     /*! */
  21323.     /// @}
  21324.  
  21325.  
  21326.     /*! @name Localization
  21327.     @{ */
  21328.     /*! */
  21329.     /// @}
  21330.  
  21331.  
  21332.     /*! @name Ungrouped
  21333.     @{ */
  21334.     /*! */
  21335.     /// @}
  21336.  
  21337.  
  21338.     /*! @name Object
  21339.     @{ */
  21340.     /*! */
  21341.     /// @}
  21342.  
  21343.  
  21344.     /*! @name Editing
  21345.     @{ */
  21346.     /*! */
  21347.     /// @}
  21348.  
  21349.  
  21350.     /*! @name Persistence
  21351.     @{ */
  21352.     /*! */
  21353.     /// @}
  21354.  
  21355.  };
  21356.  
  21357.  class  GuiPagesButtonCtrl : public GuiButtonCtrl {
  21358.    public:
  21359.  
  21360.     /*! @name Button
  21361.     @{ */
  21362.     /*! */
  21363.     /// @}
  21364.  
  21365.  
  21366.     /*! @name Button
  21367.     @{ */
  21368.     /*! */
  21369.     /// @}
  21370.  
  21371.  
  21372.     /*! @name Layout
  21373.     @{ */
  21374.     /*! */
  21375.     /// @}
  21376.  
  21377.  
  21378.     /*! @name Control
  21379.     @{ */
  21380.     /*! */
  21381.     /// @}
  21382.  
  21383.  
  21384.     /*! @name ToolTip
  21385.     @{ */
  21386.     /*! */
  21387.     /// @}
  21388.  
  21389.  
  21390.     /*! @name Editing
  21391.     @{ */
  21392.     /*! */
  21393.     /// @}
  21394.  
  21395.  
  21396.     /*! @name Localization
  21397.     @{ */
  21398.     /*! */
  21399.     /// @}
  21400.  
  21401.  
  21402.     /*! @name Ungrouped
  21403.     @{ */
  21404.     /*! */
  21405.     /// @}
  21406.  
  21407.  
  21408.     /*! @name Object
  21409.     @{ */
  21410.     /*! */
  21411.     /// @}
  21412.  
  21413.  
  21414.     /*! @name Editing
  21415.     @{ */
  21416.     /*! */
  21417.     /// @}
  21418.  
  21419.  
  21420.     /*! @name Persistence
  21421.     @{ */
  21422.     /*! */
  21423.     /// @}
  21424.  
  21425.  };
  21426.  
  21427.  /*!
  21428.  @brief The GuiPanel panel is a container that when opaque will draw a left to right gradient using its profile fill and fill highlight colors.
  21429.  
  21430.  @tsexample
  21431.  // Mandatory GuiDefaultProfile
  21432.  // Contains the fill color information required by a GuiPanel
  21433.  // Some values left out for sake of this example
  21434.  new GuiControlProfile (GuiDefaultProfile)
  21435.  {
  21436.     // fill color
  21437.     opaque = false;
  21438.     fillColor = "242 241 240";
  21439.     fillColorHL ="228 228 235";
  21440.     fillColorSEL = "98 100 137";
  21441.     fillColorNA = "255 255 255 ";
  21442.  };
  21443.  
  21444.  new GuiPanel(TestPanel)
  21445.  {
  21446.     position = "45 33";
  21447.     extent = "342 379";
  21448.     minExtent = "16 16";
  21449.     horizSizing = "right";
  21450.     vertSizing = "bottom";
  21451.     profile = "GuiDefaultProfile"; // Color fill info is in this profile
  21452.     isContainer = "1";
  21453.  };
  21454.  @endtsexample
  21455.  
  21456.  @see GuiControlProfile
  21457.  @ingroup GuiContainers
  21458.   */
  21459.  class  GuiPanel : public GuiContainer {
  21460.    public:
  21461.  
  21462.     /*! @name Layout
  21463.     @{ */
  21464.     /*! */
  21465.     /// @}
  21466.  
  21467.  
  21468.     /*! @name Layout
  21469.     @{ */
  21470.     /*! */
  21471.     /// @}
  21472.  
  21473.  
  21474.     /*! @name Control
  21475.     @{ */
  21476.     /*! */
  21477.     /// @}
  21478.  
  21479.  
  21480.     /*! @name ToolTip
  21481.     @{ */
  21482.     /*! */
  21483.     /// @}
  21484.  
  21485.  
  21486.     /*! @name Editing
  21487.     @{ */
  21488.     /*! */
  21489.     /// @}
  21490.  
  21491.  
  21492.     /*! @name Localization
  21493.     @{ */
  21494.     /*! */
  21495.     /// @}
  21496.  
  21497.  
  21498.     /*! @name Ungrouped
  21499.     @{ */
  21500.     /*! */
  21501.     /// @}
  21502.  
  21503.  
  21504.     /*! @name Object
  21505.     @{ */
  21506.     /*! */
  21507.     /// @}
  21508.  
  21509.  
  21510.     /*! @name Editing
  21511.     @{ */
  21512.     /*! */
  21513.     /// @}
  21514.  
  21515.  
  21516.     /*! @name Persistence
  21517.     @{ */
  21518.     /*! */
  21519.     /// @}
  21520.  
  21521.  };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement