PropertyUser Class Referenceabstract

Abstract PropertyUser class. More...

#include <ArmarXCore/core/application/properties/PropertyUser.h>

+ Inheritance diagram for PropertyUser:

Classes

struct  Impl
 

Public Member Functions

virtual PropertyDefinitionsPtr createPropertyDefinitions ()=0
 Creates the property definition container.
 
std::vector< std::string > getComponentProxyNames ()
 
Ice::PropertiesPtr getIceProperties () const
 Returns the set of Ice properties.
 
template<typename PropertyType>
Property< PropertyType > getProperty (const std::string &name)
 Property creation and retrieval.
 
template<typename PropertyType>
Property< PropertyType > getProperty (const std::string &name) const
 Hack to allow using getProperty in const-modified methods.
 
template<class T>
void getProperty (std::atomic< T > &val, const std::string &name) const
 
template<class T>
void getProperty (T &val, const std::string &name) const
 
template<class T>
std::vector< T > getPropertyAsCSV (const std::string &name, const std::string &splitBy=",;", bool trimElements=true, bool removeEmptyElements=true)
 
template<class ContainerT>
void getPropertyAsCSV (ContainerT &val, const std::string &name, const std::string &splitBy=",;", bool trimElements=true, bool removeEmptyElements=true)
 
PropertyDefinitionsPtr getPropertyDefinitions ()
 Returns the component's property definition container.
 
std::vector< std::string > getSubscribedTopicNames ()
 
std::vector< std::string > getTopicProxyNames ()
 
bool hasProperty (const std::string &name)
 
virtual void icePropertiesUpdated (const std::set< std::string > &changedProperties)
 This method is called when new Properties are set via setIceProperties().
 
virtual void injectPropertyDefinitions (PropertyDefinitionsPtr &)
 Called after createPropertyDefinitions by Component to inject propertes of ComponentPlugin.
 
 PropertyUser ()
 
virtual void setIceProperties (Ice::PropertiesPtr properties)
 Sets the Ice properties.
 
bool tryAddProperty (const std::string &propertyName, const std::string &value)
 
virtual void updateIceProperties (const std::map< std::string, std::string > &changes)
 
void updateProperties ()
 
void updateProxies (IceManagerPtr)
 
 ~PropertyUser () override
 

Detailed Description

Abstract PropertyUser class.

PropertyUser provides the interface to create a PropertyDefinition as well as the access to each property which has been defined.

Properties can be updated by calling PropertyUser::setIceProperties(). A class inheriting from PropertyUser can react to property changes by overriding PropertyUser::propertiesUpdated();

Constructor & Destructor Documentation

◆ PropertyUser()

◆ ~PropertyUser()

~PropertyUser ( )
override

Member Function Documentation

◆ createPropertyDefinitions()

virtual PropertyDefinitionsPtr createPropertyDefinitions ( )
pure virtual

Creates the property definition container.

Note
Implement this factory function to create your own definitions.
Returns
Property definition container pointer

