ParticleChannelMask.h File Reference

An interface for ParticleChannelMask. More...

#include "PFExport.h"
#include <WTypes.h>
#include "..\MaxHeap.h"

Go to the source code of this file.

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
}

Detailed 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.

Definition in file ParticleChannelMask.h.


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 

Definition at line 25 of file ParticleChannelMask.h.

                             {
    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 

Definition at line 56 of file ParticleChannelMask.h.

                      {
    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
};