22 #ifndef RODFDetector_h 23 #define RODFDetector_h 101 RODFDetector(
const std::string&
id,
const std::string& laneID,
175 bool includeUnusedRoutes,
SUMOReal scale,
176 bool insertionsOnly,
SUMOReal defaultSpeed)
const;
233 void removeDetector(
const std::string&
id);
234 bool detectorsHaveCompleteTypes()
const;
235 bool detectorsHaveRoutes()
const;
236 const std::vector<RODFDetector*>& getDetectors()
const;
237 void save(
const std::string& file)
const;
238 void saveAsPOIs(
const std::string& file)
const;
239 void saveRoutes(
const std::string& file)
const;
241 const RODFDetector& getDetector(
const std::string&
id)
const;
242 RODFDetector& getModifiableDetector(
const std::string&
id)
const;
245 bool knows(
const std::string&
id)
const;
246 void writeEmitters(
const std::string& file,
250 bool writeCalibrators,
bool includeUnusedRoutes,
252 bool insertionsOnly);
254 void writeEmitterPOIs(
const std::string& file,
257 void writeSpeedTrigger(
const RODFNet*
const net,
const std::string& file,
261 void writeValidationDetectors(
const std::string& file,
262 bool includeSources,
bool singleFile,
bool friendly);
270 void mesoJoin(
const std::string& nid,
const std::vector<std::string>& oldids);
std::vector< RODFDetector * > myDetectors
bool writeEmitterDefinition(const std::string &file, const std::map< SUMOTime, RandomDistributor< int > * > &dists, const RODFDetectorFlows &flows, SUMOTime startTime, SUMOTime endTime, SUMOTime stepOffset, bool includeUnusedRoutes, SUMOReal scale, bool insertionsOnly, SUMOReal defaultSpeed) const
void addRoute(RODFRouteDesc &nrd)
std::string getEdgeID() const
Returns the id of the edge this detector is placed on.
RODFDetectorType
Numerical representation of different detector types.
std::map< std::string, RODFDetector * > myDetectorMap
Represents a generic random distribution.
Structure representing possible vehicle parameter.
void addRoutes(RODFRouteCont *routes)
RODFDetector(const std::string &id, const std::string &laneID, SUMOReal pos, const RODFDetectorType type)
Constructor.
void writeEndRerouterDetectors(const std::string &file)
void addPriorDetector(const RODFDetector *det)
RODFDetectorType getType() const
Returns the type of the detector.
const std::vector< RODFRouteDesc > & getRouteVector() const
A container for RODFDetectors.
const std::set< const RODFDetector * > & getFollowerDetectors() const
void computeSplitProbabilities(const RODFNet *net, const RODFDetectorCon &detectors, const RODFDetectorFlows &flows, SUMOTime startTime, SUMOTime endTime, SUMOTime stepOffset)
A not yet defined detector.
std::map< std::string, std::vector< RODFDetector * > > myDetectorEdgeMap
bool writeRoutes(std::vector< std::string > &saved, OutputDevice &out)
SUMOReal getPos() const
Returns the position at which the detector lies.
const std::set< const RODFDetector * > & getPriorDetectors() const
RODFDetector & operator=(const RODFDetector &src)
Invalidated assignment operator.
A detector which had to be discarded (!!!)
~RODFDetector()
Destructor.
void writeSingleSpeedTrigger(const std::string &file, const RODFDetectorFlows &flows, SUMOTime startTime, SUMOTime endTime, SUMOTime stepOffset, SUMOReal defaultSpeed)
A route within the DFROUTER.
A basic edge for routing applications.
std::vector< std::map< RODFEdge *, SUMOReal > > mySplitProbabilities
Base class for objects which have an id.
SUMOReal computeDistanceFactor(const RODFRouteDesc &rd) const
const std::string & getLaneID() const
Returns the id of the lane this detector is placed on.
const std::vector< std::map< RODFEdge *, SUMOReal > > & getSplitProbabilities() const
std::map< std::string, RODFEdge * > myRoute2Edge
Class representing a detector within the DFROUTER.
A container for DFROUTER-routes.
void buildDestinationDistribution(const RODFDetectorCon &detectors, SUMOTime startTime, SUMOTime endTime, SUMOTime stepOffset, const RODFNet &net, std::map< SUMOTime, RandomDistributor< int > * > &into) const
void setType(RODFDetectorType type)
std::set< const RODFDetector * > myPriorDetectors
Static storage of an output device and its base (abstract) implementation.
std::set< const RODFDetector * > myFollowingDetectors
int getFlowFor(const ROEdge *edge, SUMOTime time) const
void addFollowingDetector(const RODFDetector *det)