Implemented in ik_demo, AffordanceExtraction, AffordancePipelineVisualization, AffordanceUpdateListener, Application, ArMarkerExternalCameraCalibration, ArmarXFileLogger, ArmarXGuiApp, ArmarXPhysicsWorldVisualization, ArmarXSimulatorWindow, ArmarXTimeserver, ProprioceptionStressTest, LegacyRobotStateMemoryAdapter, MemoryNameSystem, GraspMemory, HumanMemory, LaserScansMemory, ObjectMemory, ReasoningMemory, RobotStateMemory, VisionMemory, AronComponentConfigExample, ArticulatedObjectLocalizerExample, ArticulatedObjectLocalizerDynamicSimulation, ArVizExample, ArVizInteractExample, ArVizStorage, ATINetFTUnit, BlurrinessMetric, CoFusionProcessor, CollisionCheckerComponent, Component, TaskOutcomeDebugger, ConditionHandler, Component, Component, Component, Component, Component, Component, Component, Component, Component, RTUnit, CropRobotFromImage, CyberGloveObserver, DebugDrawerComponent, DebugDrawerToArVizComponent, DebugObserver, DemoStateManager, DenseCRFSegmentationProcessor, DepthImageProviderDynamicSimulation, DHParameterOptimizationLogger, DMPComponent, DSObstacleAvoidance, DummyAgentReporter, DummyCriterion, DummyObjectLocalizer, DummyTextToSpeech, DummyWorldStateObserver, DynamicObstacleManager, EfficientRANSACPrimitiveExtractor, EmergencyStopMaster, EmergencyStopNode< T >, ExampleMemory, ExampleMemoryClient, ExternalApplicationManager, FaceRecognition, FakeObjectDetector, FakeWorkingMemoryObjectLocalizer, FamiliarObjectDetectionExample, FilterKnownObjects, FindAndGraspObjectContext, FlyCaptureImageProvider, ForceTorqueObserver, ForceTorqueUnit, ForceTorqueUnitDynamicSimulation, ForceTorqueUnitSimulation, FrameTracking, GamepadControlUnit, GamepadUnit, GamepadUnitObserver, GeneralPurposeMemory, GraspCandidateObserver, GraspingManager, GraspProviderExample, GraspSelectionCriterionBase, GraspSelectionManager, HandUnit, HandUnitDynamicSimulation, HandUnitSimulation, HapticObserver, HapticUnit, HapticUnitDynamicSimulation, HeadIKUnit, HokuyoLaserUnit, HumanObstacleDetection, ImageProviderDynamicSimulation, ImageProviderGodotSimulation, ImageSourceSelection, ImageToPointCloud, IMUSimulation, IndexMemory, InertialMeasurementUnit, InertialMeasurementUnitObserver, InterventionDebugger, InterventionObserver, JsonStorage, KBMComponent, KinematicSelfLocalization, KinematicUnit, KinematicUnitDynamicSimulation, KinematicUnitObserver, KinematicUnitSimulation, KITHandUnit, KITProstheticHandObserver, KITProstheticHandUnit, KLGImageProvider, LaserScannerSimulation, LaserScannerObstacleDetection, LaserScannerPointCloudProvider, LaserScannerSelfLocalisation, LaserScannerUnitObserver, LegacyRGBDOpenPoseEstimation, Component, Component, SelfLocalization, LogSpamTest, MaskFilterPointCloudProcessor, Component, MetaWearIMU, MetaWearIMUObserver, MMMPlayer, MMMSimulation, MotionMemory, MotionPlanningServer, MultiHandUnit, MultiImageProvider, MultiSensePointCloudProvider, MultiViewPointCloudProcessor, NaturalGraspFilter, NaturalIKTest, Component, Component, Component, Component, Component, Component, Component, Component, Component, LaserScannerFeatureExtraction, Component, Component, Component, Component, Component, Component, Component, Component, ObjectInstanceToIndex, ObjectLocalizationSaliency, ObjectLocalizerDynamicSimulation, ObjectMemoryEditor, ObjectPoseClientExample, ObjectPoseProviderExample, ObstacleAvoidingPlatformUnit, ObstacleAwarePlatformUnit, OpenCVImageStabilizer, OpenPoseEstimation, OpenPoseSimulation, OpossumLogger, OpticalFlow, OptoForce, OptoForceUnit, OptoForceUnitObserver, OrientedTactileSensorUnit, OrientedTactileSensorUnitObserver, PathPlanner, PingLoadTest, PlannedMotionProvider, PlatformContext, PlatformUnit, PlatformUnitDynamicSimulation, PlatformUnitObserver, PlatformUnitSimulation, PointCloudRecorder, PointCloudUtility, PrimitiveExtractionParameterTuning, PrimitiveExtractor, PrimitiveVisualization, PythonApplicationManager, RCImageProvider, ReflexCombination, RemoteGuiExample2, RemoteGuiProvider, RemoteObjectNode, ResultImageFuser, RGBDPoseEstimationWithMemoryWriter, VirtualRobotReaderExampleClient, Component, RobotControl, RobotDefinition, RobotHandLocalizationDynamicSimulation, RobotHealth, RobotHealthDummy, RobotIK, RobotNameService, RobotPoseUnit, RobotPoseUnitDynamicSimulation, RobotStatechartContext, RobotStateComponent, RobotStateObserver, RobotToArViz, RobotUnit, RobotUnitSimulation, RTABMapRegistration, SceneEditor, SceneModifier, SelfLocalization, SelfLocalizationDynamicSimulation, ShapesSupportRelations, SemanticGraphExample, SemanticGraphStorage, SemanticRelationAnalyzer, SimpleVirtualRobot, SimpleEpisodicMemoryKinematicUnitConnector, SimpleEpisodicMemoryPlatformUnitConnector, SimpleGraspGenerator, SimpleRobotPlacement, SimpleStatechartExecutor, Component, Component, SimulationObjectPoseProvider, Simulator, SimulatorToArviz, SimulatorViewerApp, SkillDashboard, BringObjectSkillProvider, GraspControlSkillProvider, HandControlSkillProvider, JointControlSkillProvider, PlatformControlSkillProvider, SkillProviderExample, TCPControlSkillProvider, VisualSearchSkillProvider, VisualServoTCPControlSkillProvider, SkillsMemory, SpeechObserver, StatechartContext, StatechartExecutorExample, StaticAgentReporter, StreamDecoderImageProvider, StreamReceiver, SubjectMemory, SystemStateMemory, TabletopSegmentation, TaskOutcomeMemory, TCPControllerSubUnit, TCPControlUnit, TCPControlUnitObserver, TopicRecorderComponent, TopicReplayer, TopicTimingClient, TopicTimingServer, TrackingError, TrajectoryControllerSubUnit, TrajectoryPlayer, ValveAttention, ViconMarkerProvider, Component, Component, Component, Component, Component, ViewSelection, VirtualRobotWriterExample, MemoryGrapher, WeissHapticUnit, WorkingMemoryToArViz, XMLStateComponent, XsensIMU, AbstractLongtermMemory, AbstractWorkingMemory, AgentAtPredicateProvider, ArmarXObjectsImporter, CommonPlacesLearner, CommonPlacesTester, CommonStorage, EntityDrawerComponent, GraphNodePoseResolver, GraspablePredicateProvider, HandPredicateProvider, LongtermMemory, ObjectAtPredicateProvider, ObjectLocalizationMemoryUpdater, ObjectMemoryObserver, PriorKnowledge, PriorKnowledgeImporter, ProfilerStorage, PutAwayLocationPredicateProvider, SimoxSceneImporter, SimpleEpisodicMemory, SimpleEpisodicMemoryWorkingMemoryConnector, WorkingMemory, WorkingMemoryExample, WorkingMemoryObjectPoseProvider, WorkingMemoryUpdater, WorldStateUpdaterBase, XMLSceneImporter, Component, StreamProviderI, ArMarkerLocalizer, ArMarkerLocalizerOpenCV, ArMemToImageProvider, ArMemToPointCloudProvider, AzureKinectIRImageProvider, AzureKinectPointCloudProvider, BigBowlLocalization, BlobRecognition, CalibrationCreator2, CalibrationCreator, ColorMarkerObjectLocalizer, HumanActivityDebugger, HumanRobotInteractionDebugger, PersonInstanceUpdater, PersonMemoryDebugger, Component, PlaybackImageProvider, DeepFaceRecognition, Component, DummyArMarkerLocalizer, FakePointCloudProvider, HandMarkerLocalization, IEEE1394ImageProvider, ImagePassThrough, ImageProcessor, ImageSequenceProvider, ImageToArMem, Component, IntelRealSenseProvider, KinectAndCameraCalibration, KinectV1PointCloudProvider, KinectV2PointCloudProvider, LabeledPointCloudMerger, LegacyRGBOpenPoseEstimation, MaskRCNNPointCloudObjectLocalizer, NerianVisionImageProvider, NerianVisionPointCloudProvider, NuitrackPointCloudProvider, ObjectLearningByPushing, ObjectLocalizerProcessor, ObjectShapeClassification, OLPEvaluation, OpenNIImageProvider, OpenNIPointCloudProvider, Component, PointCloudFilter, PointCloudObjectLocalizer, PointCloudSegmenter, PointCloudToArMem, PointCloudToArViz, PointCloudVisualization, RCPointCloudProvider, ResultPointCloudProvider, RGBDHandLocalizer, RGBDOpenPoseEstimation, RobotHandLocalizationWithFingertips, SegmentAABBShapesProvider, SegmentableObjectRecognition, SegmentableTemplateRecognition, SegmentRansacShapeExtractor, SegmentSpatialRelations, SimpleEpisodicMemoryImageConnector, SimpleEpisodicMemoryOpenPoseEstimationConnector, SimpleEpisodicMemorySemanticGraphConnector, StereoCameraProvider, StereoImagePointCloudProvider, TexturedObjectRecognition, UCLObjectRecognition, UserAssistedSegmenter, VideoFileImageProvider, VisualContactDetection, VoxelGridMappingProvider, WebCamImageProvider, X11ScreenCaptureImageProvider, and Component.

