VR-Forces 4.1 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
include
vrfVrlSharedSource
vrfDriverFactory.h
Go to the documentation of this file.
1
/******************************************************************************
2
** Copyright (c) 2010 MAK Technologies, Inc.
3
** All rights reserved.
4
******************************************************************************/
5
/******************************************************************************
6
** $RCSfile: vrfDriverFactory.h,v $ $Revision: 1.1 $ $State: Exp $
7
******************************************************************************/
8
11
14
15
#pragma once
16
17
#if DtDIS
18
#include <
vrfDis/vrfDis.h
>
19
#elif DtHLA
20
#ifndef DtHLA_1516
21
#include <
vrfHla13/vrfHla13.h
>
22
#else
23
#ifdef DtHLA_1516_EVOLVED
24
#include <
vrfHla1516e/vrfHla1516e.h
>
25
#else
26
#include <
vrfHla1516/vrfHla1516.h
>
27
#endif
28
#endif
29
#endif
30
31
#include <
vrfVrlSharedSource/DtVrfDriver.h
>
32
33
#include <boost/function.hpp>
34
35
class
DtVrfRemoteController
;
36
class
DtVrfMessageInterface
;
37
38
namespace
makVrv
39
{
40
namespace
DT_PROTOCOL_NAMESPACE
41
{
42
class
DtVrlinkConnection;
43
}
44
}
45
46
namespace
makVrf
47
{
48
namespace
VRF_PROTOCOL_NAMESPACE
49
{
50
class
DtVrfFogOfWarHandler
;
51
52
typedef
boost::function<DtVrfRemoteController* (void)>
VrfRemoteControllerCreatorFcn
;
53
typedef
boost::function<DtVrfMessageInterface* (makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection*)>
54
VrfMessageInterfaceCreatorFcn
;
55
typedef
boost::function<
DtVrfFogOfWarHandler
* (
DtVrfDriver
*,
56
makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection
* c)>
VrfFogOfWarHandlerCreatorFcn
;
57
58
class
VRF_PROTOCOL_EXPORT
DtVrfDriverFactory
59
{
60
public
:
62
static
DtVrfRemoteController
* createRemoteController();
63
static
void
setRemoteControllerCreatorFcn(
VrfRemoteControllerCreatorFcn
);
64
static
VrfRemoteControllerCreatorFcn
remoteControllerCreatorFcn();
65
static
DtVrfRemoteController
* defaultRemoteControllerCreatorFcn();
66
68
static
DtVrfMessageInterface
* createMessageInterface(
makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection
*);
69
static
void
setMessageInterfaceCreatorFcn(
VrfMessageInterfaceCreatorFcn
);
70
static
VrfMessageInterfaceCreatorFcn
messageInterfaceCreatorFcn();
71
static
DtVrfMessageInterface
* defaultMessageInterfaceCreatorFcn(
makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection
*);
72
74
static
DtVrfFogOfWarHandler
* createFogOfWarHandler(
DtVrfDriver
*,
75
makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection
* c);
76
static
void
setFogOfWarHandlerCreatorFcn(
VrfFogOfWarHandlerCreatorFcn
);
77
static
VrfFogOfWarHandlerCreatorFcn
fogOfWarHandlerCreatorFcn();
78
static
DtVrfFogOfWarHandler
* defaultFogOfWarHandlerCreatorFcn(
DtVrfDriver
*,
79
makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection
*);
80
81
protected
:
82
static
VrfRemoteControllerCreatorFcn
myRemoteControllerCreatorFcn
;
83
static
VrfMessageInterfaceCreatorFcn
myMessageInterfaceCreatorFcn
;
84
static
VrfFogOfWarHandlerCreatorFcn
myFogOfWarHandlerCreatorFcn
;
85
};
86
}
87
}
Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (
www.mak.com
)