21 #include <matrix/vlVector.h>
23 #include <boost/unordered_map.hpp>
27 class DtOsgArticulatedModel;
28 class DtTaxiwaySignParser;
29 class DtTextureAtlasIndexParser;
32 class DtTaxiwaySignSignaler;
97 typedef boost::unordered_map<DtUniqueID, DtOsgArticulatedModel* >
100 typedef boost::unordered_map<DtUniqueID, std::vector<DtOsgArticulatedModel*> >
103 typedef boost::unordered_map<DtUniqueID, DtSceneObject* >
132 virtual void slot_RunwayCreated(
DtRunwayData& runwayData);
136 virtual void slot_RunwayDestroyed(
DtRunwayData& runwayData);
139 virtual std::size_t hashPos(
DtVector& pos);
147 const std::string& atlasFileName,
const std::string& text);
151 virtual void setModelDefinitionForSize(
unsigned int size,
const std::string& modelDef);
155 virtual void clearModelDefinitionForSize(
unsigned int size);
159 virtual void setDefaultModelDefinition(
const std::string& modelDef);
165 virtual void setSignMaxSegments(
unsigned int maxSegments);
168 virtual void setSignCharactersPerSegment(
unsigned int charsPerSegment);
172 virtual void setTaxiwaySignUVOffsets(
174 unsigned int numChars);
179 virtual bool setMaxSignLimits(
unsigned int& numSegments,
unsigned int& numChars);
183 virtual void updateTaxiwaySignManager(
const float budget);
191 virtual void createRunwaySigns(
DtRunwayData& runwayData,
192 const RunwaySignType signType,
const RunwaySignPlacement signPlacement);
194 virtual void createAndPlaceHalfwayRunwayDistanceSign(
195 const DtRunwayData &runwayData,
const double signWidthOffset,
196 const RunwaySignPlacement signPlacement,
DtUniqueID runwayID);
200 virtual void extractRunwayStartAndForward(
const DtRunwayData &runwayData,
202 const RunwaySignPlacement signPlacement);
205 virtual void generateSignLocationsAndStrings(std::vector<DtVector>& signLocations,
206 std::vector<std::string>& signLabels,
const double signSpacing,
207 const double signOffset, RunwaySignType signType,
208 const RunwaySignPlacement signPlacement,
const DtRunwayData& runwayData);
213 const double headingDeg);
216 virtual void createAndPlaceRunwayDistanceSign(
const DtVector& signLoc,
217 const std::string& label,
const RunwaySignPlacement signPlacement,
218 const double heading,
const unsigned int signSize,
DtUniqueID runwayID);
222 virtual std::string generateSignLabel(
unsigned int signNum);
225 virtual DtVector calcRunwayHalfwaySignPos(
const double signOffset,
226 const RunwaySignPlacement signPlacement,
const DtRunwayData& runwayData);
230 double offsetForDistanceSignSize(
unsigned int size);
Definition: DtTaxiwaySignManager.h:114
Definition: DtTaxiwaySignManager.h:91
std::string text
Definition: DtTaxiwaySignManager.h:40
boost::unordered_map< DtUniqueID, DtSceneObject * > SceneObjectMap
Definition: DtTaxiwaySignManager.h:104
Virtual base class.
Definition: DtVirtualBaseClass.h:22
DtTextureAtlasIndexParser * myTaxiwaySignTextureAtlasParser
Definition: DtTaxiwaySignManager.h:247
boost::signal< void(DtTaxiwaySignData &)> signal_TaxiwaySignCreated
Definition: DtTaxiwaySignManager.h:238
Contains makVrv::DtTaxiwaySignLetter class.
int size
Definition: DtTaxiwaySignManager.h:39
std::vector< DtTaxiwaySignLetter > TaxiwaySignSide
Definition: DtTaxiwaySignManager.h:95
std::map< unsigned int, std::string > myTaxiwaySignModelDefinitions
Definition: DtTaxiwaySignManager.h:263
boost::signal< void(DtRunwayData &)> signal_RunwayDestroyed
signal when the DtRunwayNode is deleted Need this for distance remaining signs
Definition: DtTaxiwaySignManager.h:83
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
DtDe & myDe
Definition: DtTaxiwaySignManager.h:55
std::string myDefaultTaxiwaySignModelDefinition
Definition: DtTaxiwaySignManager.h:264
A class which contains the signals used by the DtTaxiwaySignManager classes.
Definition: DtTaxiwaySignManager.h:62
std::string apt_icao
Definition: DtTaxiwaySignManager.h:38
boost::unordered_map< DtUniqueID, std::vector< DtOsgArticulatedModel * > > RunwaySignMap
Definition: DtTaxiwaySignManager.h:101
voidpf void uLong size
Definition: ioapi.h:39
unsigned int myTaxiwaySignModelMaxSegments
Definition: DtTaxiwaySignManager.h:265
Definition: DtTextureAtlasIndexParser.h:23
RunwaySignPlacement
Definition: DtTaxiwaySignManager.h:112
DtDe & myDe
Definition: DtTaxiwaySignManager.h:244
Contains makVrv::DtDe class.
unsigned int myTaxiwaySignModelLettersPerSegment
Definition: DtTaxiwaySignManager.h:266
An articulated model manipulator for controlling an articulated model.
Definition: DtOsgArticulatedModel.h:56
DtLockedBufferedQueue< DtRunwayData > myRunwayDataLockedQueue
Definition: DtTaxiwaySignManager.h:250
Contains makVrv::DtLockedBufferedQueue class.
Connect DtAerodromeRenderer with the DtTaxiwaySignManager.
Definition: DtTaxiwaySignManager.h:47
SceneObjectMap mySceneObjs
Definition: DtTaxiwaySignManager.h:261
Definition: DtTaxiwaySignParser.h:18
boost::signal< void(DtTaxiwaySignData &)> signal_TaxiwaySignDeleted
Definition: DtTaxiwaySignManager.h:237
DtTaxiwaySignParser * mySignParser
Definition: DtTaxiwaySignManager.h:246
DtLockedBufferedQueue< DtTaxiwaySignData > mySignDataLockedQueue
Definition: DtTaxiwaySignManager.h:249
A locked buffered queue which allows multiple writers and a single reader.
Definition: DtLockedBufferedQueue.h:27
Contains makVrv::DtVirtualBaseClass class.
boost::signal< void(DtTaxiwaySignData &)> signal_TaxiwaySignCreated
signal when the DtTaxiwaySignNode is created
Definition: DtTaxiwaySignManager.h:72
boost::unordered_map< DtUniqueID, DtOsgArticulatedModel * > TaxiwaySignsMap
Definition: DtTaxiwaySignManager.h:98
DtSignalConnectionManager myConnections
Definition: DtTaxiwaySignManager.h:245
Definition: DtTaxiwaySignManager.h:108
DtTaxiwaySignSignaler & myTaxiwaySignSignaler
Definition: DtTaxiwaySignManager.h:57
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
boost::signal< void(DtTaxiwaySignData &)> signal_TaxiwaySignDeleted
signal when the DtTaxiwaySignNode is deleted
Definition: DtTaxiwaySignManager.h:75
DtTaxiwaySignData mySignData
Definition: DtTaxiwaySignManager.h:56
RunwaySignMap myRunwaySigns
Definition: DtTaxiwaySignManager.h:257
unsigned long long DtUniqueID
Definition: DtUniqueID.h:22
RunwaySignType
Definition: DtTaxiwaySignManager.h:106
std::vector< DtRunwayData > myRunwayCreationVector
Definition: DtTaxiwaySignManager.h:269
DtVector location
Definition: DtTaxiwaySignManager.h:42
Base class to provide boost signal/slot management.
Contains makVrv::DtUniqueID type.
Contains DLL export macros.
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
std::vector< DtTaxiwaySignData > myTaxiSignCreationVector
Definition: DtTaxiwaySignManager.h:268
boost::signal< void(DtRunwayData &)> signal_RunwayCreated
signal when the DtRunwayNode is created Need this for distance remaining signs
Definition: DtTaxiwaySignManager.h:79
The elements that make up a taxiway sign.
Definition: DtTaxiwaySignManager.h:36
Definition: DtRunwayMarkingManager.h:40
TaxiwaySignsMap myTaxiwaySigns
Definition: DtTaxiwaySignManager.h:252
double heading
Definition: DtTaxiwaySignManager.h:41