2023-02-08 22:57:31 +08:00
# include "AccessibleValue.hpp"
# include <vector>
# include <array>
2023-08-26 20:34:51 +08:00
namespace Unvirt : : AccessibleValue {
# pragma region File Formatter
std : : string GetReadableFileSize ( uint64_t size ) {
std : : string strl ;
static double denominator = ( double ) 0b1111111111 ;
uint64_t probe = size ;
// check bytes
if ( ( probe > > 10 ) = = UINT64_C ( 0 ) ) {
StringHelper : : StdstringPrintf ( strl , " % " PRIu64 " Bytes " , probe ) ;
return strl ;
}
probe > > = 10 ;
// check kb
if ( ( probe > > 10 ) = = UINT64_C ( 0 ) ) {
StringHelper : : StdstringPrintf ( strl , " %.2lfKiB " , size / static_cast < double > ( UINT64_C ( 1 ) < < 10 ) ) ;
return strl ;
2023-02-09 14:12:02 +08:00
}
2023-08-26 20:34:51 +08:00
probe > > = 10 ;
// check mb
if ( ( probe > > 10 ) = = UINT64_C ( 0 ) ) {
StringHelper : : StdstringPrintf ( strl , " %.2lfMiB " , size / static_cast < double > ( UINT64_C ( 1 ) < < 20 ) ) ;
return strl ;
}
probe > > = 10 ;
// otherwise gb
StringHelper : : StdstringPrintf ( strl , " %.2lfGiB " , size / static_cast < double > ( UINT64_C ( 1 ) < < 30 ) ) ;
return strl ;
}
2023-02-09 14:12:02 +08:00
# pragma endregion
2023-08-26 20:34:51 +08:00
# pragma region CKERROR CK_CLASSID Data
2023-02-09 14:12:02 +08:00
2023-08-26 20:34:51 +08:00
struct CkClassidReflection { std : : vector < const char * > mHierarchy ; } ;
using CkClassidReflectionArray = std : : vector < std : : pair < LibCmo : : CK2 : : CK_CLASSID , CkClassidReflection > > ;
struct CkErrorReflection { const char * mName ; const char * mDescription ; } ;
using CkErrorReflectionArray = std : : vector < std : : pair < LibCmo : : CK2 : : CKERROR , CkErrorReflection > > ;
2023-02-08 22:57:31 +08:00
2023-08-26 20:34:51 +08:00
namespace EnumDesc {
2023-09-12 17:03:06 +08:00
const GeneralReflectionArray < LibCmo : : CK2 : : CK_FILE_WRITEMODE > CK_FILE_WRITEMODE {
{ LibCmo : : CK2 : : CK_FILE_WRITEMODE : : CKFILE_UNCOMPRESSED , { " CKFILE_UNCOMPRESSED " } } ,
{ LibCmo : : CK2 : : CK_FILE_WRITEMODE : : CKFILE_CHUNKCOMPRESSED_OLD , { " CKFILE_CHUNKCOMPRESSED_OLD " } } ,
{ LibCmo : : CK2 : : CK_FILE_WRITEMODE : : CKFILE_EXTERNALTEXTURES_OLD , { " CKFILE_EXTERNALTEXTURES_OLD " } } ,
{ LibCmo : : CK2 : : CK_FILE_WRITEMODE : : CKFILE_FORVIEWER , { " CKFILE_FORVIEWER " } } ,
{ LibCmo : : CK2 : : CK_FILE_WRITEMODE : : CKFILE_WHOLECOMPRESSED , { " CKFILE_WHOLECOMPRESSED " } } ,
} ;
2023-08-26 20:34:51 +08:00
const CkClassidReflectionArray CK_CLASSID {
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_OBJECT , { { " CKCID_OBJECT " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_PARAMETERIN , { { " CKCID_OBJECT " , " CKCID_PARAMETERIN " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_PARAMETEROPERATION , { { " CKCID_OBJECT " , " CKCID_PARAMETEROPERATION " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_STATE , { { " CKCID_OBJECT " , " CKCID_STATE " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_BEHAVIORLINK , { { " CKCID_OBJECT " , " CKCID_BEHAVIORLINK " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_BEHAVIOR , { { " CKCID_OBJECT " , " CKCID_BEHAVIOR " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_BEHAVIORIO , { { " CKCID_OBJECT " , " CKCID_BEHAVIORIO " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_RENDERCONTEXT , { { " CKCID_OBJECT " , " CKCID_RENDERCONTEXT " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_KINEMATICCHAIN , { { " CKCID_OBJECT " , " CKCID_KINEMATICCHAIN " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_SCENEOBJECT , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_OBJECTANIMATION , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_OBJECTANIMATION " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_ANIMATION , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_ANIMATION " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_KEYEDANIMATION , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_ANIMATION " , " CKCID_KEYEDANIMATION " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_BEOBJECT , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_DATAARRAY , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_DATAARRAY " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_SCENE , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_SCENE " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_LEVEL , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_LEVEL " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_PLACE , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_PLACE " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_GROUP , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_GROUP " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_SOUND , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_SOUND " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_WAVESOUND , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_SOUND " , " CKCID_WAVESOUND " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_MIDISOUND , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_SOUND " , " CKCID_MIDISOUND " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_MATERIAL , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_MATERIAL " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_TEXTURE , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_TEXTURE " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_MESH , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_MESH " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_PATCHMESH , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_MESH " , " CKCID_PATCHMESH " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_RENDEROBJECT , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_RENDEROBJECT " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_2DENTITY , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_RENDEROBJECT " , " CKCID_2DENTITY " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_SPRITE , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_RENDEROBJECT " , " CKCID_2DENTITY " , " CKCID_SPRITE " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_SPRITETEXT , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_RENDEROBJECT " , " CKCID_2DENTITY " , " CKCID_SPRITETEXT " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_3DENTITY , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_3DENTITY " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_GRID , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_3DENTITY " , " CKCID_GRID " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_CURVEPOINT , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_3DENTITY " , " CKCID_CURVEPOINT " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_SPRITE3D , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_3DENTITY " , " CKCID_SPRITE3D " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_CURVE , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_3DENTITY " , " CKCID_CURVE " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_CAMERA , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_3DENTITY " , " CKCID_CAMERA " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_TARGETCAMERA , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_3DENTITY " , " CKCID_CAMERA " , " CKCID_TARGETCAMERA " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_LIGHT , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_3DENTITY " , " CKCID_LIGHT " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_TARGETLIGHT , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_3DENTITY " , " CKCID_LIGHT " , " CKCID_TARGETLIGHT " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_CHARACTER , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_3DENTITY " , " CKCID_CHARACTER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_3DOBJECT , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_3DENTITY " , " CKCID_3DOBJECT " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_BODYPART , { { " CKCID_OBJECT " , " CKCID_SCENEOBJECT " , " CKCID_BEOBJECT " , " CKCID_3DENTITY " , " CKCID_3DOBJECT " , " CKCID_BODYPART " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_PARAMETER , { { " CKCID_OBJECT " , " CKCID_PARAMETER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_PARAMETERLOCAL , { { " CKCID_OBJECT " , " CKCID_PARAMETER " , " CKCID_PARAMETERLOCAL " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_PARAMETEROUT , { { " CKCID_OBJECT " , " CKCID_PARAMETER " , " CKCID_PARAMETEROUT " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_INTERFACEOBJECTMANAGER , { { " CKCID_OBJECT " , " CKCID_INTERFACEOBJECTMANAGER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_CRITICALSECTION , { { " CKCID_OBJECT " , " CKCID_CRITICALSECTION " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_LAYER , { { " CKCID_OBJECT " , " CKCID_LAYER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_PROGRESSIVEMESH , { { " CKCID_OBJECT " , " CKCID_PROGRESSIVEMESH " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_SYNCHRO , { { " CKCID_OBJECT " , " CKCID_SYNCHRO " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_OBJECTARRAY , { { " CKCID_OBJECTARRAY " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_SCENEOBJECTDESC , { { " CKCID_SCENEOBJECTDESC " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_ATTRIBUTEMANAGER , { { " CKCID_ATTRIBUTEMANAGER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_MESSAGEMANAGER , { { " CKCID_MESSAGEMANAGER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_COLLISIONMANAGER , { { " CKCID_COLLISIONMANAGER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_OBJECTMANAGER , { { " CKCID_OBJECTMANAGER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_FLOORMANAGER , { { " CKCID_FLOORMANAGER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_RENDERMANAGER , { { " CKCID_RENDERMANAGER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_BEHAVIORMANAGER , { { " CKCID_BEHAVIORMANAGER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_INPUTMANAGER , { { " CKCID_INPUTMANAGER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_PARAMETERMANAGER , { { " CKCID_PARAMETERMANAGER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_GRIDMANAGER , { { " CKCID_GRIDMANAGER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_SOUNDMANAGER , { { " CKCID_SOUNDMANAGER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_TIMEMANAGER , { { " CKCID_TIMEMANAGER " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_CUIKBEHDATA , { { " CKCID_CUIKBEHDATA " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_MAXCLASSID , { { " CKCID_MAXCLASSID " } } } ,
{ LibCmo : : CK2 : : CK_CLASSID : : CKCID_MAXMAXCLASSID , { { " CKCID_MAXMAXCLASSID " } } } ,
2023-02-08 22:57:31 +08:00
} ;
2023-08-26 20:34:51 +08:00
const CkErrorReflectionArray CKERROR {
{ LibCmo : : CK2 : : CKERROR : : CKERR_OK , { " CKERR_OK " , " Operation successful " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDPARAMETER , { " CKERR_INVALIDPARAMETER " , " One of the parameter passed to the function was invalid " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDPARAMETERTYPE , { " CKERR_INVALIDPARAMETERTYPE " , " One of the parameter passed to the function was invalid " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDSIZE , { " CKERR_INVALIDSIZE " , " The parameter size was invalid " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDOPERATION , { " CKERR_INVALIDOPERATION " , " The operation type didn't exist " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_OPERATIONNOTIMPLEMENTED , { " CKERR_OPERATIONNOTIMPLEMENTED " , " The function used to execute the operation is not yet implemented " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_OUTOFMEMORY , { " CKERR_OUTOFMEMORY " , " There was not enough memory to perform the action " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NOTIMPLEMENTED , { " CKERR_NOTIMPLEMENTED " , " The function is not yet implemented " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NOTFOUND , { " CKERR_NOTFOUND " , " There was an attempt to remove something not present " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NOLEVEL , { " CKERR_NOLEVEL " , " There is no level currently created " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_CANCREATERENDERCONTEXT , { " CKERR_CANCREATERENDERCONTEXT " , " " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NOTIFICATIONNOTHANDLED , { " CKERR_NOTIFICATIONNOTHANDLED " , " The notification message was not used " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_ALREADYPRESENT , { " CKERR_ALREADYPRESENT " , " Attempt to add an item that was already present " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDRENDERCONTEXT , { " CKERR_INVALIDRENDERCONTEXT " , " the render context is not valid " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_RENDERCONTEXTINACTIVE , { " CKERR_RENDERCONTEXTINACTIVE " , " the render context is not activated for rendering " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NOLOADPLUGINS , { " CKERR_NOLOADPLUGINS " , " there was no plugins to load this kind of file " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NOSAVEPLUGINS , { " CKERR_NOSAVEPLUGINS " , " there was no plugins to save this kind of file " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDFILE , { " CKERR_INVALIDFILE " , " attempt to load an invalid file " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDPLUGIN , { " CKERR_INVALIDPLUGIN " , " attempt to load with an invalid plugin " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NOTINITIALIZED , { " CKERR_NOTINITIALIZED " , " attempt use an object that wasnt initialized " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDMESSAGE , { " CKERR_INVALIDMESSAGE " , " attempt use a message type that wasn't registred " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDPROTOTYPE , { " CKERR_INVALIDPROTOTYPE " , " attempt use an invalid prototype " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NODLLFOUND , { " CKERR_NODLLFOUND " , " No dll file found in the parse directory " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_ALREADYREGISTREDDLL , { " CKERR_ALREADYREGISTREDDLL " , " this dll has already been registred " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDDLL , { " CKERR_INVALIDDLL " , " this dll does not contain information to create the prototype " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDOBJECT , { " CKERR_INVALIDOBJECT " , " Invalid Object (attempt to Get an object from an invalid ID) " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDCONDSOLEWINDOW , { " CKERR_INVALIDCONDSOLEWINDOW " , " Invalid window was provided as console window " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDKINEMATICCHAIN , { " CKERR_INVALIDKINEMATICCHAIN " , " Invalid kinematic chain ( end and start effector may not be part of the same hierarchy ) " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NOKEYBOARD , { " CKERR_NOKEYBOARD " , " Keyboard not attached or not working properly " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NOMOUSE , { " CKERR_NOMOUSE " , " Mouse not attached or not working properly " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NOJOYSTICK , { " CKERR_NOJOYSTICK " , " Joystick not attached or not working properly " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INCOMPATIBLEPARAMETERS , { " CKERR_INCOMPATIBLEPARAMETERS " , " Try to link imcompatible Parameters " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NORENDERENGINE , { " CKERR_NORENDERENGINE " , " There is no render engine dll " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NOCURRENTLEVEL , { " CKERR_NOCURRENTLEVEL " , " There is no current level (use CKSetCurrentLevel ) " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_SOUNDDISABLED , { " CKERR_SOUNDDISABLED " , " Sound Management has been disabled " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_DINPUTDISABLED , { " CKERR_DINPUTDISABLED " , " DirectInput Management has been disabled " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDGUID , { " CKERR_INVALIDGUID " , " Guid is already in use or invalid " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NOTENOUGHDISKPLACE , { " CKERR_NOTENOUGHDISKPLACE " , " There was no more free space on disk when trying to save a file " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_CANTWRITETOFILE , { " CKERR_CANTWRITETOFILE " , " Impossible to write to file (write-protection ?) " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_BEHAVIORADDDENIEDBYCB , { " CKERR_BEHAVIORADDDENIEDBYCB " , " The behavior cannnot be added to this entity " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INCOMPATIBLECLASSID , { " CKERR_INCOMPATIBLECLASSID " , " The behavior cannnot be added to this entity " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_MANAGERALREADYEXISTS , { " CKERR_MANAGERALREADYEXISTS " , " A manager was registered more than once " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_PAUSED , { " CKERR_PAUSED " , " CKprocess or TimeManager process while CK is paused will fail " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_PLUGINSMISSING , { " CKERR_PLUGINSMISSING " , " Some plugins were missing whileloading a file " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_OBSOLETEVIRTOOLS , { " CKERR_OBSOLETEVIRTOOLS " , " Virtools version too old to load this file " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_FILECRCERROR , { " CKERR_FILECRCERROR " , " CRC Error while loading file " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_ALREADYFULLSCREEN , { " CKERR_ALREADYFULLSCREEN " , " A Render context is already in Fullscreen Mode " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_CANCELLED , { " CKERR_CANCELLED " , " Operation was cancelled by user " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_NOANIMATIONKEY , { " CKERR_NOANIMATIONKEY " , " there were no animation key at the given index " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDINDEX , { " CKERR_INVALIDINDEX " , " attemp to acces an animation key with an invalid index " } } ,
{ LibCmo : : CK2 : : CKERROR : : CKERR_INVALIDANIMATION , { " CKERR_INVALIDANIMATION " , " the animation is invalid (no entity associated or zero length) " } } ,
} ;
2023-02-08 22:57:31 +08:00
2023-08-26 20:34:51 +08:00
}
# pragma endregion
2023-02-08 22:57:31 +08:00
2023-08-26 20:34:51 +08:00
# pragma region CKERROR CK_CLASSID Process
2023-02-08 22:57:31 +08:00
2023-08-26 20:34:51 +08:00
static const CkErrorReflection * GetCkError ( LibCmo : : CK2 : : CKERROR err ) {
for ( auto & item : EnumDesc : : CKERROR ) {
if ( item . first = = err ) {
return & item . second ;
2023-02-08 22:57:31 +08:00
}
}
2023-08-26 20:34:51 +08:00
return nullptr ;
}
2023-02-08 22:57:31 +08:00
2023-08-26 20:34:51 +08:00
std : : string GetCkErrorName ( LibCmo : : CK2 : : CKERROR err ) {
const CkErrorReflection * node = GetCkError ( err ) ;
if ( node ! = nullptr ) return node - > mName ;
else return c_InvalidEnumName ;
}
2023-02-08 22:57:31 +08:00
2023-08-26 20:34:51 +08:00
std : : string GetCkErrorDescription ( LibCmo : : CK2 : : CKERROR err ) {
const CkErrorReflection * node = GetCkError ( err ) ;
if ( node ! = nullptr ) return node - > mDescription ;
else return c_InvalidEnumName ;
}
2023-02-08 22:57:31 +08:00
2023-08-26 20:34:51 +08:00
static const CkClassidReflection * GetCkClassid ( LibCmo : : CK2 : : CK_CLASSID cls ) {
for ( auto & item : EnumDesc : : CK_CLASSID ) {
if ( item . first = = cls ) {
return & item . second ;
2023-02-08 22:57:31 +08:00
}
}
2023-08-26 20:34:51 +08:00
return nullptr ;
}
2023-02-08 22:57:31 +08:00
2023-08-26 20:34:51 +08:00
std : : string GetClassIdName ( LibCmo : : CK2 : : CK_CLASSID cls ) {
const CkClassidReflection * node = GetCkClassid ( cls ) ;
if ( node = = nullptr ) return c_InvalidEnumName ;
else return node - > mHierarchy . back ( ) ;
}
2023-03-03 16:05:32 +08:00
2023-08-26 20:34:51 +08:00
std : : string GetClassIdHierarchy ( LibCmo : : CK2 : : CK_CLASSID cls ) {
const CkClassidReflection * node = GetCkClassid ( cls ) ;
if ( node = = nullptr ) return c_InvalidEnumName ;
std : : string strl ;
for ( auto & hierarchy_node : node - > mHierarchy ) {
if ( ! strl . empty ( ) ) strl + = " -> " ;
strl + = hierarchy_node ;
2023-02-08 22:57:31 +08:00
}
2023-08-26 20:34:51 +08:00
return strl ;
}
2023-02-08 22:57:31 +08:00
2023-02-09 14:12:02 +08:00
# pragma endregion
2023-08-26 20:34:51 +08:00
# pragma region Other Enums
2023-02-08 22:57:31 +08:00
2023-08-26 20:34:51 +08:00
namespace EnumDesc {
2023-02-08 22:57:31 +08:00
2023-08-26 20:34:51 +08:00
const GeneralReflectionArray < LibCmo : : CK2 : : CK_FO_OPTIONS > CK_FO_OPTIONS {
{ LibCmo : : CK2 : : CK_FO_OPTIONS : : CK_FO_DEFAULT , { " CK_FO_DEFAULT " } } ,
{ LibCmo : : CK2 : : CK_FO_OPTIONS : : CK_FO_RENAMEOBJECT , { " CK_FO_RENAMEOBJECT " } } ,
{ LibCmo : : CK2 : : CK_FO_OPTIONS : : CK_FO_REPLACEOBJECT , { " CK_FO_REPLACEOBJECT " } } ,
{ LibCmo : : CK2 : : CK_FO_OPTIONS : : CK_FO_DONTLOADOBJECT , { " CK_FO_DONTLOADOBJECT " } } ,
} ;
const GeneralReflectionArray < LibCmo : : CK2 : : CK_STATECHUNK_CHUNKOPTIONS > CK_STATECHUNK_CHUNKOPTIONS {
{ LibCmo : : CK2 : : CK_STATECHUNK_CHUNKOPTIONS : : CHNK_OPTION_IDS , { " CHNK_OPTION_IDS " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_CHUNKOPTIONS : : CHNK_OPTION_MAN , { " CHNK_OPTION_MAN " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_CHUNKOPTIONS : : CHNK_OPTION_CHN , { " CHNK_OPTION_CHN " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_CHUNKOPTIONS : : CHNK_OPTION_FILE , { " CHNK_OPTION_FILE " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_CHUNKOPTIONS : : CHNK_OPTION_ALLOWDYN , { " CHNK_OPTION_ALLOWDYN " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_CHUNKOPTIONS : : CHNK_OPTION_LISTBIG , { " CHNK_OPTION_LISTBIG " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_CHUNKOPTIONS : : CHNK_DONTDELETE_PTR , { " CHNK_DONTDELETE_PTR " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_CHUNKOPTIONS : : CHNK_DONTDELETE_PARSER , { " CHNK_DONTDELETE_PARSER " } } ,
} ;
const GeneralReflectionArray < LibCmo : : CK2 : : CK_STATECHUNK_DATAVERSION > CK_STATECHUNK_DATAVERSION {
{ LibCmo : : CK2 : : CK_STATECHUNK_DATAVERSION : : CHUNKDATA_OLDVERSION , { " CHUNKDATA_OLDVERSION " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_DATAVERSION : : CHUNKDATA_BASEVERSION , { " CHUNKDATA_BASEVERSION " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_DATAVERSION : : CHUNK_WAVESOUND_VERSION2 , { " CHUNK_WAVESOUND_VERSION2 " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_DATAVERSION : : CHUNK_WAVESOUND_VERSION3 , { " CHUNK_WAVESOUND_VERSION3 " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_DATAVERSION : : CHUNK_MATERIAL_VERSION_ZTEST , { " CHUNK_MATERIAL_VERSION_ZTEST " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_DATAVERSION : : CHUNK_MAJORCHANGE_VERSION , { " CHUNK_MAJORCHANGE_VERSION " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_DATAVERSION : : CHUNK_MACCHANGE_VERSION , { " CHUNK_MACCHANGE_VERSION " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_DATAVERSION : : CHUNK_WAVESOUND_VERSION4 , { " CHUNK_WAVESOUND_VERSION4 " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_DATAVERSION : : CHUNK_SCENECHANGE_VERSION , { " CHUNK_SCENECHANGE_VERSION " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_DATAVERSION : : CHUNK_MESHCHANGE_VERSION , { " CHUNK_MESHCHANGE_VERSION " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_DATAVERSION : : CHUNK_DEV_2_1 , { " CHUNK_DEV_2_1 " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_DATAVERSION : : CHUNKDATA_CURRENTVERSION , { " CHUNKDATA_CURRENTVERSION " } } ,
} ;
const GeneralReflectionArray < LibCmo : : CK2 : : CK_STATECHUNK_CHUNKVERSION > CK_STATECHUNK_CHUNKVERSION {
{ LibCmo : : CK2 : : CK_STATECHUNK_CHUNKVERSION : : CHUNK_VERSIONBASE , { " CHUNK_VERSIONBASE " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_CHUNKVERSION : : CHUNK_VERSION1 , { " CHUNK_VERSION1 " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_CHUNKVERSION : : CHUNK_VERSION2 , { " CHUNK_VERSION2 " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_CHUNKVERSION : : CHUNK_VERSION3 , { " CHUNK_VERSION3 " } } ,
{ LibCmo : : CK2 : : CK_STATECHUNK_CHUNKVERSION : : CHUNK_VERSION4 , { " CHUNK_VERSION4 " } } ,
} ;
2023-09-22 16:40:10 +08:00
const GeneralReflectionArray < LibCmo : : CK2 : : CK_OBJECT_FLAGS > CK_OBJECT_FLAGS {
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_INTERFACEOBJ , { " CK_OBJECT_INTERFACEOBJ " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_PRIVATE , { " CK_OBJECT_PRIVATE " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_INTERFACEMARK , { " CK_OBJECT_INTERFACEMARK " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_FREEID , { " CK_OBJECT_FREEID " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_TOBEDELETED , { " CK_OBJECT_TOBEDELETED " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_NOTTOBESAVED , { " CK_OBJECT_NOTTOBESAVED " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_VISIBLE , { " CK_OBJECT_VISIBLE " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_NAMESHARED , { " CK_OBJECT_NAMESHARED " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_DYNAMIC , { " CK_OBJECT_DYNAMIC " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_HIERACHICALHIDE , { " CK_OBJECT_HIERACHICALHIDE " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_UPTODATE , { " CK_OBJECT_UPTODATE " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_TEMPMARKER , { " CK_OBJECT_TEMPMARKER " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_ONLYFORFILEREFERENCE , { " CK_OBJECT_ONLYFORFILEREFERENCE " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_NOTTOBEDELETED , { " CK_OBJECT_NOTTOBEDELETED " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_APPDATA , { " CK_OBJECT_APPDATA " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_SINGLEACTIVITY , { " CK_OBJECT_SINGLEACTIVITY " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_LOADSKIPBEOBJECT , { " CK_OBJECT_LOADSKIPBEOBJECT " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_NOTTOBELISTEDANDSAVED , { " CK_OBJECT_NOTTOBELISTEDANDSAVED " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_PARAMETEROUT_SETTINGS , { " CK_PARAMETEROUT_SETTINGS " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_PARAMETEROUT_PARAMOP , { " CK_PARAMETEROUT_PARAMOP " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_PARAMETERIN_DISABLED , { " CK_PARAMETERIN_DISABLED " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_PARAMETERIN_THIS , { " CK_PARAMETERIN_THIS " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_PARAMETERIN_SHARED , { " CK_PARAMETERIN_SHARED " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_PARAMETEROUT_DELETEAFTERUSE , { " CK_PARAMETEROUT_DELETEAFTERUSE " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_PARAMMASK , { " CK_OBJECT_PARAMMASK " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_BEHAVIORIO_IN , { " CK_BEHAVIORIO_IN " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_BEHAVIORIO_OUT , { " CK_BEHAVIORIO_OUT " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_BEHAVIORIO_ACTIVE , { " CK_BEHAVIORIO_ACTIVE " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_IOTYPEMASK , { " CK_OBJECT_IOTYPEMASK " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_IOMASK , { " CK_OBJECT_IOMASK " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CKBEHAVIORLINK_RESERVED , { " CKBEHAVIORLINK_RESERVED " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CKBEHAVIORLINK_ACTIVATEDLASTFRAME , { " CKBEHAVIORLINK_ACTIVATEDLASTFRAME " } } ,
{ LibCmo : : CK2 : : CK_OBJECT_FLAGS : : CK_OBJECT_BEHAVIORLINKMASK , { " CK_OBJECT_BEHAVIORLINKMASK " } } ,
} ;
const GeneralReflectionArray < LibCmo : : CK2 : : CK_3DENTITY_FLAGS > CK_3DENTITY_FLAGS {
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_DUMMY , { " CK_3DENTITY_DUMMY " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_FRAME , { " CK_3DENTITY_FRAME " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_RESERVED0 , { " CK_3DENTITY_RESERVED0 " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_TARGETLIGHT , { " CK_3DENTITY_TARGETLIGHT " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_TARGETCAMERA , { " CK_3DENTITY_TARGETCAMERA " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_IGNOREANIMATION , { " CK_3DENTITY_IGNOREANIMATION " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_HIERARCHICALOBSTACLE , { " CK_3DENTITY_HIERARCHICALOBSTACLE " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_UPDATELASTFRAME , { " CK_3DENTITY_UPDATELASTFRAME " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_CAMERAIGNOREASPECT , { " CK_3DENTITY_CAMERAIGNOREASPECT " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_DISABLESKINPROCESS , { " CK_3DENTITY_DISABLESKINPROCESS " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_ENABLESKINOFFSET , { " CK_3DENTITY_ENABLESKINOFFSET " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_PLACEVALID , { " CK_3DENTITY_PLACEVALID " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_PARENTVALID , { " CK_3DENTITY_PARENTVALID " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_IKJOINTVALID , { " CK_3DENTITY_IKJOINTVALID " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_PORTAL , { " CK_3DENTITY_PORTAL " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_ZORDERVALID , { " CK_3DENTITY_ZORDERVALID " } } ,
{ LibCmo : : CK2 : : CK_3DENTITY_FLAGS : : CK_3DENTITY_CHARACTERDOPROCESS , { " CK_3DENTITY_CHARACTERDOPROCESS " } } ,
} ;
const GeneralReflectionArray < LibCmo : : CK2 : : CK_TEXTURE_SAVEOPTIONS > CK_TEXTURE_SAVEOPTIONS {
{ LibCmo : : CK2 : : CK_TEXTURE_SAVEOPTIONS : : CKTEXTURE_RAWDATA , { " CKTEXTURE_RAWDATA " } } ,
{ LibCmo : : CK2 : : CK_TEXTURE_SAVEOPTIONS : : CKTEXTURE_EXTERNAL , { " CKTEXTURE_EXTERNAL " } } ,
{ LibCmo : : CK2 : : CK_TEXTURE_SAVEOPTIONS : : CKTEXTURE_IMAGEFORMAT , { " CKTEXTURE_IMAGEFORMAT " } } ,
{ LibCmo : : CK2 : : CK_TEXTURE_SAVEOPTIONS : : CKTEXTURE_USEGLOBAL , { " CKTEXTURE_USEGLOBAL " } } ,
{ LibCmo : : CK2 : : CK_TEXTURE_SAVEOPTIONS : : CKTEXTURE_INCLUDEORIGINALFILE , { " CKTEXTURE_INCLUDEORIGINALFILE " } } ,
} ;
2023-02-08 22:57:31 +08:00
2023-09-22 16:40:10 +08:00
const GeneralReflectionArray < LibCmo : : VxMath : : VX_PIXELFORMAT > VX_PIXELFORMAT {
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : UNKNOWN_PF , { " UNKNOWN_PF " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _32_ARGB8888 , { " _32_ARGB8888 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _32_RGB888 , { " _32_RGB888 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _24_RGB888 , { " _24_RGB888 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _16_RGB565 , { " _16_RGB565 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _16_RGB555 , { " _16_RGB555 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _16_ARGB1555 , { " _16_ARGB1555 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _16_ARGB4444 , { " _16_ARGB4444 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _8_RGB332 , { " _8_RGB332 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _8_ARGB2222 , { " _8_ARGB2222 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _32_ABGR8888 , { " _32_ABGR8888 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _32_RGBA8888 , { " _32_RGBA8888 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _32_BGRA8888 , { " _32_BGRA8888 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _32_BGR888 , { " _32_BGR888 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _24_BGR888 , { " _24_BGR888 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _16_BGR565 , { " _16_BGR565 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _16_BGR555 , { " _16_BGR555 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _16_ABGR1555 , { " _16_ABGR1555 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _16_ABGR4444 , { " _16_ABGR4444 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _DXT1 , { " _DXT1 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _DXT2 , { " _DXT2 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _DXT3 , { " _DXT3 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _DXT4 , { " _DXT4 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _DXT5 , { " _DXT5 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _16_V8U8 , { " _16_V8U8 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _32_V16U16 , { " _32_V16U16 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _16_L6V5U5 , { " _16_L6V5U5 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _32_X8L8V8U8 , { " _32_X8L8V8U8 " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _8_ABGR8888_CLUT , { " _8_ABGR8888_CLUT " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _8_ARGB8888_CLUT , { " _8_ARGB8888_CLUT " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _4_ABGR8888_CLUT , { " _4_ABGR8888_CLUT " } } ,
{ LibCmo : : VxMath : : VX_PIXELFORMAT : : _4_ARGB8888_CLUT , { " _4_ARGB8888_CLUT " } } ,
} ;
const GeneralReflectionArray < LibCmo : : VxMath : : VXTEXTURE_BLENDMODE > VXTEXTURE_BLENDMODE {
{ LibCmo : : VxMath : : VXTEXTURE_BLENDMODE : : VXTEXTUREBLEND_DECAL , { " VXTEXTUREBLEND_DECAL " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_BLENDMODE : : VXTEXTUREBLEND_MODULATE , { " VXTEXTUREBLEND_MODULATE " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_BLENDMODE : : VXTEXTUREBLEND_DECALALPHA , { " VXTEXTUREBLEND_DECALALPHA " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_BLENDMODE : : VXTEXTUREBLEND_MODULATEALPHA , { " VXTEXTUREBLEND_MODULATEALPHA " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_BLENDMODE : : VXTEXTUREBLEND_DECALMASK , { " VXTEXTUREBLEND_DECALMASK " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_BLENDMODE : : VXTEXTUREBLEND_MODULATEMASK , { " VXTEXTUREBLEND_MODULATEMASK " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_BLENDMODE : : VXTEXTUREBLEND_COPY , { " VXTEXTUREBLEND_COPY " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_BLENDMODE : : VXTEXTUREBLEND_ADD , { " VXTEXTUREBLEND_ADD " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_BLENDMODE : : VXTEXTUREBLEND_DOTPRODUCT3 , { " VXTEXTUREBLEND_DOTPRODUCT3 " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_BLENDMODE : : VXTEXTUREBLEND_MAX , { " VXTEXTUREBLEND_MAX " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_BLENDMODE : : VXTEXTUREBLEND_MASK , { " VXTEXTUREBLEND_MASK " } } ,
} ;
const GeneralReflectionArray < LibCmo : : VxMath : : VXTEXTURE_FILTERMODE > VXTEXTURE_FILTERMODE {
{ LibCmo : : VxMath : : VXTEXTURE_FILTERMODE : : VXTEXTUREFILTER_NEAREST , { " VXTEXTUREFILTER_NEAREST " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_FILTERMODE : : VXTEXTUREFILTER_LINEAR , { " VXTEXTUREFILTER_LINEAR " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_FILTERMODE : : VXTEXTUREFILTER_MIPNEAREST , { " VXTEXTUREFILTER_MIPNEAREST " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_FILTERMODE : : VXTEXTUREFILTER_MIPLINEAR , { " VXTEXTUREFILTER_MIPLINEAR " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_FILTERMODE : : VXTEXTUREFILTER_LINEARMIPNEAREST , { " VXTEXTUREFILTER_LINEARMIPNEAREST " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_FILTERMODE : : VXTEXTUREFILTER_LINEARMIPLINEAR , { " VXTEXTUREFILTER_LINEARMIPLINEAR " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_FILTERMODE : : VXTEXTUREFILTER_ANISOTROPIC , { " VXTEXTUREFILTER_ANISOTROPIC " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_FILTERMODE : : VXTEXTUREFILTER_MASK , { " VXTEXTUREFILTER_MASK " } } ,
} ;
const GeneralReflectionArray < LibCmo : : VxMath : : VXBLEND_MODE > VXBLEND_MODE {
{ LibCmo : : VxMath : : VXBLEND_MODE : : VXBLEND_ZERO , { " VXBLEND_ZERO " } } ,
{ LibCmo : : VxMath : : VXBLEND_MODE : : VXBLEND_ONE , { " VXBLEND_ONE " } } ,
{ LibCmo : : VxMath : : VXBLEND_MODE : : VXBLEND_SRCCOLOR , { " VXBLEND_SRCCOLOR " } } ,
{ LibCmo : : VxMath : : VXBLEND_MODE : : VXBLEND_INVSRCCOLOR , { " VXBLEND_INVSRCCOLOR " } } ,
{ LibCmo : : VxMath : : VXBLEND_MODE : : VXBLEND_SRCALPHA , { " VXBLEND_SRCALPHA " } } ,
{ LibCmo : : VxMath : : VXBLEND_MODE : : VXBLEND_INVSRCALPHA , { " VXBLEND_INVSRCALPHA " } } ,
{ LibCmo : : VxMath : : VXBLEND_MODE : : VXBLEND_DESTALPHA , { " VXBLEND_DESTALPHA " } } ,
{ LibCmo : : VxMath : : VXBLEND_MODE : : VXBLEND_INVDESTALPHA , { " VXBLEND_INVDESTALPHA " } } ,
{ LibCmo : : VxMath : : VXBLEND_MODE : : VXBLEND_DESTCOLOR , { " VXBLEND_DESTCOLOR " } } ,
{ LibCmo : : VxMath : : VXBLEND_MODE : : VXBLEND_INVDESTCOLOR , { " VXBLEND_INVDESTCOLOR " } } ,
{ LibCmo : : VxMath : : VXBLEND_MODE : : VXBLEND_SRCALPHASAT , { " VXBLEND_SRCALPHASAT " } } ,
{ LibCmo : : VxMath : : VXBLEND_MODE : : VXBLEND_BOTHSRCALPHA , { " VXBLEND_BOTHSRCALPHA " } } ,
{ LibCmo : : VxMath : : VXBLEND_MODE : : VXBLEND_BOTHINVSRCALPHA , { " VXBLEND_BOTHINVSRCALPHA " } } ,
{ LibCmo : : VxMath : : VXBLEND_MODE : : VXBLEND_MASK , { " VXBLEND_MASK " } } ,
} ;
const GeneralReflectionArray < LibCmo : : VxMath : : VXTEXTURE_ADDRESSMODE > VXTEXTURE_ADDRESSMODE {
{ LibCmo : : VxMath : : VXTEXTURE_ADDRESSMODE : : VXTEXTURE_ADDRESSWRAP , { " VXTEXTURE_ADDRESSWRAP " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_ADDRESSMODE : : VXTEXTURE_ADDRESSMIRROR , { " VXTEXTURE_ADDRESSMIRROR " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_ADDRESSMODE : : VXTEXTURE_ADDRESSCLAMP , { " VXTEXTURE_ADDRESSCLAMP " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_ADDRESSMODE : : VXTEXTURE_ADDRESSBORDER , { " VXTEXTURE_ADDRESSBORDER " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_ADDRESSMODE : : VXTEXTURE_ADDRESSMIRRORONCE , { " VXTEXTURE_ADDRESSMIRRORONCE " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_ADDRESSMODE : : VXTEXTURE_ADDRESSMASK , { " VXTEXTURE_ADDRESSMASK " } } ,
} ;
const GeneralReflectionArray < LibCmo : : VxMath : : VXFILL_MODE > VXFILL_MODE {
{ LibCmo : : VxMath : : VXFILL_MODE : : VXFILL_POINT , { " VXFILL_POINT " } } ,
{ LibCmo : : VxMath : : VXFILL_MODE : : VXFILL_WIREFRAME , { " VXFILL_WIREFRAME " } } ,
{ LibCmo : : VxMath : : VXFILL_MODE : : VXFILL_SOLID , { " VXFILL_SOLID " } } ,
{ LibCmo : : VxMath : : VXFILL_MODE : : VXFILL_MASK , { " VXFILL_MASK " } } ,
} ;
const GeneralReflectionArray < LibCmo : : VxMath : : VXSHADE_MODE > VXSHADE_MODE {
{ LibCmo : : VxMath : : VXSHADE_MODE : : VXSHADE_FLAT , { " VXSHADE_FLAT " } } ,
{ LibCmo : : VxMath : : VXSHADE_MODE : : VXSHADE_GOURAUD , { " VXSHADE_GOURAUD " } } ,
{ LibCmo : : VxMath : : VXSHADE_MODE : : VXSHADE_PHONG , { " VXSHADE_PHONG " } } ,
{ LibCmo : : VxMath : : VXSHADE_MODE : : VXSHADE_MASK , { " VXSHADE_MASK " } } ,
} ;
const GeneralReflectionArray < LibCmo : : VxMath : : VXCMPFUNC > VXCMPFUNC {
{ LibCmo : : VxMath : : VXCMPFUNC : : VXCMP_NEVER , { " VXCMP_NEVER " } } ,
{ LibCmo : : VxMath : : VXCMPFUNC : : VXCMP_LESS , { " VXCMP_LESS " } } ,
{ LibCmo : : VxMath : : VXCMPFUNC : : VXCMP_EQUAL , { " VXCMP_EQUAL " } } ,
{ LibCmo : : VxMath : : VXCMPFUNC : : VXCMP_LESSEQUAL , { " VXCMP_LESSEQUAL " } } ,
{ LibCmo : : VxMath : : VXCMPFUNC : : VXCMP_GREATER , { " VXCMP_GREATER " } } ,
{ LibCmo : : VxMath : : VXCMPFUNC : : VXCMP_NOTEQUAL , { " VXCMP_NOTEQUAL " } } ,
{ LibCmo : : VxMath : : VXCMPFUNC : : VXCMP_GREATEREQUAL , { " VXCMP_GREATEREQUAL " } } ,
{ LibCmo : : VxMath : : VXCMPFUNC : : VXCMP_ALWAYS , { " VXCMP_ALWAYS " } } ,
{ LibCmo : : VxMath : : VXCMPFUNC : : VXCMP_MASK , { " VXCMP_MASK " } } ,
} ;
const GeneralReflectionArray < LibCmo : : VxMath : : VX_EFFECT > VX_EFFECT {
{ LibCmo : : VxMath : : VX_EFFECT : : VXEFFECT_NONE , { " VXEFFECT_NONE " } } ,
{ LibCmo : : VxMath : : VX_EFFECT : : VXEFFECT_TEXGEN , { " VXEFFECT_TEXGEN " } } ,
{ LibCmo : : VxMath : : VX_EFFECT : : VXEFFECT_TEXGENREF , { " VXEFFECT_TEXGENREF " } } ,
{ LibCmo : : VxMath : : VX_EFFECT : : VXEFFECT_BUMPENV , { " VXEFFECT_BUMPENV " } } ,
{ LibCmo : : VxMath : : VX_EFFECT : : VXEFFECT_DP3 , { " VXEFFECT_DP3 " } } ,
{ LibCmo : : VxMath : : VX_EFFECT : : VXEFFECT_2TEXTURES , { " VXEFFECT_2TEXTURES " } } ,
{ LibCmo : : VxMath : : VX_EFFECT : : VXEFFECT_3TEXTURES , { " VXEFFECT_3TEXTURES " } } ,
{ LibCmo : : VxMath : : VX_EFFECT : : VXEFFECT_MASK , { " VXEFFECT_MASK " } } ,
} ;
const GeneralReflectionArray < LibCmo : : VxMath : : VX_MOVEABLE_FLAGS > VX_MOVEABLE_FLAGS {
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_PICKABLE , { " VX_MOVEABLE_PICKABLE " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_VISIBLE , { " VX_MOVEABLE_VISIBLE " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_UPTODATE , { " VX_MOVEABLE_UPTODATE " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_RENDERCHANNELS , { " VX_MOVEABLE_RENDERCHANNELS " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_USERBOX , { " VX_MOVEABLE_USERBOX " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_EXTENTSUPTODATE , { " VX_MOVEABLE_EXTENTSUPTODATE " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_BOXVALID , { " VX_MOVEABLE_BOXVALID " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_RENDERLAST , { " VX_MOVEABLE_RENDERLAST " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_HASMOVED , { " VX_MOVEABLE_HASMOVED " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_WORLDALIGNED , { " VX_MOVEABLE_WORLDALIGNED " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_NOZBUFFERWRITE , { " VX_MOVEABLE_NOZBUFFERWRITE " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_RENDERFIRST , { " VX_MOVEABLE_RENDERFIRST " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_NOZBUFFERTEST , { " VX_MOVEABLE_NOZBUFFERTEST " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_INVERSEWORLDMATVALID , { " VX_MOVEABLE_INVERSEWORLDMATVALID " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_DONTUPDATEFROMPARENT , { " VX_MOVEABLE_DONTUPDATEFROMPARENT " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_INDIRECTMATRIX , { " VX_MOVEABLE_INDIRECTMATRIX " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_ZBUFONLY , { " VX_MOVEABLE_ZBUFONLY " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_STENCILONLY , { " VX_MOVEABLE_STENCILONLY " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_HIERARCHICALHIDE , { " VX_MOVEABLE_HIERARCHICALHIDE " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_CHARACTERRENDERED , { " VX_MOVEABLE_CHARACTERRENDERED " } } ,
{ LibCmo : : VxMath : : VX_MOVEABLE_FLAGS : : VX_MOVEABLE_RESERVED2 , { " VX_MOVEABLE_RESERVED2 " } } ,
} ;
const GeneralReflectionArray < LibCmo : : VxMath : : VXMESH_FLAGS > VXMESH_FLAGS {
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_BOUNDINGUPTODATE , { " VXMESH_BOUNDINGUPTODATE " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_VISIBLE , { " VXMESH_VISIBLE " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_OPTIMIZED , { " VXMESH_OPTIMIZED " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_RENDERCHANNELS , { " VXMESH_RENDERCHANNELS " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_HASTRANSPARENCY , { " VXMESH_HASTRANSPARENCY " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_PRELITMODE , { " VXMESH_PRELITMODE " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_WRAPU , { " VXMESH_WRAPU " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_WRAPV , { " VXMESH_WRAPV " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_FORCETRANSPARENCY , { " VXMESH_FORCETRANSPARENCY " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_TRANSPARENCYUPTODATE , { " VXMESH_TRANSPARENCYUPTODATE " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_UV_CHANGED , { " VXMESH_UV_CHANGED " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_NORMAL_CHANGED , { " VXMESH_NORMAL_CHANGED " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_COLOR_CHANGED , { " VXMESH_COLOR_CHANGED " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_POS_CHANGED , { " VXMESH_POS_CHANGED " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_HINTDYNAMIC , { " VXMESH_HINTDYNAMIC " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_GENNORMALS , { " VXMESH_GENNORMALS " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_PROCEDURALUV , { " VXMESH_PROCEDURALUV " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_PROCEDURALPOS , { " VXMESH_PROCEDURALPOS " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_STRIPIFY , { " VXMESH_STRIPIFY " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_MONOMATERIAL , { " VXMESH_MONOMATERIAL " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_PM_BUILDNORM , { " VXMESH_PM_BUILDNORM " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_BWEIGHTS_CHANGED , { " VXMESH_BWEIGHTS_CHANGED " } } ,
{ LibCmo : : VxMath : : VXMESH_FLAGS : : VXMESH_ALLFLAGS , { " VXMESH_ALLFLAGS " } } ,
} ;
const GeneralReflectionArray < LibCmo : : VxMath : : VXTEXTURE_WRAPMODE > VXTEXTURE_WRAPMODE {
{ LibCmo : : VxMath : : VXTEXTURE_WRAPMODE : : VXTEXTUREWRAP_NONE , { " VXTEXTUREWRAP_NONE " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_WRAPMODE : : VXTEXTUREWRAP_U , { " VXTEXTUREWRAP_U " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_WRAPMODE : : VXTEXTUREWRAP_V , { " VXTEXTUREWRAP_V " } } ,
{ LibCmo : : VxMath : : VXTEXTURE_WRAPMODE : : VXTEXTUREWRAP_UV , { " VXTEXTUREWRAP_UV " } } ,
} ;
2023-02-08 22:57:31 +08:00
}
2023-08-26 20:34:51 +08:00
# pragma endregion
2023-02-08 22:57:31 +08:00
}