Class ComponentBase
Defined in File component.hpp
Derived Types
public holoscan::Component
(Class Component)public holoscan::Operator
(Class Operator)
- class ComponentBase
-
ComponentBase() = default
-
template<typename ArgT, typename ...ArgsT, typename = std::enable_if_t<!std::is_base_of_v<ComponentBase, std::decay_t<ArgT>> && (std::is_same_v<Arg, std::decay_t<ArgT>> || std::is_same_v<ArgList, std::decay_t<ArgT>>)>>
inline explicit ComponentBase(ArgT &&arg, ArgsT&&... args) Construct a new Component object.
- Parameters
-
virtual ~ComponentBase() = default
-
inline int64_t id() const
Get the identifier of the component.
By default, the identifier is set to -1. It is set to a valid value when the component is initialized.
With the default executor (GXFExecutor), the identifier is set to the GXF component ID.
- Returns
-
inline const std::string &name() const
Get the name of the component.
- Returns
-
inline void add_arg(const Arg &arg)
Add an argument to the component.
- Parameters
-
inline void add_arg(Arg &&arg)
Add an argument to the component.
- Parameters
-
inline void add_arg(const ArgList &arg)
Add a list of arguments to the component.
- Parameters
-
inline void add_arg(ArgList &&arg)
Add a list of arguments to the component.
- Parameters
-
inline std::vector<Arg> &args()
Get the list of arguments.
- Returns
-
inline virtual void initialize()
-
virtual YAML::Node to_yaml_node() const
Get a YAML representation of the component.
- Returns
-
std::string description() const
Get a description of the component.
- Returns
-
void update_params_from_args(std::unordered_map<std::string, ParameterWrapper> ¶ms)
-
virtual void reset_graph_entities()
-
int64_t id_ = -1
-
std::string name_ = ""
-
Fragment *fragment_ = nullptr
-
std::vector<Arg> args_
- friend class holoscan::Executor
- friend class holoscan::gxf::GXFExecutor
- friend class holoscan::Fragment
Base class for all components.
This class is the base class for all components including <a class="reference internal" href="classholoscan_1_1Operator.html#classholoscan_1_1Operator" target="_self">holoscan::Operator</a>
, <a class="reference internal" href="classholoscan_1_1Condition.html#classholoscan_1_1Condition" target="_self">holoscan::Condition</a>
, and <a class="reference internal" href="classholoscan_1_1Resource.html#classholoscan_1_1Resource" target="_self">holoscan::Resource</a>
. It is used to define the common interface for all components.
Subclassed by holoscan::Component, holoscan::Operator
Public Functions
Protected Functions
Protected Attributes
Friends