|
SourceXtractorPlusPlus 0.21
SourceXtractor++, the next generation SExtractor
|
A SourceGroupInterface implementation which used a TaskProvider to compute missing properties. More...
#include <SourceGroupWithOnDemandProperties.h>


Classes | |
| class | EntangledSource |
Protected Member Functions | |
| const Property & | getProperty (const PropertyId &property_id) const override |
| void | setProperty (std::unique_ptr< Property > property, const PropertyId &property_id) override |
Protected Member Functions inherited from SourceXtractor::SourceInterface | |
| virtual | ~SourceInterface ()=default |
| Destructor. | |
| template<typename PropertyType > | |
| const PropertyType & | getProperty (unsigned int index=0) const |
| Convenience template method to call getProperty() with a more user-friendly syntax. | |
| template<typename PropertyType , typename ... Args> | |
| void | setIndexedProperty (std::size_t index, Args... args) |
| Convenience template method to call setProperty() with a more user-friendly syntax. | |
| template<typename PropertyType , typename ... Args> | |
| void | setProperty (Args... args) |
Private Member Functions | |
| void | clearGroupProperties () |
Private Attributes | |
| std::list< SourceWrapper > | m_sources |
| PropertyHolder | m_property_holder |
| std::shared_ptr< TaskProvider > | m_task_provider |
Additional Inherited Members | |
Public Types inherited from SourceXtractor::SourceGroupInterface | |
| using | iterator = std::list<SourceWrapper>::iterator |
| using | const_iterator = std::list<SourceWrapper>::const_iterator |
A SourceGroupInterface implementation which used a TaskProvider to compute missing properties.
Definition at line 43 of file SourceGroupWithOnDemandProperties.h.
|
explicit |
Definition at line 32 of file SourceGroupWithOnDemandProperties.cpp.
|
virtualdefault |
Destructor.
|
overridevirtual |
Implements SourceXtractor::SourceGroupInterface.
Definition at line 60 of file SourceGroupWithOnDemandProperties.cpp.
References clearGroupProperties(), std::list< T >::emplace_back(), m_sources, and std::move().

|
overridevirtual |
Implements SourceXtractor::SourceGroupInterface.
Definition at line 52 of file SourceGroupWithOnDemandProperties.cpp.
References std::list< T >::cbegin(), and m_sources.

|
overridevirtual |
Implements SourceXtractor::SourceGroupInterface.
Definition at line 36 of file SourceGroupWithOnDemandProperties.cpp.
References std::list< T >::begin(), and m_sources.

|
overridevirtual |
Implements SourceXtractor::SourceGroupInterface.
Definition at line 44 of file SourceGroupWithOnDemandProperties.cpp.
References std::list< T >::cbegin(), and m_sources.

|
overridevirtual |
Implements SourceXtractor::SourceGroupInterface.
Definition at line 48 of file SourceGroupWithOnDemandProperties.cpp.
References std::list< T >::cend(), and m_sources.

|
private |
Definition at line 110 of file SourceGroupWithOnDemandProperties.cpp.
References SourceXtractor::PropertyHolder::clear(), m_property_holder, and m_sources.
Referenced by addSource(), merge(), and removeSource().

|
overridevirtual |
Implements SourceXtractor::SourceGroupInterface.
Definition at line 56 of file SourceGroupWithOnDemandProperties.cpp.
References std::list< T >::cend(), and m_sources.

|
overridevirtual |
Implements SourceXtractor::SourceGroupInterface.
Definition at line 40 of file SourceGroupWithOnDemandProperties.cpp.
References std::list< T >::end(), and m_sources.

|
overrideprotectedvirtual |
Returns a reference to the requested property. The property may be computed if needed Throws a PropertyNotFoundException if the property cannot be provided.
Reimplemented from SourceXtractor::SourceGroupInterface.
Definition at line 84 of file SourceGroupWithOnDemandProperties.cpp.
References Elements::Logging::debug(), SourceXtractor::PropertyHolder::getProperty(), SourceXtractor::PropertyHolder::isPropertySet(), Euclid::Configuration::logger, m_property_holder, and m_task_provider.

|
virtual |
Returns a reference to the requested property. The property may be computed if needed Throws a PropertyNotFoundException if the property cannot be provided.
Reimplemented from SourceXtractor::SourceGroupInterface.
|
inline |
Convenience template method to call getProperty() with a more user-friendly syntax.
Definition at line 57 of file SourceInterface.h.
|
overridevirtual |
Implements SourceXtractor::SourceGroupInterface.
Definition at line 71 of file SourceGroupWithOnDemandProperties.cpp.
References clearGroupProperties(), std::list< T >::emplace_back(), m_sources, and std::move().

|
overridevirtual |
Implements SourceXtractor::SourceGroupInterface.
Definition at line 65 of file SourceGroupWithOnDemandProperties.cpp.
References clearGroupProperties(), std::list< T >::erase(), and m_sources.

|
inline |
Definition at line 72 of file SourceInterface.h.
|
overrideprotectedvirtual |
Reimplemented from SourceXtractor::SourceGroupInterface.
Definition at line 106 of file SourceGroupWithOnDemandProperties.cpp.
References m_property_holder, std::move(), and SourceXtractor::PropertyHolder::setProperty().

|
virtual |
Reimplemented from SourceXtractor::SourceGroupInterface.
Implements SourceXtractor::SourceGroupInterface.
Definition at line 117 of file SourceGroupWithOnDemandProperties.cpp.
References m_sources, and std::list< T >::size().

|
private |
Definition at line 87 of file SourceGroupWithOnDemandProperties.h.
Referenced by clearGroupProperties(), getProperty(), SourceXtractor::SourceGroupWithOnDemandProperties::EntangledSource::getProperty(), setProperty(), and SourceXtractor::SourceGroupWithOnDemandProperties::EntangledSource::setProperty().
|
private |
Definition at line 86 of file SourceGroupWithOnDemandProperties.h.
Referenced by addSource(), begin(), begin(), cbegin(), cend(), clearGroupProperties(), end(), end(), merge(), removeSource(), and size().
|
private |
Definition at line 88 of file SourceGroupWithOnDemandProperties.h.
Referenced by getProperty().