mirror of
https://github.com/alliedmodders/hl2sdk.git
synced 2024-12-22 17:47:38 +08:00
42 lines
1.0 KiB
C
42 lines
1.0 KiB
C
|
//========= 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
|