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.
42 lines
993 B
42 lines
993 B
5 years ago
|
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||
|
//
|
||
|
// Purpose:
|
||
|
//
|
||
|
// $NoKeywords: $
|
||
|
//===========================================================================//
|
||
|
|
||
|
#ifndef ICLIENTUNKNOWN_H
|
||
|
#define ICLIENTUNKNOWN_H
|
||
|
#ifdef _WIN32
|
||
|
#pragma once
|
||
|
#endif
|
||
|
|
||
|
|
||
|
#include "tier0/platform.h"
|
||
|
#include "ihandleentity.h"
|
||
|
|
||
|
class IClientNetworkable;
|
||
|
class C_BaseEntity;
|
||
|
class IClientRenderable;
|
||
|
class ICollideable;
|
||
|
class IClientEntity;
|
||
|
class IClientThinkable;
|
||
|
|
||
|
|
||
|
|
||
|
// This is the client's version of IUnknown. We may want to use a QueryInterface-like
|
||
|
// mechanism if this gets big.
|
||
|
abstract_class IClientUnknown : public IHandleEntity
|
||
|
{
|
||
|
public:
|
||
|
virtual ICollideable* GetCollideable() = 0;
|
||
|
virtual IClientNetworkable* GetClientNetworkable() = 0;
|
||
|
virtual IClientRenderable* GetClientRenderable() = 0;
|
||
|
virtual IClientEntity* GetIClientEntity() = 0;
|
||
|
virtual C_BaseEntity* GetBaseEntity() = 0;
|
||
|
virtual IClientThinkable* GetClientThinkable() = 0;
|
||
|
};
|
||
|
|
||
|
|
||
|
#endif // ICLIENTUNKNOWN_H
|