97 void openJunction(
const std::string&
id,
const std::string& key,
101 const std::vector<MSLane*>& incomingLanes,
102 const std::vector<MSLane*>& internalLanes,
103 const std::string& name);
148 void addLogicItem(
int request,
const std::string& response,
149 const std::string& foes,
bool cont);
174 bool addCondition(
const std::string&
id,
const std::string& value);
182 void addAssignment(
const std::string&
id,
const std::string& check,
const std::string& value);
189 void addFunction(
const std::string&
id,
int nArgs);
230 void addParam(
const std::string& key,
const std::string& value);
SumoXMLNodeType
Numbers representing special SUMO-XML-attribute values for representing node- (junction-) types used ...
std::vector< std::tuple< std::string, std::string, std::string > > AssignmentMap
std::map< std::string, Function > FunctionMap
Parameterised::Map ConditionMap
std::vector< std::bitset< N > > Foes
Container holding the information which internal lanes prohibt which links Build the same way as Logi...
std::vector< std::bitset< N > > Logic
Container that holds the right of way bitsets. Each link has its own bitset. The bits in the bitsets ...
Container for junctions; performs operations on all stored junctions.
The base class for an intersection.
The simulated network and simulation perfomer.
The definition of a single phase of a tls logic.
Storage for all programs of a single tls.
A class that stores and controls tls and switching of their programs.
std::vector< MSPhaseDefinition * > Phases
Definition of a list of phases, being the junction logic.
Builds detectors for microsim.
Builder of microsim-junctions and tls.
PositionVector myShape
The shape of the current junction.
int myRequestItemNumber
Counter for the inserted items.
SumoXMLNodeType myType
The type of the currently chosen junction.
std::vector< MSTrafficLightLogic * > myNetworkLogics
The container for information which junctions shall be initialised using which values.
MSTLLogicControl::TLSLogicVariants & getTLLogic(const std::string &id) const
Returns a previously build tls logic.
std::string myActiveName
the name of the current junction
virtual ~NLJunctionControlBuilder()
Destructor.
void closeFunction()
closes a switching condition function to the traffic lights logic currently build
MSJunction * retrieve(const std::string id)
try to retrieve junction by id
MSActuatedTrafficLightLogic::AssignmentMap myActiveAssignments
The current assignments for an actuated traffic light.
MSBitsetLogic::Foes myActiveFoes
The description about which lanes disallow other passing the junction simultaneously.
std::string myActiveID
The id of the currently chosen junction.
MSActuatedTrafficLightLogic::ConditionMap myActiveConditions
The current switching conditions for an actuated traffic light.
Parameterised::Map StringParameterMap
Definition of a parameter map (key->value)
SUMOTime myOffset
The switch offset within the tls.
MSTLLogicControl * myLogicControl
The tls control to use (0 if net's tls control shall be used)
static const int NO_REQUEST_SIZE
MSNet & myNet
The net to use.
std::string myActiveKey
The key of the currently chosen junction.
TrafficLightType myLogicType
The current logic type.
bool myCurrentHasError
Information whether the current logic had an error.
MSTLLogicControl * buildTLLogics()
Returns the built tls-logic control.
MSJunctionControl * build() const
Builds the MSJunctionControl which holds all of the simulations junctions.
int myRequestSize
The size of the request.
void addPhase(MSPhaseDefinition *phase)
Adds a phase to the currently built traffic lights logic.
MSTLLogicControl & getTLLogicControlToUse() const
Returns the used tls control.
void addFunction(const std::string &id, int nArgs)
adds a switching condition function to the traffic lights logic currently build
LaneVector myActiveIncomingLanes
The list of the incoming lanes of the currently chosen junction.
const std::string & getActiveSubKey() const
Returns the active sub key.
bool addCondition(const std::string &id, const std::string &value)
Adds a condition to the currently built traffic lights logic.
std::string myActiveProgram
StringParameterMap myAdditionalParameter
Parameter map (key->value)
void openJunction(const std::string &id, const std::string &key, const SumoXMLNodeType type, const Position pos, const PositionVector &shape, const std::vector< MSLane * > &incomingLanes, const std::vector< MSLane * > &internalLanes, const std::string &name)
Begins the processing of the named junction.
void addParam(const std::string &key, const std::string &value)
Adds a parameter.
LaneVector myActiveInternalLanes
The list of the internal lanes of the currently chosen junction.
void initJunctionLogic(const std::string &id)
Initialises a junction logic.
void initTrafficLightLogic(const std::string &id, const std::string &programID, TrafficLightType type, SUMOTime offset)
Begins the reading of a traffic lights logic.
MSActuatedTrafficLightLogic::FunctionMap myActiveFunctions
The current functions for an actuated traffic light.
NLDetectorBuilder & myDetectorBuilder
The detector builder to use.
virtual MSJunction * buildNoLogicJunction()
Builds a junction that does not use a logic.
virtual MSJunction * buildInternalJunction()
Builds an internal junction.
MSJunctionControl * myJunctions
The junctions controls.
std::vector< MSTrafficLightLogic * > myAdditionalLogics
const std::string & getActiveKey() const
Returns the active key.
Position myPosition
The position of the junction.
NLJunctionControlBuilder(const NLJunctionControlBuilder &s)
invalidated copy operator
void addAssignment(const std::string &id, const std::string &check, const std::string &value)
Adds an assignment to the currently built traffic lights logic.
void postLoadInitialization()
initialize junctions after all connections have been loaded
std::map< MSTrafficLightLogic *, StringParameterMap > myLogicParams
std::vector< MSTrafficLightLogic * > myRailSignals
void addLogicItem(int request, const std::string &response, const std::string &foes, bool cont)
Adds a logic item.
MSActuatedTrafficLightLogic::Function myActiveFunction
The current function for an actuated traffic light.
MSBitsetLogic::Logic myActiveLogic
The right-of-way-logic of the currently chosen bitset-logic.
virtual MSJunction * buildLogicJunction(MSJunctionLogic *const logic)
Builds a junction with a logic.
SUMOTime myAbsDuration
The absolute duration of a tls-control loop.
void closeJunction(const std::string &basePath)
Closes (ends) the processing of the current junction.
MSSimpleTrafficLightLogic::Phases myActivePhases
The current phase definitions for a simple traffic light.
bool myNetIsLoaded
whether the network has been loaded
virtual void closeTrafficLightLogic(const std::string &basePath)
Ends the building of a traffic lights logic.
std::vector< MSLane * > LaneVector
Definition of a lane vector.
NLJunctionControlBuilder & operator=(const NLJunctionControlBuilder &s)
invalidated assignment operator
const MSSimpleTrafficLightLogic::Phases & getLoadedPhases() const
return the phases loaded so far (for error reporting and cleanup)
std::bitset< SUMO_MAX_CONNECTIONS > myActiveConts
The description about which lanes have an internal follower.
A storage for options typed value containers)
std::map< std::string, std::string > Map
parameters map
A point in 2D or 3D with translation and scaling methods.