-
Notifications
You must be signed in to change notification settings - Fork 21
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
53 changed files
with
4,440 additions
and
3,298 deletions.
There are no files selected for viewing
Binary file not shown.
1,642 changes: 0 additions & 1,642 deletions
1,642
jupedsim-1.1.0/debug-build/include/jupedsim/jupedsim.h
This file was deleted.
Oops, something went wrong.
Binary file not shown.
This file was deleted.
Oops, something went wrong.
Binary file not shown.
Binary file not shown.
Binary file renamed
BIN
+7.56 MB
jupedsim-1.1.0/debug-build/bin/jupedsim.dll → jupedsim-1.2.0/debug-build/bin/jupedsim.dll
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,159 @@ | ||
/* Copyright © 2012-2024 Forschungszentrum Jülich GmbH */ | ||
/* SPDX-License-Identifier: LGPL-3.0-or-later */ | ||
#pragma once | ||
|
||
#include "collision_free_speed_model.h" | ||
#include "collision_free_speed_model_v2.h" | ||
#include "error.h" | ||
#include "export.h" | ||
#include "generalized_centrifugal_force_model.h" | ||
#include "social_force_model.h" | ||
#include "types.h" | ||
|
||
#include <stdbool.h> /*NOLINT(modernize-deprecated-headers)*/ | ||
|
||
#ifdef __cplusplus | ||
extern "C" { | ||
#endif | ||
|
||
/** | ||
* Opaque type of an agent | ||
*/ | ||
typedef struct JPS_Agent_t* JPS_Agent; | ||
|
||
/** | ||
* Access the agents id. | ||
* @param handle of the agent to access. | ||
* @return the id | ||
*/ | ||
JUPEDSIM_API JPS_AgentId JPS_Agent_GetId(JPS_Agent handle); | ||
|
||
/** | ||
* Access the agents journey id. | ||
* @param handle of the agent to access. | ||
* @return the id of this agents journey | ||
*/ | ||
JUPEDSIM_API JPS_JourneyId JPS_Agent_GetJourneyId(JPS_Agent handle); | ||
|
||
/** | ||
* Access the agents currently targeted stage id. | ||
* @param handle of the agent to access. | ||
* @return the id of the stage currently targeted | ||
*/ | ||
JUPEDSIM_API JPS_StageId JPS_Agent_GetStageId(JPS_Agent handle); | ||
|
||
/** | ||
* Access the agents position. | ||
* @param handle of the agent to access. | ||
* @return position | ||
*/ | ||
JUPEDSIM_API JPS_Point JPS_Agent_GetPosition(JPS_Agent handle); | ||
|
||
/** | ||
* Access the agents current target. | ||
* @param handle of the agent to access. | ||
* @return target of the agent | ||
*/ | ||
JUPEDSIM_API JPS_Point JPS_Agent_GetTarget(JPS_Agent handle); | ||
|
||
JUPEDSIM_API bool | ||
JPS_Agent_SetTarget(JPS_Agent handle, JPS_Point target, JPS_ErrorMessage* errorMessage); | ||
|
||
/** | ||
* Access the agents orientation. | ||
* The orientation is unit length. | ||
* @param handle of the agent to access. | ||
* @return the orientation | ||
*/ | ||
JUPEDSIM_API JPS_Point JPS_Agent_GetOrientation(JPS_Agent handle); | ||
|
||
/** | ||
* Access the agets model type information. | ||
* @param handle of the agent to access. | ||
* @return type of model in use | ||
*/ | ||
JUPEDSIM_API JPS_ModelType JPS_Agent_GetModelType(JPS_Agent handle); | ||
|
||
/** | ||
* Access Generalized Centrifugal Force model state. | ||
* Precondition: Agent needs to use Generalized Centrifugal Force model | ||
* @param handle of the agent to access. | ||
* @param[out] errorMessage if not NULL: will be set to a JPS_ErrorMessage in case of an error. | ||
* @return state or NULL on error | ||
*/ | ||
JUPEDSIM_API JPS_GeneralizedCentrifugalForceModelState | ||
JPS_Agent_GetGeneralizedCentrifugalForceModelState( | ||
JPS_Agent handle, | ||
JPS_ErrorMessage* errorMessage); | ||
|
||
/** | ||
* Access Collision Free Speed model state. | ||
* Precondition: Agent needs to use Collision Free Speed model | ||
* @param handle of the agent to access. | ||
* @param[out] errorMessage if not NULL: will be set to a JPS_ErrorMessage in case of an error. | ||
* @return state or NULL on error | ||
*/ | ||
JUPEDSIM_API JPS_CollisionFreeSpeedModelState | ||
JPS_Agent_GetCollisionFreeSpeedModelState(JPS_Agent handle, JPS_ErrorMessage* errorMessage); | ||
|
||
/** | ||
* Access Social Force model state. | ||
* Precondition: Agent needs to use Social Force model | ||
* @param handle of the agent to access. | ||
* @param[out] errorMessage if not NULL: will be set to a JPS_ErrorMessage in case of an error. | ||
* @return state or NULL on error | ||
*/ | ||
JUPEDSIM_API JPS_SocialForceModelState | ||
JPS_Agent_GetSocialForceModelState(JPS_Agent handle, JPS_ErrorMessage* errorMessage); | ||
|
||
/** | ||
* Access Collision Free Speed model V2 state. | ||
* Precondition: Agent needs to use Collision Free Speed model V2 | ||
* @param handle of the agent to access. | ||
* @param[out] errorMessage if not NULL: will be set to a JPS_ErrorMessage in case of an error. | ||
* @return state or NULL on error | ||
*/ | ||
JUPEDSIM_API JPS_CollisionFreeSpeedModelV2State | ||
JPS_Agent_GetCollisionFreeSpeedModelV2State(JPS_Agent handle, JPS_ErrorMessage* errorMessage); | ||
|
||
/** | ||
* Opaque type of an iterator over agents | ||
*/ | ||
typedef struct JPS_AgentIterator_t* JPS_AgentIterator; | ||
|
||
/** | ||
* Access the next element in the iterator. | ||
* Calling JPS_AgentIterator_Next repeatedly on a finished iterator is save. | ||
* @param handle of the iterator to advance and access | ||
* @return an agent or NULL if the iterator is at the end. The pointer returned does not need to be | ||
* freed and is invalidated on the next call to this function! | ||
*/ | ||
JUPEDSIM_API JPS_Agent JPS_AgentIterator_Next(JPS_AgentIterator handle); | ||
|
||
/** | ||
* Free the iterator. | ||
* @param handle to the JPS_AgentIterator to free. | ||
*/ | ||
JUPEDSIM_API void JPS_AgentIterator_Free(JPS_AgentIterator handle); | ||
|
||
/** | ||
* Opaque type of an iterator over agent ids | ||
*/ | ||
typedef struct JPS_AgentIdIterator_t* JPS_AgentIdIterator; | ||
|
||
/** | ||
* Access the next element in the iterator. | ||
* Calling JPS_AgentIterator_Next repeatedly on a finished iterator is save. | ||
* @param handle of the iterator to advance and access | ||
* @return an agentId, Zero in case the iterator has reachedits end. | ||
*/ | ||
JUPEDSIM_API JPS_AgentId JPS_AgentIdIterator_Next(JPS_AgentIdIterator handle); | ||
|
||
/** | ||
* Free the iterator. | ||
* @param handle to the JPS_AgentIterator to free. | ||
*/ | ||
JUPEDSIM_API void JPS_AgentIdIterator_Free(JPS_AgentIdIterator handle); | ||
#ifdef __cplusplus | ||
} | ||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
/* Copyright © 2012-2024 Forschungszentrum Jülich GmbH */ | ||
/* SPDX-License-Identifier: LGPL-3.0-or-later */ | ||
#pragma once | ||
|
||
#include "export.h" | ||
|
||
#ifdef __cplusplus | ||
extern "C" { | ||
#endif | ||
|
||
/** | ||
* Contains build information about this library | ||
*/ | ||
typedef struct JPS_BuildInfo { | ||
/** | ||
* Shortened commit id from which this version was build | ||
*/ | ||
const char* git_commit_hash; | ||
/** | ||
* Date the last commit was made | ||
*/ | ||
const char* git_commit_date; | ||
/** | ||
* Branch name from which this libabry was build | ||
*/ | ||
const char* git_branch; | ||
/** | ||
* Compiler identifier used to build this library | ||
*/ | ||
const char* compiler; | ||
/** | ||
* Compiler version used to build this library | ||
*/ | ||
const char* compiler_version; | ||
/** | ||
* Version of this library | ||
*/ | ||
const char* library_version; | ||
} JPS_BuildInfo; | ||
|
||
/** | ||
* Access meta information about the library. | ||
* @return build information about this library | ||
*/ | ||
JUPEDSIM_API JPS_BuildInfo JPS_GetBuildInfo(); | ||
|
||
#ifdef __cplusplus | ||
} | ||
#endif |
170 changes: 170 additions & 0 deletions
170
jupedsim-1.2.0/debug-build/include/jupedsim/collision_free_speed_model.h
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,170 @@ | ||
/* Copyright © 2012-2024 Forschungszentrum Jülich GmbH */ | ||
/* SPDX-License-Identifier: LGPL-3.0-or-later */ | ||
#pragma once | ||
|
||
#include "error.h" | ||
#include "export.h" | ||
#include "operational_model.h" | ||
#include "types.h" | ||
|
||
#ifdef __cplusplus | ||
extern "C" { | ||
#endif | ||
|
||
/** | ||
* Opaque type for a Collision Free Speed Model Builder | ||
*/ | ||
typedef struct JPS_CollisionFreeSpeedModelBuilder_t* JPS_CollisionFreeSpeedModelBuilder; | ||
|
||
/** | ||
* Creates a Collision Free Speed Model builder. | ||
* @param strength_neighbor_repulsion describes the strength with which neighbors repulse each | ||
* other. | ||
* @param range_neighbor_repulsion describes the range at hich neighbors repulse each other. | ||
* @param strength_geometry_repulsion describes the strength with which neighbors are repules by | ||
* geometry. | ||
* @param range_geometry_repulsion describes the range at hich neighbors are repulsed by geometry. | ||
* @return the builder | ||
*/ | ||
JUPEDSIM_API JPS_CollisionFreeSpeedModelBuilder JPS_CollisionFreeSpeedModelBuilder_Create( | ||
double strengthNeighborRepulsion, | ||
double rangeNeighborRepulsion, | ||
double strengthGeometryRepulsion, | ||
double rangeGeometryRepulsion); | ||
|
||
/** | ||
* Creates a JPS_OperationalModel of type Collision Free Speed Model from the | ||
* JPS_GeneralizedCentrifugalForceModelBuilder. | ||
* @param handle the builder to operate on | ||
* @param[out] errorMessage if not NULL: will be set to a JPS_ErrorMessage in case of an error | ||
* @return a JPS_GeneralizedCentrifugalForceModel or NULL if an error occured. | ||
*/ | ||
JUPEDSIM_API JPS_OperationalModel JPS_CollisionFreeSpeedModelBuilder_Build( | ||
JPS_CollisionFreeSpeedModelBuilder handle, | ||
JPS_ErrorMessage* errorMessage); | ||
|
||
/** | ||
* Frees a JPS_CollisionFreeSpeedModelBuilder | ||
* @param handle to the JPS_CollisionFreeSpeedModelBuilder to free. | ||
*/ | ||
JUPEDSIM_API void | ||
JPS_CollisionFreeSpeedModelBuilder_Free(JPS_CollisionFreeSpeedModelBuilder handle); | ||
|
||
/** | ||
* Opaque type of Collision Free Speed model state | ||
*/ | ||
typedef struct JPS_CollisionFreeSpeedModelState_t* JPS_CollisionFreeSpeedModelState; | ||
|
||
/** | ||
* Read e0 of this agent. | ||
* @param handle of the Agent to access. | ||
* @return e0 of this agent | ||
*/ | ||
JUPEDSIM_API JPS_Point | ||
JPS_CollisionFreeSpeedModelState_GetE0(JPS_CollisionFreeSpeedModelState handle); | ||
|
||
/** | ||
* Write e0 of this agent. | ||
* @param handle of the Agent to access. | ||
* @param e0 of this agent. | ||
*/ | ||
JUPEDSIM_API void | ||
JPS_CollisionFreeSpeedModelState_SetE0(JPS_CollisionFreeSpeedModelState handle, JPS_Point e0); | ||
|
||
/** | ||
* Read time gap of this agent. | ||
* @param handle of the Agent to access. | ||
* @return time gap of this agent | ||
*/ | ||
JUPEDSIM_API double | ||
JPS_CollisionFreeSpeedModelState_GetTimeGap(JPS_CollisionFreeSpeedModelState handle); | ||
|
||
/** | ||
* Write time gap of this agent. | ||
* @param handle of the Agent to access. | ||
* @param time_gap of this agent. | ||
*/ | ||
JUPEDSIM_API void JPS_CollisionFreeSpeedModelState_SetTimeGap( | ||
JPS_CollisionFreeSpeedModelState handle, | ||
double time_gap); | ||
|
||
/** | ||
* Read tau of this agent. | ||
* @param handle of the Agent to access. | ||
* @return tau of this agent | ||
*/ | ||
JUPEDSIM_API double | ||
JPS_CollisionFreeSpeedModelState_GetTau(JPS_CollisionFreeSpeedModelState handle); | ||
|
||
/** | ||
* Write tau of this agent. | ||
* @param handle of the Agent to access. | ||
* @param tau of this agent. | ||
*/ | ||
JUPEDSIM_API void | ||
JPS_CollisionFreeSpeedModelState_SetTau(JPS_CollisionFreeSpeedModelState handle, double tau); | ||
|
||
/** | ||
* Read v0 of this agent. | ||
* @param handle of the Agent to access. | ||
* @return v0 of this agent | ||
*/ | ||
JUPEDSIM_API double JPS_CollisionFreeSpeedModelState_GetV0(JPS_CollisionFreeSpeedModelState handle); | ||
|
||
/** | ||
* Write v0 of this agent. | ||
* @param handle of the Agent to access. | ||
* @param v0 of this agent. | ||
*/ | ||
JUPEDSIM_API void | ||
JPS_CollisionFreeSpeedModelState_SetV0(JPS_CollisionFreeSpeedModelState handle, double v0); | ||
|
||
/** | ||
* Read radius of this agent. | ||
* @param handle of the Agent to access. | ||
* @return radius of this agent | ||
*/ | ||
JUPEDSIM_API double | ||
JPS_CollisionFreeSpeedModelState_GetRadius(JPS_CollisionFreeSpeedModelState handle); | ||
|
||
/** | ||
* Write radius of this agent in meters. | ||
* @param handle of the Agent to access. | ||
* @param radius (m) of this agent. | ||
*/ | ||
JUPEDSIM_API void | ||
JPS_CollisionFreeSpeedModelState_SetRadius(JPS_CollisionFreeSpeedModelState handle, double radius); | ||
/** | ||
* Describes parameters of an Agent in GeneralizedCentrifugalForceModel | ||
*/ | ||
typedef struct JPS_CollisionFreeSpeedModelAgentParameters { | ||
/** | ||
* Position of the agent. | ||
* The position needs to inside the accessible area. | ||
*/ | ||
JPS_Point position{0, 0}; | ||
/** | ||
* Defines the journey this agent will take use | ||
*/ | ||
JPS_JourneyId journeyId = 0; | ||
/** | ||
* Defines the current stage of its journey | ||
*/ | ||
JPS_StageId stageId = 0; | ||
/** | ||
* @param time_gap of the agents using this profile (T in the OV-function) | ||
*/ | ||
double time_gap = 1.; | ||
/** | ||
*@param v0 of the agents using this profile(desired speed) double radius; | ||
*/ | ||
double v0 = 1.2; | ||
/** | ||
*@param radius of the agent in 'meters' | ||
*/ | ||
double radius = 0.2; | ||
} JPS_CollisionFreeSpeedModelAgentParameters; | ||
|
||
#ifdef __cplusplus | ||
} | ||
#endif |
Oops, something went wrong.