15 #include <matrix/vlVector.h>
39 virtual void setStartPoint(
const DtVector& start);
40 virtual const DtVector & startPoint()
const;
45 virtual void setEndPoint(
const DtVector & end);
46 virtual const DtVector & endPoint()
const;
53 virtual void setSegmentSpeed(
double speed);
54 virtual double segmentSpeed()
const;
59 virtual double defaultSegmentSpeedLimit()
const;
63 virtual void setLaneWidth(
double width);
64 virtual double laneWidth()
const;
69 virtual void setNumberOfLanes(
unsigned int lanes);
70 virtual unsigned int numberOfLanes()
const;
79 virtual int leftLaneOfLane(
int lane)
const;
80 virtual int rightLaneOfLane(
int lane)
const;
85 virtual double findLaneShift(
const int fromLane,
const int toLane)
const;
97 virtual double laneOffset(
int lanePos)
const;
103 virtual double laneCenterOffset(
int lane)
const;
107 virtual void setIsOneWay(
bool way);
108 virtual bool isOneWay()
const;
112 virtual std::list<int> availableLanes()
const;
132 virtual void setPathId(
const unsigned int id);
133 virtual const unsigned int pathId()
const;
146 virtual void setMedianWidth(
const double width);
147 virtual double medianWidth()
const;
152 virtual void setRoadName(
const DtString name);
160 virtual double length()
const;
162 static unsigned int nextPathId();
201 namespace DtBufferSerialize
DtVrfWeatherPrecipitationType
Definition: vrfWeatherStateEnums.h:18
DT_DLL_readerWriter int getSize(const DtString &val)
The number of bytes required to encode the value.
unsigned int DtSpecificationID
Definition: specificationManager.h:22
DtRailSegmentList::iterator DtRailSegmentListIterator
Definition: railSegment.h:198
DtRailSegmentList::const_iterator DtRailSegmentListConstIterator
Definition: railSegment.h:199
std::list< DtRailSegment * > DtRailSegmentList
Definition: railSegment.h:197
bool myIsOneWay
Default is false. Allowing traffic in each direction.
Definition: railSegment.h:176
DtSpecificationID mySpecId
Default is 0. It will be set based on whatever feature it was created from.
Definition: railSegment.h:181
double myLaneWidth
Default is 3.66m. This is U.S. Highway standard.
Definition: railSegment.h:172
DtRailSegment are segments entities can follow when using the rail movement system.
Definition: railSegment.h:23
unsigned int myNumberOfLanes
Default is 2 allowing a lane for each direction of traffic.
Definition: railSegment.h:174
static unsigned int theNextPathId
Definition: railSegment.h:194
DtVector myStartPoint
Definition: railSegment.h:166
DtVrfWeatherPrecipitationType mySurfaceCondition
Default is 0–No precipitation.
Definition: railSegment.h:183
double myMedianWidth
In a two-way segment, the width of the median (impassable area) down the center.
Definition: railSegment.h:186
double myLength
These values are calculated when needed and cached.
Definition: railSegment.h:191
double mySpeed
Default is 50 m/s.
Definition: railSegment.h:170
bool myRecomputeLength
Definition: railSegment.h:192
DT_DLL_readerWriter char * encode(const DtFilename &val, char *buffer)
Serializes the provided value val into buffer.
DtString myRoadName
The name, if present.
Definition: railSegment.h:188
DtVector myEndPoint
Definition: railSegment.h:167
#define DT_DLL_vrfutil
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfutilDefines.h:34
DT_DLL_readerWriter const char * decode(DtString &val, const char *buffer)
Decodes a value from buffer and places the result in val of the type specified by val...
unsigned int myPathId
Keep track of if this segment is just a continuation of the current road.
Definition: railSegment.h:179