Counter Strike : Global Offensive Source Code
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//========= Copyright � 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
//=============================================================================//
#ifndef IVP_H
#define IVP_H
#ifdef _WIN32
#pragma once
#endif
#include "utlvector.h"
class CPhysCollide; class CTextBuffer; class IPhysicsCollision; extern IPhysicsCollision *physcollision;
// a list of all of the materials in the world model
extern int RemapWorldMaterial( int materialIndexIn );
class CPhysCollisionEntry { public: CPhysCollisionEntry( CPhysCollide *pCollide );
virtual void WriteToTextBuffer( CTextBuffer *pTextBuffer, int modelIndex, int collideIndex ) = 0; virtual void DumpCollide( CTextBuffer *pTextBuffer, int modelIndex, int collideIndex ) = 0; unsigned int GetCollisionBinarySize(); unsigned int WriteCollisionBinary( char *pDest );
protected: void DumpCollideFileName( const char *pName, int modelIndex, CTextBuffer *pTextBuffer );
protected: CPhysCollide *m_pCollide; };
class CPhysCollisionEntryStaticMesh : public CPhysCollisionEntry { public: CPhysCollisionEntryStaticMesh( CPhysCollide *pCollide, const char *pMaterialName );
virtual void WriteToTextBuffer( CTextBuffer *pTextBuffer, int modelIndex, int collideIndex ); virtual void DumpCollide( CTextBuffer *pTextBuffer, int modelIndex, int collideIndex );
private: const char *m_pMaterial; };
class CTextBuffer { public: CTextBuffer( void ); ~CTextBuffer( void ); inline int GetSize( void ) { return m_buffer.Count(); } inline char *GetData( void ) { return m_buffer.Base(); } void WriteText( const char *pText ); void WriteIntKey( const char *pKeyName, int outputData ); void WriteStringKey( const char *pKeyName, const char *outputData ); void WriteFloatKey( const char *pKeyName, float outputData ); void WriteFloatArrayKey( const char *pKeyName, const float *outputData, int count );
void CopyStringQuotes( const char *pString ); void Terminate( void ); private: void CopyData( const char *pData, int len ); CUtlVector<char> m_buffer; };
#endif // IVP_H
|