charon-core
0.3.1
|
Connects its output to one of its inputs according to a statement or inputnumber. More...
#include <charon-core/VirtualSlotSwitch.h>
Public Member Functions | |
VirtualSlotSwitch (const std::string &name="") | |
default constructor More... | |
Public Member Functions inherited from ParameteredObject | |
virtual | ~ParameteredObject () |
Delete parametered object. More... | |
void | clearMetadata () |
delete metadata cache to save some space More... | |
bool | executed () const |
get execution status | |
std::string | fixCase (const std::string &parOrSlotName) const |
restore parameter/slot name casing | |
const ParameterFile & | getMetadata () |
get metadata | |
virtual void | initialize () |
initialize plugin More... | |
virtual void | loadParameters (const ParameterFile &pf) |
Load parameter from parameter file. More... | |
void | loadSlots (const ParameterFile &pf, const PluginManagerInterface *man) |
Load slot connection from parameter file. More... | |
virtual void | onLoad (const ParameterFile &pf, const PluginManagerInterface *man) |
Custom Load operation. More... | |
virtual void | onSave (ParameterFile &pf) const |
Custom Save operation. More... | |
virtual void | resetExecuted (bool propagate=true) |
reset execution status More... | |
virtual void | run () |
Update object. More... | |
void | save (ParameterFile &pf) const |
Save own content to the given parameter file. More... | |
virtual void | saveParameters (ParameterFile &pf) const |
Save parameters to parameter file. More... | |
virtual void | setExecuted (bool value) |
set property _executed More... | |
const std::string & | getClassName () const |
class name | |
const std::string & | getName () const |
instance name | |
virtual const std::string | getTemplateType () const |
get template type as string More... | |
Slot * | getSlot (const std::string &slotName) const |
Get pointer to some slot (by name) More... | |
const std::map< std::string, Slot * > & | getInputSlots () const |
Get all input slots as map. More... | |
const std::map< std::string, Slot * > & | getOutputSlots () const |
Get all output slots as map. More... | |
const std::map< std::string, AbstractParameter * > & | getParameters () const |
Get all Parameters as a map. More... | |
std::set< std::string > | getNeighbours () const |
Get connected neighbours of the current object. More... | |
std::set< std::string > | getNeighbours (const ParameterFile &pf) const |
Get connected neighbours of the current object. More... | |
virtual bool | connected () const |
Check if object is ready for work. More... | |
void | raise (const std::string &message) const |
throw an exception with information about the ParameteredObject More... | |
AbstractParameter & | getParameter (const std::string &name) const |
template<typename T > | |
void | setParameter (std::string name, T value) |
bool | isDynamic () |
Public Attributes | |
Parameter< bool > | boolean_inputnumber |
InputSlot< int > | inputnumber |
connects output to according input | |
Parameter< int > | number_of_inputs |
number_of_inputs | |
VirtualOutputSlot | output |
output connected to one of the inputs | |
InputSlot< bool > | statement |
statement to switch between input 0 and input 1 | |
Public Attributes inherited from ParameteredObject | |
Parameter< bool > | _active |
ParameteredObject activation state. More... | |
Protected Member Functions | |
virtual void | execute () |
Update object. | |
virtual void | prepareDynamicInterface (const ParameterFile &file) |
prepare interface of parameters and slots More... | |
void | setNumberOfVirtualSlots (int num) |
Protected Member Functions inherited from ParameteredObject | |
ParameteredObject (const std::string &className, const std::string &name="", const std::string &doc="") | |
Default constructor. More... | |
void | _addInputSlot (Slot &slot, const std::string &name, const std::string &displayname, const std::string &doc, const std::string &type) |
Register input slot. More... | |
void | _addOutputSlot (Slot &slot, const std::string &name, const std::string &displayname, const std::string &doc, const std::string &type) |
Register output slot. More... | |
void | _addParameter (AbstractParameter ¶m, const std::string &name, const std::string &doc, const std::string &type="") |
Add parameters. More... | |
template<class T > | |
void | _addParameter (Parameter< T > ¶m, const std::string &name, const std::string &doc, const T &defVal, const std::string &type="") |
Same function but adding a default value. More... | |
bool | _addSomething (const std::string &extension, const std::string &name, const std::string &doc, const std::string &type, const std::string &defaultValue="") |
Common code for _addParameter, _addInputSlot, _addOutputSlot. More... | |
void | _commitSlots () |
commit slot data | |
std::set< ParameteredObject * > | _getTargetNodes () |
get target nodes More... | |
void | _prepareSlots () |
prepare slot data | |
void | _removeInputSlot (std::string name) |
Remove an input slot. | |
void | _removeOutputSlot (std::string name) |
Remove an output slot. | |
bool | _removeSomething (const std::string &extension, const std::string &name) |
Remove something. Iverse of _addSomething. | |
void | _setDynamic (bool v) |
Specifies if the ParameteredObject is dynamic. | |
void | _setTags (const std::string &tags) |
Register additional tag names for grouping ParameteredObjects. More... | |
virtual void | finalize () |
finalize plugin More... | |
void | runPreceeding () const |
run all preceeding objects | |
void | runPreceeding (const Slot &slot) const |
run all preceeding objects connected to a particular slot More... | |
void | _addInputSlot (Slot &slot, const std::string &name, const std::string &doc, const std::string &type="") |
These functions needs to be called by the derived class in order to register all objects which can be used as inputs or outputs. More... | |
void | _addOutputSlot (Slot &slot, const std::string &name, const std::string &doc, const std::string &type="") |
Register output slot. More... | |
Protected Attributes | |
std::vector< VirtualInputSlot * > | _virtualInputSlots |
std::vector< VirtualOutputSlot * > | _virtualOutputSlots |
int | oldselection |
Additional Inherited Members | |
Public Types inherited from ParameteredObject | |
enum | build_type { UNDEFINED_BUILD = 0, DEBUG_BUILD = 1, RELEASE_BUILD = 2 } |
defined build type More... | |
enum | template_type { TYPE_DOUBLE = 0, TYPE_FLOAT = 1, TYPE_INT = 2 } |
Integer which represents a template type. More... | |
Connects its output to one of its inputs according to a statement or inputnumber.
Definition at line 46 of file VirtualSlotSwitch.h.
VirtualSlotSwitch::VirtualSlotSwitch | ( | const std::string & | name = "" | ) |
name | instance name |
Definition at line 28 of file VirtualSlotSwitch.cpp.
References ParameteredObject::_addInputSlot(), ParameteredObject::_addOutputSlot(), ParameteredObject::_setDynamic(), VirtualOutputSlot::getName(), VirtualOutputSlot::getType(), inputnumber, number_of_inputs, output, and statement.
|
protectedvirtual |
This function may change the number and kind of slots/parameters depending on certain parameters in the ParameterFile. Since the interface may change depending on the parameter file content, such modules are called dynamic modules.
The default implementation does nothing and is suitable for all non-dynamic modules. Re-implement this function in dynamic modules.
file | parameter file describing the workflow |
Reimplemented from ParameteredObject.
Definition at line 108 of file VirtualSlotSwitch.cpp.
References Parameter< T >::load(), number_of_inputs, output, and VirtualSlot::setVirtualPartnerSlot().