//========= Copyright Valve Corporation, All rights reserved. ============// // // Purpose: // //=============================================================================// #ifndef SAVERESTORE_UTLCLASS_H #define SAVERESTORE_UTLCLASS_H #if defined(_WIN32) #pragma once #endif //------------------------------------- template class CTypedescDeducer { public: template static datamap_t *Deduce(UTLCLASS *p) { return NULL; } }; template <> class CTypedescDeducer { public: template static datamap_t *Deduce(UTLCLASS *p) { return &UTLCLASS::ElemType_t::m_DataMap; } }; #define UTLCLASS_SAVERESTORE_VALIDATE_TYPE(type) \ COMPILE_TIME_ASSERT( \ type == FIELD_FLOAT || type == FIELD_STRING || \ type == FIELD_CLASSPTR || type == FIELD_EHANDLE || \ type == FIELD_EDICT || type == FIELD_VECTOR || \ type == FIELD_QUATERNION || type == FIELD_POSITION_VECTOR || \ type == FIELD_INTEGER || type == FIELD_BOOLEAN || \ type == FIELD_SHORT || type == FIELD_CHARACTER || \ type == FIELD_TIME || type == FIELD_TICK || type == FIELD_MODELNAME || \ type == FIELD_SOUNDNAME || type == FIELD_COLOR32 || \ type == FIELD_EMBEDDED || type == FIELD_MODELINDEX || \ type == FIELD_MATERIALINDEX) //------------------------------------- #endif // SAVERESTORE_UTLCLASS_H