◆ getComponentProxyNames()

std::vector< std::string > getComponentProxyNames ( )

◆ getIceProperties()

Ice::PropertiesPtr getIceProperties ( ) const

Returns the set of Ice properties.

Returns
Pointer to the Ice::Properties set.

◆ getProperty() [1/4]

template<typename PropertyType>
Property< PropertyType > getProperty ( const std::string & name)

Property creation and retrieval.

Parameters
nameRequested property name (note: without prefix)
Returns
Property instance

◆ getProperty() [2/4]

template<typename PropertyType>
Property< PropertyType > getProperty ( const std::string & name) const
inline

Hack to allow using getProperty in const-modified methods.

◆ getProperty() [3/4]

template<class T>
void getProperty ( std::atomic< T > & val,
const std::string & name ) const
inline

◆ getProperty() [4/4]

template<class T>
void getProperty ( T & val,
const std::string & name ) const
inline

◆ getPropertyAsCSV() [1/2]

template<class T>
std::vector< T > getPropertyAsCSV ( const std::string & name,
const std::string & splitBy = ",;",
bool trimElements = true,
bool removeEmptyElements = true )
inline

◆ getPropertyAsCSV() [2/2]

template<class ContainerT>
void getPropertyAsCSV ( ContainerT & val,
const std::string & name,
const std::string & splitBy = ",;",
bool trimElements = true,
bool removeEmptyElements = true )
inline

