23 #ifndef _SEFRAMEWORK_SOURCE_SOURCEGROUP_H
24 #define _SEFRAMEWORK_SOURCE_SOURCEGROUP_H
28 #include <type_traits>
71 unsigned int size()
const override;
SourceGroupWithOnDemandProperties & m_group
const Property & getProperty(const PropertyId &property_id) const override
bool operator<(const EntangledSource &other) const
PropertyHolder m_property_holder
std::shared_ptr< SourceInterface > m_source
virtual ~EntangledSource()=default
void setProperty(std::unique_ptr< Property > property, const PropertyId &property_id) override
EntangledSource(std::shared_ptr< SourceInterface > source, SourceGroupWithOnDemandProperties &group)
A SourceGroupInterface implementation which used a TaskProvider to compute missing properties.
void addSource(std::shared_ptr< SourceInterface > source) override
void merge(const SourceGroupInterface &other) override
PropertyHolder m_property_holder
iterator begin() override
std::list< SourceWrapper > m_sources
std::shared_ptr< TaskProvider > m_task_provider
void clearGroupProperties()
virtual ~SourceGroupWithOnDemandProperties()=default
Destructor.
const_iterator cbegin() override
SourceGroupWithOnDemandProperties(std::shared_ptr< TaskProvider > task_provider)
virtual void setProperty(std::unique_ptr< Property > property, const PropertyId &property_id)=0
iterator removeSource(iterator pos) override
virtual const Property & getProperty(const PropertyId &property_id) const=0
const_iterator cend() override
unsigned int size() const override