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.
 
 
 
 
 
 

86 lines
1.9 KiB

//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $Workfile: $
// $Date: $
//
//-----------------------------------------------------------------------------
// $Log: $
//
// $NoKeywords: $
//=============================================================================//
#if !defined( EVENT_SYSTEM_H )
#define EVENT_SYSTEM_H
#ifdef _WIN32
#pragma once
#endif
#include "event_flags.h"
#include "common.h"
#include "enginesingleuserfilter.h"
#include "ents_shared.h"
class SendTable;
class ClientClass;
//-----------------------------------------------------------------------------
// Purpose:
//-----------------------------------------------------------------------------
class CEventInfo
{
public:
enum
{
EVENT_INDEX_BITS = 8,
EVENT_DATA_LEN_BITS = 11,
MAX_EVENT_DATA = 192, // ( 1<<8 bits == 256, but only using 192 below )
};
inline CEventInfo()
{
classID = 0;
fire_delay = 0.0f;
flags = 0;
pSendTable = NULL;
pClientClass = NULL;
m_Packed = SERIALIZED_ENTITY_HANDLE_INVALID;
}
~CEventInfo()
{
g_pSerializedEntities->ReleaseSerializedEntity( m_Packed );
}
CEventInfo( const CEventInfo& src )
{
m_Packed = g_pSerializedEntities->CopySerializedEntity( src.m_Packed, __FILE__, __LINE__ );
classID = src.classID;
fire_delay = src.fire_delay;
flags = src.flags;
pSendTable = src.pSendTable;
pClientClass = src.pClientClass;
filter.AddPlayersFromFilter( &src.filter );
}
// 0 implies not in use
short classID;
// If non-zero, the delay time when the event should be fired ( fixed up on the client )
float fire_delay;
// send table pointer or NULL if send as full update
const SendTable *pSendTable;
const ClientClass *pClientClass;
SerializedEntityHandle_t m_Packed;
// CLIENT ONLY Reliable or not, etc.
int flags;
// clients that see that event
CEngineRecipientFilter filter;
};
#endif // EVENT_SYSTEM_H