![]() |
Menge
Modular Pedestrian Simulation Framework for Research and Development
|
▼ src | |
▼ menge | |
▼ MengeCore | |
► Agents | |
► AgentGenerators | |
AgentGenerator.h | The definition of the agent generator element. Defines the intial numbers and positions of agents in the simulation |
AgentGeneratorDatabase.h | Central database for querying available agent generator implementations |
AgentGeneratorFactory.h | The factory for parsing xml data and instantiating agent generator implementations |
ExplicitAgentGenerator.h | An agent generator which creates a set of agents based on an explicit enumeration of agent positions |
HexLatticeGenerator.h | An agent generator which creates a set of agents based on the definition of a hexagonal packed lattice fit into a rectangle. (i.e., rows are offset for maximal packing) |
RectGridGenerator.h | An agent generator which creates a set of agents based on the definition of a rectangular lattice, with an agent at each point |
► Elevations | |
Elevation.h | The definition of the elevation element. This approximately allows for agents to be simulated on non-planer domains |
ElevationDatabase.h | Central database for querying available elevation implementations |
ElevationFactory.h | The factory for parsing xml data and instantiating elevation implementations |
ElevationFlat.h | The definition of an elevation class for flat ground; elevation is always zero and gradient is always <0,0> |
ElevationNavMesh.h | Defines elevation based on a navigation mesh. If an agent (or a point) cannot be located on the mesh, its elevation is zero |
► Events | |
AgentEventEffect.h | The definition of the agent event effect – defines the agent-base effect |
AgentEventTarget.h | The definition of the event target for agents |
AgentPropertyEffect.h | The definition of an event effect that modifies agent properties |
Event.h | The definition of the Menge Event |
EventEffect.h | The definition of the event effect – defines the response to a triggered response |
EventEffectDB.h | Central database for querying available event effect implementations |
EventEffectFactory.h | The definition of the basic event effect factory |
EventException.h | The definition of event-related exceptions |
EventResponse.h | A response to an event trigger |
EventSystem.h | The definition of the core event system |
EventTarget.h | The definition of the base event target class. Defines what an event effect operates on |
EventTargetDB.h | Central database for querying available event target implementations |
EventTargetFactory.h | The definition of the basic event target factory |
EventTrigger.h | The definition of the basic event trigger mechanism |
EventTriggerDB.h | Central database for querying available event trigger implementations |
EventTriggerFactory.h | The definition of the basic event trigger factory |
StateEvtTrigger.h | The definitin of event triggers which key on state properties |
StateMemberTarget.h | Defines an event effect target based on membership in state(s) |
► ObstacleSets | |
ExplicitObstacleSet.h | An obstacleset which creates obstacles based on explicit definitions in XML |
ListObstacleSet.h | An abstract class for any obstacle set which will need an _obstacles list. Provides transformations from vertex vectors |
NavMeshObstacleSet.h | |
ObstacleSet.h | The definition of the ObstacleSet element Defines the numbers and positions of obstacles in a set |
ObstacleSetDatabase.h | Central database for querying available obstacle set implementations |
ObstacleSetFactory.h | The factory for parsing xml data and instantiating ObstacleSet implementations |
ObstacleVertexList.h | The definition of the set of vertices for an explicit obstacle definition |
► ProfileSelectors | |
ConstProfileSelector.h | The definition of a profile selector that assigns all agents the same profile |
ProfileSelector.h | The definition of the agent profile selector element. This is the mechanism which associates an agent profile with a new agent |
ProfileSelectorDatabase.h | Central database for querying available profile selector implementations |
ProfileSelectorFactory.h | The factory for parsing xml data and instantiating profile selector implementations |
► SpatialQueries | |
AgentKDTree.h | Contains the definition of the AgentKDTree class. Performs spatial queries for agents |
KNearestQuery.h | Spatial Query which stores the k-nearest agents and obstacles |
ObstacleKDTree.h | Contains the definition of the ObstacleKDTree class. Performs spatial queries for Obstacles |
ProximityQuery.h | The base class for all objects which actually perform filtering and store results from spatial queries |
SpatialQuery.h | The base class for all objects which support agent spatial queries including: k-nearest agent neighbor, k-nearest obstacles and visibility queries |
SpatialQueryDatabase.h | Central database for querying available spatial query implementations |
SpatialQueryFactory.h | The factory for parsing xml data and instantiating spaital query implementations |
SpatialQueryKDTree.h | A spatial query object based on Jur van den Berg's kd-tree as defined in the RVO2 library (http://gamma-web.iacs.umd.edu/RVO2) |
SpatialQueryNavMesh.h | Definition of a spatial query structure based on a navigation mesh |
SpatialQueryStructs.h | Structs for storing results from spatial queries |
► StateSelectors | |
ConstStateSelector.h | The definition of a state selector that assigns all agents the same initial state |
StateSelector.h | The definition of the agent initial state selector element. This is the mechanism which determines which state in the FSM the agent starts in |
StateSelectorDatabase.h | Central database for querying available profile selector implementations |
StateSelectorFactory.h | The factory for parsing xml data and instantiating profile selector implementations |
AgentInitializer.h | The infrastructure for initializing agent properties from the scene specification file |
AgentPropertyManipulator.h | Classes for manipulating agent properties in an "undoable" manner (albeit, to a limited degree) |
BaseAgent.h | Contains the BaseAgent class - the underlying class which defines the basic functionality for all shared agents |
Obstacle.h | Contains the Obstacle class |
PrefVelocity.h | The definition of a preferred velocity |
SCBWriter.h | Functionality for writing the crowd trajectories to a binary file |
SimulatorBase.h | Contains the SimulatorBase class - the common, generic simulator to work with different types of agents. It is templated on the Agent type |
SimulatorInterface.h | The definition of the interface of the simulator required by the finite state machine |
SimulatorState.h | A snapshot of the simulator state |
SimXMLLoader.h | Contains functionality for parsing simulation specifcation from an XML file |
XMLSimulatorBase.h | The set of operations used by SimXMLLoader to apply XML-parsed experiment specification to a simulator |
► BFSM | |
► Actions | |
Action.h | The definition of actions that are taken as agents enter states |
ActionDatabase.h | Central database for querying available behavior actions |
ActionFactory.h | The factory for parsing xml data and instantiating actions |
ObstacleAction.h | Defines a set of BFSM actions that change agent obstacle set value |
PropertyAction.h | Defines a set of BFSM actions that change agent parameters |
TeleportAction.h | Defines a BFSM action that causes agents to teleport to a new location |
► Goals | |
Goal.h | Defines the goal classes for agent behaviors |
GoalAABB.h | The definition of a BFSM axis-aligned bounding box goal |
GoalCircle.h | The definition of a BFSM circle goal |
GoalDatabase.h | Central database for querying available agent goals |
GoalFactory.h | The factory for parsing xml data and instantiating goals |
GoalOBB.h | The definition of a BFSM oriented bounding box goal |
GoalPoint.h | The definition of a BFSM point goal |
► GoalSelectors | |
GoalSelector.h | Defines the mechanism for selecting a goal for an agent |
GoalSelectorDatabase.h | Central database for querying available agent goals |
GoalSelectorExplicit.h | The definition of the explicit goal selector - specifying a target goal from a set explicitly |
GoalSelectorFactory.h | The factory for parsing xml data and instantiating goals |
GoalSelectorFarthest.h | The definition of the farthest goal selector |
GoalSelectorFarthestNM.h | The definition of the farthest navigation mesh goal selector |
GoalSelectorIdentity.h | The definition of the "identity" goal selector |
GoalSelectorMirror.h | The definition of the "mirror" goal selector |
GoalSelectorNearest.h | The definition of the nearest goal selector |
GoalSelectorNearestNM.h | The definition of the nearest navigation mesh goal selector |
GoalSelectorOffset.h | The definition of the "offset" goal selector |
GoalSelectorRandom.h | The definition of the random goal selector |
GoalSelectorSet.h | The definition of the base class for handling goal selectors which operate on single goal sets |
GoalSelectorShared.h | The definition of the "shared" goal selector |
GoalSelectorWeighted.h | The definition of the weighted random goal selector |
► Tasks | |
NavMeshLocalizerTask.h | A task based on the NavMeshLocalizer so that it updates its tracked agent positions at every FSM time step |
Task.h | Defines the interface for behavior FSM tasks. actions that need to be taken at each time step |
TaskDatabase.h | Central database for querying available behavior actions |
TaskFactory.h | The factory for parsing xml data and instantiating tasks |
► Transitions | |
CondAuto.h | The definition of the automatic condition |
CondBoolean.h | Definition of boolean conditiosn for transition conditions |
CondGoal.h | The definition of the goal reached condition |
Condition.h | The basis for determining the conditions under which transitions become "active" (and are taken) |
ConditionDatabase.h | Central database for querying available behavior conditions |
ConditionFactory.h | The factory for parsing xml data for transition conditions and instantiating the appropriate class |
CondSpace.h | The definition of space-based conditions. I.e. those conditions which are triggered based on an agent entering or leaving a particular space |
CondTimer.h | The definition of the timer-based condition |
Target.h | The basis for determing what an active transition leads to |
TargetDatabase.h | Central database for querying available behavior transition targets |
TargetFactory.h | The factory for parsing xml data for TransitionTarget and instantiating the appropriate class |
TargetProb.h | Defines a transition target probabilistically |
TargetReturn.h | Defines a transition target that returns the agent to the state from which he entered this state |
Transition.h | The definition of state transitions in the BFSM |
► VelocityComponents | |
VelCompConst.h | Provides the definitions of some simple velocity components based on constant velocities |
VelCompContext.h | The definition of a basic UI context for finite state machine velocity components |
VelCompGoal.h | Provides the definition of the simple velocity component that computes a preferred velocity directly towards the goal |
VelCompNavMesh.h | Provides the definition of the navigation mesh velocity component. The preferred velocity is defined for each agent based on a polygonal mesh representation of the free space (a navigation mesh) and searches on that graph |
VelComponent.h | The definition of how preferred velocity is computed in a state |
VelComponentDatabase.h | Central database for querying available behavior velocity components |
VelComponentFactory.h | The factory for parsing xml data and instantiating velocity components |
VelCompRoadMap.h | Provides the definition of the road map velocity component. The preferred velocity is defined for each agent based on a discrete graph reprsentation of the free space (a roadmap) and searches on that graph |
VelCompVF.h | Provides the definition of the vector field velocity component. The preferred velocity is defined for each agent based on where the agent is in relation a uniformly discretized 2D grid |
► VelocityModifiers | |
VelModifier.h | The definition of how preferred velocity is modified by a filter |
VelModifierContext.h | The definition of a basic UI context for finite state machine velocity modifiers |
VelModifierDatabase.h | Central database for querying available behavior velocity modifiers |
VelModifierFactory.h | The factory for parsing xml data and instantiating velocity Modifierss |
VelModifierScale.h | Provides the definition of a simple velocity modifier that simply scale's the preferred velocity's speed |
buildFSM.cpp | Functionality to realize Behavior FSM from configuration |
FSM.h | The definition of the behavior finite state machine |
fsmCommon.h | Collection of convenient pre-compiler information for fsm definitions |
FsmContext.h | The definition of a basic UI context for finite state machine objects |
FSMDescrip.h | The definition of behavior finite state machines |
FSMEnumeration.h | Enumerated types for the State class |
GoalSet.h | Defines a set of goals |
State.h | The definition of the BFSM state nodes |
StateContext.h | The definition of a basic UI context for finite state machine states |
StateDescrip.h | The state (and state goal) specification in the behavior configuration file |
► Math | |
consts.h | Some common mathematical constants |
Geometry2D.h | Definition of various shapes for defining spatial relationships |
geomQuery.h | Various mathematical operations and queries on geometry |
Line.h | Contains the definition for an line used as a linear constraint (e.g. ORCA half plane) |
Matrix.h | The definition of a 4x4 transformation matrix |
RandGenerator.h | Utility for generating number distributions |
SimRandom.h | Functions for calculating normally distributed values |
vector.h | Collection of Vector2, Vector3, and constants for simple inclusion |
Vector2.h | Definition of a vector in R2 |
Vector3.h | Definition of a vector in R3 |
► Orca | |
ORCA.h | Collection of ORCA Agent and Simulator for simple inclusion |
ORCAAgent.h | Contains the PedVOAgent class |
ORCAAgentContext.h | A basic context for interacting with and displaying ORCA agent parameters |
ORCADBEntry.h | The simulator database entry for the ORCA pedestrian model |
ORCAInitializer.h | The AgentInitializer for the ORCA simulator |
ORCASimulator.h | Contains the ORCA::Simulator class |
ORCATypeAgentContext.h | A basic context for interacting with and displaying ORCA-type agent parameters |
► PedVO | |
PedVO.h | The definition of the PedVO pedestrian plug-in |
PedVOAgent.h | Contains the PedVOAgent class |
PedVOAgentContext.h | A basic context for interacting with and displaying PedVO agent parameters |
PedVODBEntry.h | The simulator database entry for the PedVO pedestrian model |
PedVOInitializer.h | The AgentInitializer for the PedVO simulator |
PedVOSimSystem.h | Specialization of the SimSystem for PedVO agents |
PedVOSimulator.h | Contains the ORCA::Simulator class |
► PluginEngine | |
Attribute.h | Defines a single attribute of an element |
AttributeSet.h | Defines the set of element attributes |
Element.h | Base class for all Menge elements |
ElementDatabase.h | The base (templated) implementation of the database that tracks plug-in elements |
ElementFactory.h | The base (templated) implementation of a factory for a plug-in element |
Plugin.h | The basic specification of a plug in |
PluginEngine.h | Definition of the plug-in architecture |
SharedLibrary.h | Functions for loading and unloading shared libraries |
► resources | |
Funnel.h | The various classes for performing funnel algorithm on a portal path. The funnel algorithm is from: Lee and Preparata 1984 "Euclidean Shortest Paths in the Presence of Rectilinear Barriers" |
Graph.h | The definition of a graph for performing graph searches and path planning |
GraphEdge.h | The definition of a graph edge for performing graph searches and path planning |
GraphVertex.h | The definition of a graph vertex for performing graph searches and path planning |
MinHeap.h | Special MinHeap implementaiton which will work with the A* algorithm and, particulary, is threadsafe |
NavMesh.h | Defines the classes which maintain the navigation mesh data |
NavMeshEdge.h | Defines the "edge" of the adjacency graph in a navigation mesh |
NavMeshLocalizer.h | Data structure responsible for knowing where on the navigation mesh each agent is located |
NavMeshNode.h | Defines the "node" of the adjacency graph in a navigation mesh. The node corresponds to a polygon in the mesh |
NavMeshObstacle.h | Specification for obstacles in a navigation mesh file |
NavMeshPoly.h | Defines the geometric, convex polygon for each navigation mesh node |
PathPlanner.h | Defines an entity for computing paths through a navigation mesh |
Portal.h | The definition of a portal - a line which spans a clear area between obstacles |
PortalPath.h | The definition of a path through a navigation mesh. Each leg of the path is defined by a portal (the width of a shared edge.) |
Resource.h | The basic class for all on-disk resources |
ResourceManager.h | The basic class for all on-disk resources |
RoadMapPath.h | A path along a roadmap |
Route.h | The definition of a basic route through a navigation mesh |
VectorField.h | The definition of a 2D vector field |
WayPortal.h | Defines a way portal for a navigation mesh route/path |
► Runtime | |
BaseAgentContext.h | A basic context for interacting with and displaying basic agent parameters |
Logger.h | The specificaiton of a message logger for menge, such that all messages to the system get properly recorded |
os.h | Various operating-system-dependent file-system operations |
ReadersWriterLock.h | The definition of a readers-writer lock |
SimpleLock.h | The definition of a simple thrading lock |
SimSystem.h | The system which runs the simulation, coordinating the FSM and simulator |
SimulatorDB.h | Central database for querying available pedestrian models |
SimulatorDBEntry.h | Definition of an entry into the simulator database |
Utils.h | A collection of convenience utilities |
VisAgent.h | Simple, cylindrical visualization for agents |
VisObstacle.h | The node for visualizing a simulation obstacle |
► SceneGraph | |
Context.h | Defines a context for handling user interaction (mouse and keyboard input) |
ContextSwitcher.h | The definition of a context which allows the ability to select between multiple contexts |
GLCamera.h | Class to handle camera transformations in OpenGL |
GLContextManager.h | The mechanism by which OpenGL memory structures are restored after an OpenGL context change. |
GLGroundPlane.h | The definition of a grid visualization of the ground plane |
GLLight.h | A simple light for defining OpenGL lighting properties |
GLNode.h | The basic scene graph node. Any object which can be placed into the scene graph is an instance or sub-class of this node |
GLScene.h | The definition of the scene – the root of the directed, acyclic scene graph |
graphCommon.h | Various important pre-compiler directives for the scene graph |
image.h | The interface for loading and using images in the scene graph |
ManagedData.h | The interface for handling resources from a disk system |
Select.h | Functionality to make nodes in the scene graph selectable by mouse clicking |
shapes.h | A library of simple renderable OpenGL shapes |
System.h | The mechanism for evolving a scene w.r.t. time |
TextWriter.h | Functionality for writing text on the OpenGL context |
Transform.h | Scene graph node which carries rigid transformations |
XformMatrix.h | Defines the math of performing 3D transformation using a 4x4 homgeneous matrix |
► viewer | |
GLViewer.h | Specification for an OpenGL based 3D viewer |
NullViewer.h | Specification for a do-nothing viewer. This is the offline simulator |
Profiler.h | Functionality for timing and profiling the program |
ScreenGrab.h | Functionality for capturing screen grabs to the file system |
ViewConfig.h | Specification for parsing the view configuration file |
Watermark.h | Data for controlling a watermark |
Core.h | A set of global variables for use by the entire finite state machine |
CoreConfig.h | Sets up the proper compiler directives for platform and dll export/import |
mengeCommon.h | |
MengeException.h | The base definition for exceptions in Menge |
▼ mengeMain | |
common.h | A set of common includes for the core Menge library |
ProjectSpec.h | The definition of the parameters required to run a simulation |