QCtr

Doxygen

class QCtr : public idol::Object<QCtrVersion, QCtr>

Public Functions

QCtr(Env &t_env, TempQCtr &&t_temp_ctr, std::string t_name = "")
QCtr(Env &t_env, const TempQCtr &t_temp_ctr, std::string t_name = "")
QCtr(Env &t_env, CtrType t_type, std::string t_name = "")
unsigned int index(const Model &t_model) const
inline const std::string &name() const

Returns the name of the optimization object.

Returns:

The name of the optimization object.

inline unsigned int id() const

Returns the id of the optimization object.

Returns:

The id of the optimization object.

inline bool is_in(const Model &t_model) const

Returns true if the optimization object is part of the model t_model, false otherwise.

Parameters:

t_model – The model.

Returns:

True if the optimization object is part of the model t_model, false otherwise.

inline const ValueT &get(const Annotation<ValueT> &t_annotation) const

Returns the value of the given annotation t_annotation associated to the object.

If no value is found, the default value of the annotation is returned. If no default value was set, an exception is thrown.

Template Parameters:

ValueT – The value type of the annotation.

Parameters:

t_annotation – The annotation.

Returns:

The value of the annotation.

inline void set(const Annotation<ValueT> &t_annotation, ArgsT&&... t_args) const

Sets the value of the given annotation t_annotation associated to the object.

Template Parameters:
  • ValueT – The value type of the annotation.

  • ArgsT – The parameter pack types for constructing the value of the annotation.

Parameters:
  • t_annotation – The annotation.

  • t_args – The parameter pack arguments used to construct “in place” the value of the annotation.

Public Static Functions

template<unsigned int N = 1, unsigned int I = 0>
static inline Vector<Ctr, N - I> make_vector(Env &t_env, const Dim<N> &t_dim, CtrType t_type, const std::string &t_name = "")

Friends

friend class impl::Env