Team Fortress 2 Source Code as on 22/4/2020
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 Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#ifndef PHYSICS_FLUID_H
#define PHYSICS_FLUID_H
#pragma once
#include "vphysics_interface.h"
class IVP_Compact_Surface; class IVP_Environment; class IVP_Listener_Phantom; class CBuoyancyAttacher; class IVP_Liquid_Surface_Descriptor; class CPhysicsObject; class CPhysicsObject;
class CPhysicsFluidController : public IPhysicsFluidController { public: CPhysicsFluidController( CBuoyancyAttacher *pBuoy, IVP_Liquid_Surface_Descriptor *pLiquid, CPhysicsObject *pObject, int nContents ); ~CPhysicsFluidController( void );
virtual void SetGameData( void *pGameData ); virtual void *GetGameData( void ) const; virtual void GetSurfacePlane( Vector *pNormal, float *pDist ) const; virtual float GetDensity() const; virtual void WakeAllSleepingObjects(); virtual int GetContents() const;
class IVP_Real_Object *GetIVPObject(); const class IVP_Real_Object *GetIVPObject() const;
private: CBuoyancyAttacher *m_pBuoyancy; IVP_Liquid_Surface_Descriptor *m_pLiquidSurface; CPhysicsObject *m_pObject; int m_nContents; void *m_pGameData; };
extern CPhysicsFluidController *CreateFluidController( IVP_Environment *pEnvironment, CPhysicsObject *pFluidObject, fluidparams_t *pParams );
#endif // PHYSICS_FLUID_H
|