VR-Forces 4.7 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
vrfLua
luaEmbarkationSlotReservationJob.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2018 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
6
#pragma once
7
8
#include "
vrfLua/vrfLuaDefines.h
"
9
#include "
vrfLua/luaAsyncJob.h
"
10
#include "
vrfobjcore/vrfObject.h
"
11
#include "
vrfutil/scriptGeometry.h
"
12
#include "
vrfutil/asciiSerializable.h
"
13
#include "
vrfutil/algorithmManager.h
"
14
15
#include "vlutil/vlMutex.h"
16
17
#include <luabind/luabind.hpp>
18
19
#include <boost/scoped_ptr.hpp>
20
21
class
DtSimManager
;
22
class
DtSimMessage
;
23
25
class
DT_DLL_vrfLua
DtLuaEmbarkationSlotReservationJob
:
public
DtLuaAsyncJob
26
{
27
public
:
28
typedef
std::vector<DtLocation3D>
Points
;
29
30
static
boost::shared_ptr<DtLuaEmbarkationSlotReservationJob> Make(
31
DtSimManager
* mgr,
32
DtSharedVrfObjectReference
embarkingObject,
33
DtSharedVrfObjectReference
objectToEmbarkedOn,
34
int
slotNumber);
35
37
DtLuaEmbarkationSlotReservationJob
();
38
40
~
DtLuaEmbarkationSlotReservationJob
();
41
43
luabind::object
getObject
(lua_State* L,
int
& index, std::string& message);
44
46
luabind::object
getDebugObject
(lua_State* L) {
return
luabind::newtable(L);}
47
49
virtual
void
cancel
(lua_State* L) {};
50
52
static
void
responseCallback(
DtSimMessage
* msg,
void
* usr);
53
virtual
void
processResponse(
DtSimMessage
* msg);
54
58
59
static
DtAsciiSerializable
* creator();
60
61
DtString
serialize
();
62
bool
deserialize
(
const
DtString
&);
63
DtString
objectType
()
const
;
64
65
boost::shared_ptr<DtLuaEmbarkationSlotReservationJob> shared_from_this();
66
boost::shared_ptr<const DtLuaEmbarkationSlotReservationJob> shared_from_this()
const
;
67
68
protected
:
69
70
static
int
nextRequestId()
71
{
72
static
int
theRequestId = 0;
73
74
return
++theRequestId;
75
}
76
77
class
PathTask;
78
friend
class
PathTask;
79
81
DtLuaEmbarkationSlotReservationJob
(
82
DtSimManager
* mgr,
83
DtSharedVrfObjectReference
embarkingObject,
84
DtSharedVrfObjectReference
objectToEmbarkedOn,
85
int
slotNumber);
86
87
void
start();
88
90
void
taskComplete();
91
92
DtSharedVrfObjectReference
myEmbarkingObject
;
93
DtSharedVrfObjectReference
myObjectToEmbarkOn
;
94
int
mySlotNumber
;
95
96
int
myRequestId
;
97
98
bool
myGotResponse
;
99
bool
mySlotAvailable
;
100
DtTaitBryan
myOrientation
;
101
DtVector
myPosition
;
102
103
typedef
DtMutex
Mutex
;
104
105
mutable
Mutex
myMutex
;
106
};
Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (
www.mak.com
)