ParticleFlow/ParticleChannelMask.h File Reference
 
 
 
ParticleFlow/ParticleChannelMask.h File Reference
#include "PFExport.h"
#include <WTypes.h>
#include "../MaxHeap.h"

File Description

An interface for ParticleChannelMask.

The interface is used by Operators/Elements to define what channels are read/write. The class is implemented by system.

Classes

class   ParticleChannelMask

Enumerations

enum   PCU_genericChannelIndex {
  PCG_float = 1<<0, PCG_int = 1<<1, PCG_Point3 = 1<<3, PCG_bool = 1<<4,
  PCG_PTV = 1<<7, PCG_INode = 1<<9, PCG_Matrix3 = 1<<10, PCG_void = 1<<11,
  PCG_AngAxis = 1<<13, PCG_Quat = 1<<14, PCG_Mesh = 1<<17, PCG_TabUVVert = 1<<20,
  PCG_TabTVFace = 1<<21, PCG_Map = 1<<22, PCG_MeshMap = 1<<23
}
enum   PCU_channelIndex {
  PCU_Undefined = 0, PCU_Amount = 1<<0, PCU_New = 1<<1, PCU_ID = 1<<2,
  PCU_Time = 1<<3, PCU_BirthTime = 1<<4, PCU_EventStart = 1<<5, PCU_Position = 1<<6,
  PCU_Speed = 1<<7, PCU_Acceleration = 1<<8, PCU_Orientation = 1<<9, PCU_Spin = 1<<10,
  PCU_Scale = 1<<11, PCU_Shape = 1<<12, PCU_ShapeTexture = 1<<16, PCU_MtlIndex = 1<<18,
  PCU_Selection = 1<<19, PCU_MXSInteger = 1<<20, PCU_MXSFloat = 1<<21, PCU_MXSVector = 1<<22,
  PCU_MXSMatrix = 1<<23, PCU_DeathTime = 1<<24, PCU_Lifespan = 1<<25
}

Enumeration Type Documentation

Enumerator:
PCG_float 
PCG_int 
PCG_Point3 
PCG_bool 
PCG_PTV 
PCG_INode 
PCG_Matrix3 
PCG_void 
PCG_AngAxis 
PCG_Quat 
PCG_Mesh 
PCG_TabUVVert 
PCG_TabTVFace 
PCG_Map 
PCG_MeshMap 
                             {
        PCG_float=              1<<0,
        PCG_int=                1<<1,
//      PCG_RGBA=               1<<2,
        PCG_Point3=             1<<3,
        PCG_bool=               1<<4,
//      PCG_String=             1<<5,
//      PCG_TimeValue=  1<<6,
        PCG_PTV=                1<<7,   // Precise Time Value
//      PCG_TexMap=             1<<8,
        PCG_INode=              1<<9,
        PCG_Matrix3=    1<<10,
        PCG_void=               1<<11,
//      PCG_Interval=   1<<12,
        PCG_AngAxis=    1<<13,
        PCG_Quat=               1<<14,
//      PCG_Point2=             1<<15,
//      PCG_BitArray=   1<<16,
        PCG_Mesh=               1<<17,
//      PCG_TabPoint3=  1<<18,
//      PCG_TabFace=    1<<19
        PCG_TabUVVert=  1<<20,
        PCG_TabTVFace=  1<<21,
        PCG_Map=                1<<22,
        PCG_MeshMap=    1<<23
};
Enumerator:
PCU_Undefined 
PCU_Amount 
PCU_New 
PCU_ID 
PCU_Time 
PCU_BirthTime 
PCU_EventStart 
PCU_Position 
PCU_Speed 
PCU_Acceleration 
PCU_Orientation 
PCU_Spin 
PCU_Scale 
PCU_Shape 
PCU_ShapeTexture 
PCU_MtlIndex 
PCU_Selection 
PCU_MXSInteger 
PCU_MXSFloat 
PCU_MXSVector 
PCU_MXSMatrix 
PCU_DeathTime 
PCU_Lifespan 
                      {
        PCU_Undefined=             0,
        PCU_Amount=                     1<<0, // fictional channel to indicate that Operator changes number of particles
        PCU_New=                        1<<1, // channel to trace newly born/entered particles
        PCU_ID=                         1<<2, // channel to keep particleID=(index,born)
        PCU_Time=                       1<<3, // current valid time for a particle (PCG_PTV)
        PCU_BirthTime=          1<<4, // time when particle was born (PCG_PTV)
        PCU_EventStart=         1<<5, // time when particle entered the current event (PCG_PTV)
        PCU_Position=           1<<6, // particle position (PCG_Point3)
        PCU_Speed=                      1<<7, // particle speed (PCG_Point3)
        PCU_Acceleration=       1<<8, // particle acceleration (PCG_Point3)
        PCU_Orientation=        1<<9, // 3D orientation of a particle (PCG_Quad)
        PCU_Spin=                       1<<10, // angular velocity of a particle (PCG_AngAxis)
        PCU_Scale=                      1<<11, // scaling factor for particle (Point3: x, y, z axes)
        PCU_Shape=                      1<<12, // shape as a whole mesh (PCG_Mesh)
//      PCU_ShapeTopology=      1<<13, // topology data (Tab<Face>)
//      PCU_ShapeGeometry=      1<<14, // geometry data (Tab<Point3>)
//      PCU_ShapeNormals=       1<<15, // normals data
        PCU_ShapeTexture=       1<<16, // texture coordinate data
//      PCU_Mass=                       1<<17, // particle mass
        PCU_MtlIndex=           1<<18, // material index for particles
        PCU_Selection=          1<<19,  // selection status
        PCU_MXSInteger=         1<<20,  // maxscript integer value
        PCU_MXSFloat=           1<<21,  // maxscript float value
        PCU_MXSVector=          1<<22,  // maxscript Point3 value
        PCU_MXSMatrix=          1<<23,  // maxscript Matrix3 value
        PCU_DeathTime=          1<<24,  // time when particle is expected to die (PCG_PTV)
        PCU_Lifespan=           1<<25   // lifespan of a particle
};