 |
Belle II Software
release-05-02-19
|
13 #include <framework/core/PathElement.h>
37 typedef std::shared_ptr<Path>
PathPtr;
64 void addModule(
const std::shared_ptr<Module>& module);
72 std::list<std::shared_ptr<Module> >
getModules()
const override;
89 void putModules(
const std::list<std::shared_ptr<Module> >& mlist);
96 bool contains(
const std::string& moduleType)
const;
103 std::shared_ptr<PathElement>
clone()
const override;
114 void forEach(
const std::string& loopObjectName,
const std::string& arrayName,
PathPtr path);
117 void doWhile(
PathPtr path,
const std::string& condition,
unsigned int maxIterations);
bool isEmpty() const
Returns true if this Path doesn't contain any elements.
static void exposePythonAPI()
Exposes methods of the Path class to Python.
Base for classes that can be elements of a Path.
bool contains(const std::string &moduleType) const
Does this Path contain a module of the given type?
void addModule(const std::shared_ptr< Module > &module)
Adds a module to the path.
void addIndependentPath(const PathPtr &independent_path, std::string ds_ID, const boost::python::list &merge_back)
See 'pydoc3 basf2.Path'.
void forEach(const std::string &loopObjectName, const std::string &arrayName, PathPtr path)
See 'pydoc3 basf2.Path'.
Abstract base class for different kinds of events.
void doWhile(PathPtr path, const std::string &condition, unsigned int maxIterations)
See 'pydoc3 basf2.Path'.
std::shared_ptr< Path > PathPtr
Defines a pointer to a path object as a boost shared pointer.
std::list< std::shared_ptr< Module > > buildModulePathList(bool unique=true) const
Builds a list of all modules which could be executed during the data processing.
std::list< std::shared_ptr< PathElement > > m_elements
The list of path elements (Modules and sub-Paths)
std::shared_ptr< PathElement > clone() const override
Create an independent copy of this path, recreating all contained modules with the same parameters.
void addPath(const PathPtr &path)
See 'pydoc3 basf2.Path'.
std::string getPathString() const override
return a string of the form [module a -> module b -> [another path]]
Implements a path consisting of Module and/or Path objects.
void putModules(const std::list< std::shared_ptr< Module > > &mlist)
Replaces all Modules and sub-Paths with the specified Module list.
Iterator over a Path (returning Module pointers).
std::list< std::shared_ptr< Module > > getModules() const override
Returns a list of the modules in this path.