|
opynsim
Unofficial C++ Documentation
|
#include <liboscar/concepts/dereferences_to.h>#include <liboscar/graphics/color.h>#include <liboscar/maths/ray.h>#include <liboscar/maths/vector.h>#include <liboscar/shims/cpp23/generator.h>#include <liboscar/utilities/c_string_view.h>#include <liboscar/utilities/string_name.h>#include <OpenSim/Common/ComponentPath.h>#include <SimTKcommon/internal/Transform.h>#include <algorithm>#include <concepts>#include <cstddef>#include <filesystem>#include <functional>#include <iosfwd>#include <iterator>#include <memory>#include <optional>#include <span>#include <stdexcept>#include <string_view>#include <string>#include <type_traits>#include <unordered_map>#include <utility>#include <vector>Go to the source code of this file.
Classes | |
| class | opyn::ComponentConnectionView |
| struct | opyn::LinesOfAction |
| struct | opyn::ForcePoint |
| struct | opyn::PointInfo |
| struct | opyn::ComponentSpatialRepresentation |
| struct | opyn::StorageLoadingParameters |
| struct | opyn::StorageIndexToModelStateVarMappingResult |
Namespaces | |
| namespace | OpenSim |
| namespace | SimTK |
| namespace | opyn |
Concepts | |
| concept | opyn::ClonesToRawPointer |
Functions | |
| template<std::derived_from< OpenSim::Object > T, std::derived_from< OpenSim::Object > C = OpenSim::Object> | |
| size_t | opyn::size (const OpenSim::Set< T, C > &s) |
| template<std::derived_from< OpenSim::Object > T, std::derived_from< OpenSim::Object > C = OpenSim::Object> | |
| ptrdiff_t | opyn::ssize (const OpenSim::Set< T, C > &s) |
| template<typename T > | |
| size_t | opyn::size (const OpenSim::ArrayPtrs< T > &ary) |
| template<typename T > | |
| size_t | opyn::size (const OpenSim::Array< T > &ary) |
| template<typename T > | |
| size_t | opyn::size (const OpenSim::Property< T > &p) |
| template<typename T > | |
| const T * | opyn::begin (const OpenSim::Array< T > &ary) |
| template<typename T > | |
| T * | opyn::begin (OpenSim::Array< T > &ary) |
| template<typename T > | |
| const T * | opyn::end (const OpenSim::Array< T > &ary) |
| template<typename T > | |
| T * | opyn::end (OpenSim::Array< T > &ary) |
| template<std::derived_from< OpenSim::Object > T, std::derived_from< OpenSim::Object > C = OpenSim::Object> | |
| bool | opyn::empty (const OpenSim::Set< T, C > &s) |
| template<typename T > | |
| T & | opyn::At (OpenSim::ArrayPtrs< T > &ary, size_t pos) |
| template<typename T > | |
| const T & | opyn::At (const OpenSim::Array< T > &ary, size_t pos) |
| template<std::derived_from< OpenSim::Object > T, std::derived_from< OpenSim::Object > C = OpenSim::Object> | |
| const T & | opyn::At (const OpenSim::Set< T, C > &s, size_t pos) |
| template<std::derived_from< OpenSim::Object > T, std::derived_from< OpenSim::Object > C = OpenSim::Object> | |
| T & | opyn::At (OpenSim::Set< T, C > &s, size_t pos) |
| template<typename T > | |
| const T & | opyn::At (const OpenSim::Property< T > &p, size_t pos) |
| template<std::derived_from< OpenSim::Object > T, std::derived_from< OpenSim::Object > C = OpenSim::Object> | |
| bool | opyn::EraseAt (OpenSim::Set< T, C > &s, size_t i) |
| template<typename T > requires (std::strict_weak_order<std::ranges::less, T, T> and std::equality_comparable<T>) | |
| bool | opyn::IsAllElementsUnique (const OpenSim::Array< T > &v) |
| bool | opyn::IsConcreteClassNameLexicographicallyLowerThan (const OpenSim::Component &, const OpenSim::Component &) |
| template<osc::DereferencesTo< const OpenSim::Component & > ComponentPtrLike> | |
| bool | opyn::IsConcreteClassNameLexicographicallyLowerThan (const ComponentPtrLike &a, const ComponentPtrLike &b) |
| bool | opyn::IsNameLexographicallyLowerThan (const OpenSim::Component &, const OpenSim::Component &) |
| template<osc::DereferencesTo< const OpenSim::Component & > Ptr> | |
| bool | opyn::IsNameLexographicallyLowerThan (const Ptr &a, const Ptr &b) |
| template<osc::DereferencesTo< const OpenSim::Component & > Ptr> | |
| bool | opyn::IsNameLexographicallyGreaterThan (const Ptr &a, const Ptr &b) |
| OpenSim::Component * | opyn::UpdOwner (OpenSim::Component &root, const OpenSim::Component &) |
| OpenSim::Component & | opyn::UpdOwnerOrThrow (OpenSim::Component &root, const OpenSim::Component &) |
| template<std::derived_from< OpenSim::Component > T> | |
| T & | opyn::UpdOwnerOrThrow (OpenSim::Component &root, const OpenSim::Component &c) |
| template<std::derived_from< OpenSim::Component > T> | |
| T * | opyn::UpdOwner (OpenSim::Component &root, const OpenSim::Component &c) |
| const OpenSim::Component & | opyn::GetOwnerOrThrow (const OpenSim::AbstractOutput &) |
| const OpenSim::Component & | opyn::GetOwnerOrThrow (const OpenSim::Component &) |
| const OpenSim::Component & | opyn::GetOwnerOr (const OpenSim::Component &, const OpenSim::Component &fallback) |
| const OpenSim::Component * | opyn::GetOwner (const OpenSim::Component &) |
| template<std::derived_from< OpenSim::Component > T> | |
| const T * | opyn::GetOwner (const OpenSim::Component &c) |
| template<std::derived_from< OpenSim::Component > T> | |
| bool | opyn::OwnerIs (const OpenSim::Component &c) |
| std::optional< std::string > | opyn::TryGetOwnerName (const OpenSim::Component &) |
| size_t | opyn::DistanceFromRoot (const OpenSim::Component &) |
| OpenSim::ComponentPath | opyn::GetRootComponentPath () |
| bool | opyn::IsEmpty (const OpenSim::ComponentPath &) |
| void | opyn::Clear (OpenSim::ComponentPath &) |
| std::vector< const OpenSim::Component * > | opyn::GetPathElements (const OpenSim::Component &) |
| void | opyn::ForEachComponent (const OpenSim::Component &, const std::function< void(const OpenSim::Component &)> &) |
| void | opyn::ForEachComponentInclusive (const OpenSim::Component &, const std::function< void(const OpenSim::Component &)> &) |
| template<std::derived_from< OpenSim::Component > T> | |
| size_t | opyn::GetNumChildren (const OpenSim::Component &c) |
| size_t | opyn::GetNumChildren (const OpenSim::Component &) |
| bool | opyn::IsInclusiveChildOf (const OpenSim::Component *parent, const OpenSim::Component *c) |
| const OpenSim::Component * | opyn::IsInclusiveChildOf (std::span< const OpenSim::Component * > parents, const OpenSim::Component *c) |
| const OpenSim::Component * | opyn::FindFirstAncestorInclusive (const OpenSim::Component *, bool(*pred)(const OpenSim::Component *)) |
| template<std::derived_from< OpenSim::Component > T> | |
| const T * | opyn::FindAncestorWithType (const OpenSim::Component *c) |
| template<std::derived_from< OpenSim::Component > T> | |
| bool | opyn::IsChildOfA (const OpenSim::Component &c) |
| const OpenSim::Component * | opyn::FindFirstDescendentInclusive (const OpenSim::Component &component, bool(*predicate)(const OpenSim::Component &)) |
| const OpenSim::Component * | opyn::FindFirstDescendent (const OpenSim::Component &component, bool(*predicate)(const OpenSim::Component &)) |
| OpenSim::Component * | opyn::FindFirstDescendentMut (OpenSim::Component &component, bool(*predicate)(const OpenSim::Component &)) |
| template<std::derived_from< OpenSim::Component > T> | |
| const T * | opyn::FindFirstDescendentOfType (const OpenSim::Component &c) |
| template<std::derived_from< OpenSim::Component > T> | |
| T * | opyn::FindFirstDescendentOfTypeMut (OpenSim::Component &c) |
| std::vector< const OpenSim::Coordinate * > | opyn::GetCoordinatesInModel (const OpenSim::Model &) |
| void | opyn::GetCoordinatesInModel (const OpenSim::Model &, std::vector< const OpenSim::Coordinate * > &) |
| std::vector< OpenSim::Coordinate * > | opyn::UpdDefaultLockedCoordinatesInModel (OpenSim::Model &) |
| float | opyn::ConvertCoordValueToDisplayValue (const OpenSim::Coordinate &, double v) |
| double | opyn::ConvertCoordDisplayValueToStorageValue (const OpenSim::Coordinate &, float v) |
| osc::CStringView | opyn::GetCoordDisplayValueUnitsString (const OpenSim::Coordinate &) |
| std::vector< std::string > | opyn::GetSocketNames (const OpenSim::Component &) |
| std::vector< const OpenSim::AbstractSocket * > | opyn::GetAllSockets (const OpenSim::Component &) |
| std::vector< OpenSim::AbstractSocket * > | opyn::UpdAllSockets (OpenSim::Component &) |
| void | opyn::WriteComponentTopologyGraphAsDotViz (const OpenSim::Component &, std::ostream &) |
| void | opyn::WriteModelMultibodySystemGraphAsDotViz (const OpenSim::Model &, std::ostream &) |
| const OpenSim::Component * | opyn::FindComponent (const OpenSim::Component &root, const OpenSim::ComponentPath &) |
| const OpenSim::Component * | opyn::FindComponent (const OpenSim::Model &, const std::string &absPath) |
| const OpenSim::Component * | opyn::FindComponent (const OpenSim::Model &, const osc::StringName &absPath) |
| template<std::derived_from< OpenSim::Component > T> | |
| const T * | opyn::FindComponent (const OpenSim::Component &root, const OpenSim::ComponentPath &cp) |
| template<std::derived_from< OpenSim::Component > T> | |
| const T * | opyn::FindComponent (const OpenSim::Model &root, const std::string &cp) |
| template<std::derived_from< OpenSim::Component > T> | |
| const T * | opyn::FindComponent (const OpenSim::Model &root, const osc::StringName &cp) |
| OpenSim::Component * | opyn::FindComponentMut (OpenSim::Component &root, const OpenSim::ComponentPath &) |
| template<std::derived_from< OpenSim::Component > T> | |
| T * | opyn::FindComponentMut (OpenSim::Component &root, const OpenSim::ComponentPath &cp) |
| bool | opyn::ContainsComponent (const OpenSim::Component &root, const OpenSim::ComponentPath &) |
| const OpenSim::AbstractSocket * | opyn::FindSocket (const OpenSim::Component &, const std::string &socketName) |
| OpenSim::AbstractSocket * | opyn::FindSocketMut (OpenSim::Component &, const std::string &socketName) |
| bool | opyn::IsConnectedTo (const OpenSim::AbstractSocket &, const OpenSim::Component &) |
| bool | opyn::IsAbleToConnectTo (const OpenSim::AbstractSocket &, const OpenSim::Component &) |
| void | opyn::RecursivelyReassignAllSockets (OpenSim::Component &root, const OpenSim::Component &from, const OpenSim::Component &to) |
| std::ostream & | opyn::operator<< (std::ostream &, const ComponentConnectionView &) |
| osc::cpp23::generator< ComponentConnectionView > | opyn::ForEachInboundConnection (const OpenSim::Component *root, const OpenSim::Component *c, std::function< bool(const OpenSim::Component &)> filter=[](const OpenSim::Component &){ return true;}) |
| OpenSim::AbstractProperty * | opyn::FindPropertyMut (OpenSim::Component &, const std::string &) |
| template<typename T > | |
| OpenSim::SimpleProperty< T > * | opyn::FindSimplePropertyMut (OpenSim::Component &c, const std::string &name) |
| const OpenSim::AbstractOutput * | opyn::FindOutput (const OpenSim::Component &, const std::string &outputName) |
| const OpenSim::AbstractOutput * | opyn::FindOutput (const OpenSim::Component &root, const OpenSim::ComponentPath &, const std::string &outputName) |
| bool | opyn::HasInputFileName (const OpenSim::Model &) |
| std::optional< std::filesystem::path > | opyn::TryFindInputFile (const OpenSim::Model &) |
| std::string | opyn::RecommendedDocumentName (const OpenSim::Model &) |
| std::optional< std::filesystem::path > | opyn::FindGeometryFileAbsPath (const OpenSim::Model &, const OpenSim::Mesh &) |
| std::string | opyn::GetMeshFileName (const OpenSim::Mesh &) |
| bool | opyn::ShouldShowInUI (const OpenSim::Component &) |
| bool | opyn::TryDeleteComponentFromModel (OpenSim::Model &, OpenSim::Component &) |
| void | opyn::CopyCommonJointProperties (const OpenSim::Joint &src, OpenSim::Joint &dest) |
| bool | opyn::DeactivateAllWrapObjectsIn (OpenSim::Model &) |
| bool | opyn::ActivateAllWrapObjectsIn (OpenSim::Model &) |
| std::vector< const OpenSim::WrapObject * > | opyn::GetAllWrapObjectsReferencedBy (const OpenSim::GeometryPath &) |
| bool | opyn::HasModelFileExtension (const std::filesystem::path &path) |
| std::unique_ptr< OpenSim::Model > | opyn::LoadModel (const std::filesystem::path &) |
| void | opyn::InitializeModel (OpenSim::Model &) |
| void | opyn::TryEquilibrateMusclesOrLogWarning (OpenSim::Model &, SimTK::State &) |
| SimTK::State & | opyn::InitializeState (OpenSim::Model &) |
| void | opyn::FinalizeFromProperties (OpenSim::Model &) |
| void | opyn::FinalizeConnections (OpenSim::Model &) |
| std::optional< size_t > | opyn::FindJointInParentJointSet (const OpenSim::Joint &) |
| std::string | opyn::GetDisplayName (const OpenSim::Geometry &) |
| osc::CStringView | opyn::GetMotionTypeDisplayName (const OpenSim::Coordinate &) |
| const OpenSim::Appearance * | opyn::TryGetAppearance (const OpenSim::Component &) |
| OpenSim::Appearance * | opyn::TryUpdAppearance (OpenSim::Component &) |
| bool | opyn::TrySetAppearancePropertyIsVisibleTo (OpenSim::Component &, bool) |
| osc::Color | opyn::to_color (const OpenSim::Appearance &) |
| osc::Color | opyn::GetSuggestedBoneColor () |
| bool | opyn::IsShowingFrames (const OpenSim::Model &) |
| bool | opyn::ToggleShowingFrames (OpenSim::Model &) |
| bool | opyn::IsShowingMarkers (const OpenSim::Model &) |
| bool | opyn::ToggleShowingMarkers (OpenSim::Model &) |
| bool | opyn::IsShowingWrapGeometry (const OpenSim::Model &) |
| bool | opyn::ToggleShowingWrapGeometry (OpenSim::Model &) |
| bool | opyn::IsShowingContactGeometry (const OpenSim::Model &) |
| bool | opyn::IsShowingForces (const OpenSim::Model &) |
| bool | opyn::ToggleShowingContactGeometry (OpenSim::Model &) |
| bool | opyn::ToggleShowingForces (OpenSim::Model &) |
| void | opyn::GetAbsolutePathString (const OpenSim::Component &, std::string &) |
| std::string | opyn::GetAbsolutePathString (const OpenSim::Component &) |
| osc::StringName | opyn::GetAbsolutePathStringName (const OpenSim::Component &) |
| OpenSim::ComponentPath | opyn::GetAbsolutePath (const OpenSim::Component &) |
| OpenSim::ComponentPath | opyn::GetAbsolutePathOrEmpty (const OpenSim::Component *) |
| std::optional< LinesOfAction > | opyn::GetEffectiveLinesOfActionInGround (const OpenSim::Muscle &, const SimTK::State &) |
| std::optional< LinesOfAction > | opyn::GetAnatomicalLinesOfActionInGround (const OpenSim::Muscle &, const SimTK::State &) |
| std::optional< ForcePoint > | opyn::TryGetContactForceInGround (const OpenSim::Model &, const SimTK::State &, const OpenSim::HuntCrossleyForce &) |
| const OpenSim::PhysicalFrame & | opyn::GetFrameUsingExternalForceLookupHeuristic (const OpenSim::Model &, const std::string &bodyNameOrPath) |
| bool | opyn::CanExtractPointInfoFrom (const OpenSim::Component &, const SimTK::State &) |
| std::optional< PointInfo > | opyn::TryExtractPointInfo (const OpenSim::Component &, const SimTK::State &) |
| OpenSim::Component & | opyn::AddComponentToAppropriateSet (OpenSim::Model &, std::unique_ptr< OpenSim::Component >) |
| OpenSim::ModelComponent & | opyn::AddModelComponent (OpenSim::Model &, std::unique_ptr< OpenSim::ModelComponent > &&) |
| template<std::derived_from< OpenSim::ModelComponent > T> | |
| T & | opyn::AddModelComponent (OpenSim::Model &model, std::unique_ptr< T > p) |
| template<std::derived_from< OpenSim::ModelComponent > T, typename... Args> requires std::constructible_from<T, Args&&...> | |
| T & | opyn::AddModelComponent (OpenSim::Model &model, Args &&... args) |
| OpenSim::Component & | opyn::AddComponent (OpenSim::Component &, std::unique_ptr< OpenSim::Component > &&) |
| template<std::derived_from< OpenSim::Component > T> | |
| T & | opyn::AddComponent (OpenSim::Component &c, std::unique_ptr< T > p) |
| template<std::derived_from< OpenSim::Component > T> | |
| T & | opyn::AddComponent (OpenSim::Component &host) |
| template<std::derived_from< OpenSim::Component > T, typename... Args> requires std::constructible_from<T, Args&&...> | |
| T & | opyn::AddComponent (OpenSim::Component &host, Args &&...args) |
| OpenSim::Body & | opyn::AddBody (OpenSim::Model &, std::unique_ptr< OpenSim::Body >) |
| template<typename... Args> requires std::constructible_from<OpenSim::Body, Args&&...> | |
| OpenSim::Body & | opyn::AddBody (OpenSim::Model &model, Args &&... args) |
| OpenSim::Joint & | opyn::AddJoint (OpenSim::Model &, std::unique_ptr< OpenSim::Joint >) |
| template<std::derived_from< OpenSim::Joint > T, typename... Args> requires std::constructible_from<T, Args&&...> | |
| T & | opyn::AddJoint (OpenSim::Model &model, Args &&... args) |
| OpenSim::Constraint & | opyn::AddConstraint (OpenSim::Model &, std::unique_ptr< OpenSim::Constraint >) |
| template<std::derived_from< OpenSim::Constraint > T, typename... Args> requires std::constructible_from<T, Args&&...> | |
| T & | opyn::AddConstraint (OpenSim::Model &model, Args &&... args) |
| OpenSim::Marker & | opyn::AddMarker (OpenSim::Model &, std::unique_ptr< OpenSim::Marker >) |
| template<typename... Args> requires std::constructible_from<OpenSim::Marker, Args&&...> | |
| OpenSim::Marker & | opyn::AddMarker (OpenSim::Model &model, Args &&... args) |
| OpenSim::Geometry & | opyn::AttachGeometry (OpenSim::Frame &, std::unique_ptr< OpenSim::Geometry >) |
| template<std::derived_from< OpenSim::Geometry > T, typename... Args> requires std::constructible_from<T, Args&&...> | |
| T & | opyn::AttachGeometry (OpenSim::Frame &frame, Args &&... args) |
| void | opyn::OverwriteGeometry (OpenSim::Model &, OpenSim::Geometry &oldGeometry, std::unique_ptr< OpenSim::Geometry > newGeometry) |
| OpenSim::PhysicalOffsetFrame & | opyn::AddFrame (OpenSim::Joint &, std::unique_ptr< OpenSim::PhysicalOffsetFrame >) |
| OpenSim::WrapObject & | opyn::AddWrapObject (OpenSim::PhysicalFrame &, std::unique_ptr< OpenSim::WrapObject >) |
| template<std::derived_from< OpenSim::WrapObject > T, typename... Args> requires std::constructible_from<T, Args&&...> | |
| T & | opyn::AddWrapObject (OpenSim::PhysicalFrame &physFrame, Args &&... args) |
| template<ClonesToRawPointer T> | |
| std::unique_ptr< T > | opyn::Clone (const T &obj) |
| template<std::derived_from< OpenSim::Component > T> | |
| void | opyn::Append (OpenSim::ObjectProperty< T > &prop, const T &c) |
| template<std::derived_from< OpenSim::Object > T, std::derived_from< OpenSim::Object > C = OpenSim::Object> | |
| std::optional< size_t > | opyn::IndexOf (const OpenSim::Set< T, C > &set, const T &el) |
| template<std::derived_from< OpenSim::Object > T, std::derived_from< T > U, std::derived_from< OpenSim::Object > C = OpenSim::Object> | |
| void | opyn::Append (OpenSim::Set< T, C > &set, std::unique_ptr< U > el) |
| template<std::derived_from< OpenSim::Object > T, std::derived_from< T > U, std::derived_from< OpenSim::Object > C = OpenSim::Object> | |
| U & | opyn::Assign (OpenSim::Set< T, C > &set, size_t index, std::unique_ptr< U > el) |
| template<std::derived_from< OpenSim::Object > T, std::derived_from< T > U, std::derived_from< OpenSim::Object > C = OpenSim::Object> | |
| U & | opyn::Assign (OpenSim::Set< T, C > &set, T &oldElement, std::unique_ptr< U > newElement) |
| template<std::derived_from< OpenSim::Object > T, std::derived_from< T > U, std::derived_from< OpenSim::Object > C = OpenSim::Object> | |
| U & | opyn::Assign (OpenSim::Set< T, C > &set, size_t index, const U &el) |
| template<std::derived_from< OpenSim::Object > T, std::derived_from< T > U, std::derived_from< OpenSim::Object > C> | |
| bool | opyn::TryDeleteItemFromSet (OpenSim::Set< T, C > &set, const U *item) |
| const OpenSim::PhysicalFrame * | opyn::TryGetParentToGroundFrame (const OpenSim::Component &) |
| std::optional< SimTK::Transform > | opyn::TryGetParentToGroundTransform (const OpenSim::Component &, const SimTK::State &) |
| std::optional< std::string > | opyn::TryGetPositionalPropertyName (const OpenSim::Component &) |
| std::optional< std::string > | opyn::TryGetOrientationalPropertyName (const OpenSim::Component &) |
| const OpenSim::Frame * | opyn::TryGetParentFrame (const OpenSim::Frame &) |
| std::optional< ComponentSpatialRepresentation > | opyn::TryGetSpatialRepresentation (const OpenSim::Component &, const SimTK::State &) |
| bool | opyn::IsValidOpenSimComponentNameCharacter (char) |
| std::string | opyn::SanitizeToOpenSimComponentName (std::string_view) |
| std::unique_ptr< OpenSim::Storage > | opyn::LoadStorage (const OpenSim::Model &, const std::filesystem::path &, const StorageLoadingParameters &={}) |
| StorageIndexToModelStateVarMappingResult | opyn::CreateStorageIndexToModelStatevarMapping (const OpenSim::Model &, const OpenSim::Storage &) |
| std::unordered_map< int, int > | opyn::CreateStorageIndexToModelStatevarMappingWithWarnings (const OpenSim::Model &, const OpenSim::Storage &) |
| void | opyn::UpdateStateVariablesFromStorageRow (OpenSim::Model &, SimTK::State &, const std::unordered_map< int, int > &columnIndexToModelStateVarIndex, const OpenSim::Storage &, int row) |
| void | opyn::UpdateStateFromStorageTime (OpenSim::Model &, SimTK::State &, const std::unordered_map< int, int > &columnIndexToModelStateVarIndex, const OpenSim::Storage &, double time) |
| std::string | opyn::WriteObjectXMLToString (const OpenSim::Object &) |
| void | opyn::ScaleModelMassPreserveMassDistribution (OpenSim::Model &model, const SimTK::State &state, double newMass) |