DDraceNetwork Documentation
Loading...
Searching...
No Matches
engine.h
Go to the documentation of this file.
1
/* (c) Magnus Auvinen. See licence.txt in the root of the distribution for more information. */
2
/* If you are missing that file, acquire a complete release at teeworlds.com. */
3
#ifndef ENGINE_ENGINE_H
4
#define ENGINE_ENGINE_H
5
6
#include "
kernel.h
"
7
8
#include <memory>
9
10
class
CFutureLogger
;
11
class
IJob
;
12
class
ILogger
;
13
14
class
IEngine
:
public
IInterface
15
{
16
MACRO_INTERFACE
(
"engine"
)
17
18
public
:
19
virtual
~
IEngine
() =
default
;
20
21
virtual
void
Init
() = 0;
22
virtual
void
AddJob
(std::
shared_ptr
<
IJob
>
pJob
) = 0;
23
virtual
void
ShutdownJobs
() = 0;
24
virtual
void
SetAdditionalLogger
(std::
shared_ptr
<
ILogger
> &&
pLogger
) = 0;
25
};
26
27
extern
IEngine
*
CreateEngine
(
const
char
*
pAppname
, std::
shared_ptr
<
CFutureLogger
>
pFutureLogger
);
28
extern
IEngine
*
CreateTestEngine
(
const
char
*
pAppname
);
29
30
#endif
CFutureLogger
Definition
logger.h:234
IEngine
Definition
engine.h:15
IEngine::AddJob
virtual void AddJob(std::shared_ptr< IJob > pJob)=0
IEngine::SetAdditionalLogger
virtual void SetAdditionalLogger(std::shared_ptr< ILogger > &&pLogger)=0
IEngine::ShutdownJobs
virtual void ShutdownJobs()=0
IEngine::Init
virtual void Init()=0
IInterface
Definition
kernel.h:10
IJob
Definition
jobs.h:20
ILogger
Definition
logger.h:68
vector2_base
Definition
vmath.h:15
CreateTestEngine
IEngine * CreateTestEngine(const char *pAppname)
Definition
engine.cpp:116
CreateEngine
IEngine * CreateEngine(const char *pAppname, std::shared_ptr< CFutureLogger > pFutureLogger)
Definition
engine.cpp:115
kernel.h
MACRO_INTERFACE
#define MACRO_INTERFACE(Name)
Definition
kernel.h:25
src
engine
engine.h
Generated by
1.9.8