00001 /* 00002 * PROPRIETARY INFORMATION. This software is proprietary to 00003 * Side Effects Software Inc., and is not to be reproduced, 00004 * transmitted, or disclosed in any way without written permission. 00005 * 00006 * Produced by: 00007 * Mark Elendt 00008 * Side Effects 00009 * 477 Richmond Street West 00010 * Toronto, Ontario 00011 * Canada M5V 3E7 00012 * 416-504-9876 00013 * 00014 * NAME: OP library (C++) 00015 * 00016 * COMMENTS: Data types for cooked data 00017 * 00018 */ 00019 00020 #ifndef __OP_DataTypes_h__ 00021 #define __OP_DataTypes_h__ 00022 00023 typedef enum { 00024 OP_NO_DATA, // No cooked data associated with the node 00025 OP_GEOMETRY_DATA, // Cooked data in geometry format 00026 OP_TRANSFORM_DATA, // Cooked data as a transform 00027 OP_OTHER_DATA, // Generic catch all 00028 OP_CHANNEL_DATA, // Channel collection output 00029 OP_SHADER_DATA, // Shader data 00030 OP_SIM_DATA, // Dynamics data 00031 OP_RASTER_DATA, // Raster data 00032 OP_POP_DATA, // Particle data 00033 OP_NUM_DATA_TYPES // sentinel 00034 } OP_DATA_TYPE; 00035 00036 enum OP_InterestType 00037 { 00038 OP_INTEREST_NONE = 0x00, // I'm not interested 00039 OP_INTEREST_PARM = 0x01, // interested in a parameter changes (rare) 00040 OP_INTEREST_DATA = 0x02, // interested in op data changes (usual) 00041 OP_INTEREST_FLAG = 0x04, // interested in flag changes (e.g.display flg) 00042 00043 // OP_INTEREST_NAME should NOT be used with addExtraInput(). 00044 // It should only be used with addOpReference() or addOpNameReference(). 00045 OP_INTEREST_NAME = 0x08, // interested in OP name changes 00046 00047 OP_INTEREST_INPUT = 0x10, // interested when inputs change 00048 OP_INTEREST_OUTPUT = 0x20, // interested when outputs change 00049 OP_INTEREST_INPUTREF= 0x40, // used for resolving input references 00050 00051 // OP_INTEREST_NAME should NOT be used with addExtraInput(). 00052 // It should only be used with addOpReference() or addOpNameReference(). 00053 // interested in name & data: 00054 OP_INTEREST_NAMEDATA = OP_INTEREST_NAME|OP_INTEREST_DATA, 00055 OP_INTEREST_NAME_INPUT = OP_INTEREST_NAME|OP_INTEREST_INPUT, 00056 OP_INTEREST_NAME_OUTPUT = OP_INTEREST_NAME|OP_INTEREST_OUTPUT, 00057 00058 // The following acts as a sentinal 00059 OP_INTEREST_ALL = 0xFFFFFFFF // Use this to match all interests 00060 }; 00061 00062 #endif
1.5.9