◆ getPropertyDefinitions()

PropertyDefinitionsPtr getPropertyDefinitions ( )

Returns the component's property definition container.

Returns
Property definition container

◆ getSubscribedTopicNames()

std::vector< std::string > getSubscribedTopicNames ( )

◆ getTopicProxyNames()

std::vector< std::string > getTopicProxyNames ( )

◆ hasProperty()

bool hasProperty ( const std::string & name)

◆ icePropertiesUpdated()

void icePropertiesUpdated ( const std::set< std::string > & changedProperties)
virtual

This method is called when new Properties are set via setIceProperties().

Each class deriving from PropertyUser can overwrite this method in order to react to changed properties.

Reimplemented in Application.

◆ injectPropertyDefinitions()

void injectPropertyDefinitions ( PropertyDefinitionsPtr & )
virtual

Called after createPropertyDefinitions by Component to inject propertes of ComponentPlugin.

Reimplemented in Component.

◆ setIceProperties()

void setIceProperties ( Ice::PropertiesPtr properties)
virtual

Sets the Ice properties.

Parameters
propertiesIce Properties.

Reimplemented in Application.

◆ tryAddProperty()

bool tryAddProperty ( const std::string & propertyName,
const std::string & value )

◆ updateIceProperties()

void updateIceProperties ( const std::map< std::string, std::string > & changes)
virtual

◆ updateProperties()

void updateProperties ( )

◆ updateProxies()

void updateProxies ( IceManagerPtr ice_manager)

The documentation for this class was generated from the following files: