VR-Forces Development_Version Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vrfmodel
subSurfaceDepthController.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2013 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
8
10
#pragma once
11
12
#include "
vrfobjcore/singleTaskControllerComponent.h
"
13
14
class
DtVrfMovingObjectStateRepository
;
15
class
DtSubSurfaceEntityParameters
;
16
class
DtAnalogOutputPort
;
17
class
DtSurfaceMovementPSR
;
18
19
enum
20
{
21
DEPTH_TYPE_SURFACE
= 0,
22
DEPTH_TYPE_PERISCOPE
= 1,
23
DEPTH_TYPE_MAX
= 2,
24
DEPTH_TYPE_BOTTOM
= 3,
25
DEPTH_TYPE_SPECIFIED
= 4
26
};
27
31
#include "
vrfmodel/vrfmodelDefines.h
"
32
class
DT_DLL_vrfmodel
DtSubSurfaceDepthController
:
33
public
DtSingleTaskControllerComponent
34
{
35
36
public
:
37
43
DtSubSurfaceDepthController
(
const
DtString
& name,
44
DtVrfObject
* owner,
45
DtSimManager
* simManager,
46
DtComponentDescriptor
* desc = 0,
47
DtReaderWriterRegistry
* parentRegistry = 0);
48
52
virtual
~
DtSubSurfaceDepthController
();
53
56
virtual
const
char
*
type
()
const
;
57
60
virtual
bool
init
();
61
62
static
void
gotoDepthCallback(
DtSimMessage
* msg,
void
* usr);
63
64
virtual
void
processGotoDepthTask(
DtSimMessage
* msg);
65
66
virtual
void
registerTaskMsgCallbacks
();
67
70
virtual
void
tick
();
71
74
virtual
double
entityDepth();
75
78
82
static
DtSimComponent
* creator(
const
DtString
& name,
83
DtVrfObject
* owner,
84
DtSimManager
* simManager,
85
DtComponentDescriptor
* desc = 0,
86
DtReaderWriterRegistry
* parentRegistry = 0);
87
88
89
protected
:
90
92
virtual
bool
createPorts
();
93
95
virtual
void
clearTask
();
96
104
virtual
void
lookupAndCacheProcessSR();
105
109
virtual
bool
postAddComponentsInit
();
110
111
private
:
112
114
DtSubSurfaceDepthController
();
115
117
DtSubSurfaceDepthController
(
118
const
DtSubSurfaceDepthController
& orig);
119
121
const
DtSubSurfaceDepthController
&
operator=
(
122
const
DtSubSurfaceDepthController
& orig);
123
124
125
protected
:
126
127
DtVrfMovingObjectStateRepository
*
myEntityState
;
128
131
133
DtSurfaceMovementPSR
*
myProcessState
;
134
136
const
DtSubSurfaceEntityParameters
*
myParameters
;
137
144
145
154
DtAnalogOutputPort
*
myDepthRatePort
;
155
162
DtAnalogOutputPort
*
myClampDepthPort
;
164
};
Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (
www.mak.com
)