SourceXtractorPlusPlus  0.11
Please provide a description of the project.
SourceWithOnDemandProperties.h
Go to the documentation of this file.
1 
23 #ifndef _SEFRAMEWORK_SOURCE_SOURCE_H
24 #define _SEFRAMEWORK_SOURCE_SOURCE_H
25 
26 #include <vector>
27 
30 
31 namespace SourceXtractor {
32 
33 class TaskProvider;
34 
44 
45 public:
46 
50  virtual ~SourceWithOnDemandProperties() = default;
51 
52  // removes copy/move constructors and assignment operators
53 
58 
61 
62  // Note : Because the get/setProperty() methods of the SourceInterface are
63  // templated, the overrides of the non-templated versions will hide them. For
64  // this reason it is necessary to re-introduce the templated methods, which is
65  // done by the using statements below.
68 
69 protected:
70 
71  // Implementation of SourceInterface
72  virtual const Property& getProperty(const PropertyId& property_id) const override;
73  virtual void setProperty(std::unique_ptr<Property> property, const PropertyId& property_id) override;
74 
75 private:
78 }; /* End of Source class */
79 
80 } /* namespace SourceXtractor */
81 
82 #endif
SourceXtractor::SourceWithOnDemandProperties::SourceWithOnDemandProperties
SourceWithOnDemandProperties(const SourceWithOnDemandProperties &)=delete
std::shared_ptr
STL class.
SourceXtractor::SourceWithOnDemandProperties::m_property_holder
PropertyHolder m_property_holder
Definition: SourceWithOnDemandProperties.h:77
SourceXtractor::Property
Base class for all Properties. (has no actual content)
Definition: Property.h:33
SourceInterface.h
SourceXtractor::PropertyHolder
A class providing a simple implementation of a container of properties.
Definition: PropertyHolder.h:43
SourceXtractor::PropertyId
Identifier used to set and retrieve properties.
Definition: PropertyId.h:40
SourceXtractor
Definition: Aperture.h:30
SourceXtractor::SourceWithOnDemandProperties::operator=
SourceWithOnDemandProperties & operator=(SourceWithOnDemandProperties &&)=delete
SourceXtractor::SourceWithOnDemandProperties::~SourceWithOnDemandProperties
virtual ~SourceWithOnDemandProperties()=default
Destructor.
SourceXtractor::SourceWithOnDemandProperties::getProperty
virtual const Property & getProperty(const PropertyId &property_id) const=0
SourceXtractor::SourceWithOnDemandProperties::operator=
SourceWithOnDemandProperties & operator=(const SourceWithOnDemandProperties &)=delete
PropertyHolder.h
SourceXtractor::SourceWithOnDemandProperties::m_task_provider
std::shared_ptr< const TaskProvider > m_task_provider
Definition: SourceWithOnDemandProperties.h:76
SourceXtractor::SourceWithOnDemandProperties
Definition: SourceWithOnDemandProperties.h:43
SourceXtractor::SourceInterface::getProperty
const PropertyType & getProperty(unsigned int index=0) const
Convenience template method to call getProperty() with a more user-friendly syntax.
Definition: SourceInterface.h:57
SourceXtractor::SourceInterface
The SourceInterface is an abstract "source" that has properties attached to it.
Definition: SourceInterface.h:46
SourceXtractor::SourceWithOnDemandProperties::setProperty
virtual void setProperty(std::unique_ptr< Property > property, const PropertyId &property_id)=0
std::unique_ptr
STL class.
SourceXtractor::SourceInterface::setProperty
void setProperty(Args... args)
Definition: SourceInterface.h:72
SourceXtractor::SourceWithOnDemandProperties::SourceWithOnDemandProperties
SourceWithOnDemandProperties(SourceWithOnDemandProperties &&)=delete