//========= Copyright Valve Corporation, All rights reserved. ============// // // Purpose: // // $NoKeywords: $ // //=============================================================================// #ifndef DATATABLE_SHARED_H #define DATATABLE_SHARED_H #ifdef _WIN32 #pragma once #endif #include "dt_common.h" // ------------------------------------------------------------------------ // // Client version // ------------------------------------------------------------------------ // #if defined (CLIENT_DLL) #include "dt_recv.h" #define PROPINFO(varName) RECVINFO(varName) #define PROPINFO_DT(varName) RECVINFO_DT(varName) #define PROPINFO_DT_NAME(varName, remoteVarName) RECVINFO_DTNAME(varName,remoteVarName) #define PROPINFO_NAME(varName,remoteVarName) RECVINFO_NAME(varName, remoteVarName) #define DataTableProp RecvProp #endif // ------------------------------------------------------------------------ // // Server version // ------------------------------------------------------------------------ // #if !defined (CLIENT_DLL) #include "dt_send.h" #define PROPINFO(varName) SENDINFO(varName) #define PROPINFO_DT(varName) SENDINFO_DT(varName) #define PROPINFO_DT_NAME(varName, remoteVarName) SENDINFO_DT_NAME(varName, remoteVarName) #define PROPINFO_NAME(varName,remoteVarName) SENDINFO_NAME(varName,remoteVarName) #define DataTableProp SendProp #endif // Use these functions to setup your data tables. DataTableProp PropFloat( char *pVarName, // Variable name. int offset, // Offset into container structure. int sizeofVar=SIZEOF_IGNORE, int nBits=32, // Number of bits to use when encoding. int flags=0, float fLowValue=0.0f, // For floating point, low and high values. float fHighValue=HIGH_DEFAULT // High value. If HIGH_DEFAULT, it's (1<<nBits). ); DataTableProp PropVector( char *pVarName, int offset, int sizeofVar=SIZEOF_IGNORE, int nBits=32, // Number of bits (for each floating-point component) to use when encoding. int flags=SPROP_NOSCALE, float fLowValue=0.0f, // For floating point, low and high values. float fHighValue=HIGH_DEFAULT // High value. If HIGH_DEFAULT, it's (1<<nBits). ); DataTableProp PropAngle( char *pVarName, int offset, int sizeofVar=SIZEOF_IGNORE, int nBits=32, int flags=0 ); DataTableProp PropInt( char *pVarName, int offset, int sizeofVar=SIZEOF_IGNORE, // Handled by SENDINFO macro. int nBits=-1, // Set to -1 to automatically pick (max) number of bits based on size of element. int flags=0, int rightShift=0 ); DataTableProp PropString( char *pVarName, int offset, int bufferLen, int flags=0 ); DataTableProp PropEHandle( char *pVarName, int offset, int sizeofVar=SIZEOF_IGNORE ); #endif // DATATABLE_SHARED_H