thug/Code/Gel/objserv.h

117 lines
3.7 KiB
C
Raw Normal View History

2016-02-13 21:39:12 +00:00
/*****************************************************************************
** **
** Neversoft Entertainment **
** **
** Copyright (C) 1999 - All Rights Reserved **
** **
******************************************************************************
** **
** Project: GEL (Game Engine Library) **
** **
** Module: Base Object-Server (OS) **
** **
** File name: gel/server/os_cb.h **
** **
** Created: 07/23/99 - mjb **
** **
*****************************************************************************/
#ifndef __GEL_OBJSERV_H
#define __GEL_OBJSERV_H
/*****************************************************************************
** Includes **
*****************************************************************************/
#ifndef __CORE_DEFINES_H
#include <core/defines.h>
#endif
#include <core/task.h>
#include <core/list.h>
/*****************************************************************************
** Defines **
*****************************************************************************/
namespace ObjServ
{
/*****************************************************************************
** Class Definitions **
*****************************************************************************/
class Object : public Spt::Class
{
public:
virtual ~Object( void ) {}
protected:
Object( void ) {}
};
/******************************************************************/
/* */
/* */
/******************************************************************/
class Server : public Spt::Class
{
public:
virtual void ProcessAllObjects ( void ) = 0;
virtual void RegisterObject( Object *object ) = 0;
virtual ~Server( void ) {}
protected:
Server( void ) {}
};
/******************************************************************/
/* */
/* */
/******************************************************************/
/*****************************************************************************
** Private Declarations **
*****************************************************************************/
/*****************************************************************************
** Private Prototypes **
*****************************************************************************/
/*****************************************************************************
** Public Declarations **
*****************************************************************************/
/*****************************************************************************
** Public Prototypes **
*****************************************************************************/
/*****************************************************************************
** Inline Functions **
*****************************************************************************/
/******************************************************************/
/* */
/* */
/******************************************************************/
} // namespace ObjServ
#endif // __GEL_OBJSERV_H