aGrUM 3.2.0
a C++ library for (probabilistic) graphical models
gum::prm::o3prm::O3Aggregate Class Reference

The O3Aggregate is part of the AST of the O3PRM language. More...

#include <agrum/PRM/o3prm/O3prm.h>

Collaboration diagram for gum::prm::o3prm::O3Aggregate:
[legend]

Public Types

using O3LabelList = std::vector< O3Label >

Public Member Functions

 O3Aggregate ()
 O3Aggregate (const O3Aggregate &src)
 O3Aggregate (O3Aggregate &&src)
virtual ~O3Aggregate ()
O3Aggregate & operator= (const O3Aggregate &src)
O3Aggregate & operator= (O3Aggregate &&src)
O3Label & variableType ()
const O3Label & variableType () const
O3Label & aggregateType ()
const O3Label & aggregateType () const
O3Label & name ()
const O3Label & name () const
O3LabelList & parents ()
const O3LabelList & parents () const
O3LabelList & parameters ()
const O3LabelList & parameters () const

Private Attributes

O3Label _variableType_
O3Label _aggregateType_
O3Label _name_
O3LabelList _parents_
O3LabelList _parameters_

Detailed Description

The O3Aggregate is part of the AST of the O3PRM language.

Definition at line 600 of file O3prm.h.

Member Typedef Documentation

◆ O3LabelList

Definition at line 602 of file O3prm.h.

Constructor & Destructor Documentation

◆ O3Aggregate() [1/3]

gum::prm::o3prm::O3Aggregate::O3Aggregate ( )

Definition at line 1103 of file O3prm.cpp.

References O3Aggregate(), _aggregateType_, _name_, _parameters_, _parents_, and _variableType_.

Referenced by O3Aggregate(), O3Aggregate(), O3Aggregate(), ~O3Aggregate(), operator=(), and operator=().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ O3Aggregate() [2/3]

gum::prm::o3prm::O3Aggregate::O3Aggregate ( const O3Aggregate & src)

Definition at line 1108 of file O3prm.cpp.

1108 :
1109 _variableType_(src._variableType_), _aggregateType_(src._aggregateType_),
1110 _name_(src._name_), _parents_(src._parents_), _parameters_(src._parameters_) {
1111 GUM_CONS_CPY(O3Aggregate);
1112 }

References O3Aggregate(), _aggregateType_, _name_, _parameters_, _parents_, and _variableType_.

Here is the call graph for this function:

◆ O3Aggregate() [3/3]

gum::prm::o3prm::O3Aggregate::O3Aggregate ( O3Aggregate && src)

Definition at line 1114 of file O3prm.cpp.

1114 :
1115 _variableType_(std::move(src._variableType_)),
1116 _aggregateType_(std::move(src._aggregateType_)), _name_(std::move(src._name_)),
1117 _parents_(std::move(src._parents_)), _parameters_(std::move(src._parameters_)) {
1118 GUM_CONS_MOV(O3Aggregate);
1119 }

References O3Aggregate(), _aggregateType_, _name_, _parameters_, _parents_, and _variableType_.

Here is the call graph for this function:

◆ ~O3Aggregate()

gum::prm::o3prm::O3Aggregate::~O3Aggregate ( )
virtual

Definition at line 1121 of file O3prm.cpp.

1121 {
1122 GUM_DESTRUCTOR(O3Aggregate);
1123 ;
1124 }

References O3Aggregate().

Here is the call graph for this function:

Member Function Documentation

◆ aggregateType() [1/2]

O3Label & gum::prm::o3prm::O3Aggregate::aggregateType ( )

Definition at line 1150 of file O3prm.cpp.

1150{ return _aggregateType_; }

References _aggregateType_.

Referenced by gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::_checkAggParameters_().

Here is the caller graph for this function:

◆ aggregateType() [2/2]

const O3Label & gum::prm::o3prm::O3Aggregate::aggregateType ( ) const

Definition at line 1152 of file O3prm.cpp.

1152{ return _aggregateType_; }

References _aggregateType_.

◆ name() [1/2]

O3Label & gum::prm::o3prm::O3Aggregate::name ( )

Definition at line 1154 of file O3prm.cpp.

1154{ return _name_; }

References _name_.

Referenced by gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::_checkAggTypeLegality_(), gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::_checkParametersNumber_(), and gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::_checkParameterValue_().

Here is the caller graph for this function:

◆ name() [2/2]

const O3Label & gum::prm::o3prm::O3Aggregate::name ( ) const

Definition at line 1156 of file O3prm.cpp.

1156{ return _name_; }

References _name_.

◆ operator=() [1/2]

O3Aggregate & gum::prm::o3prm::O3Aggregate::operator= ( const O3Aggregate & src)

Definition at line 1126 of file O3prm.cpp.

1126 {
1127 if (this == &src) { return *this; }
1128 _aggregateType_ = src._aggregateType_;
1129 _variableType_ = src._variableType_;
1130 _name_ = src._name_;
1131 _parents_ = src._parents_;
1132 _parameters_ = src._parameters_;
1133 return *this;
1134 }

References O3Aggregate(), _aggregateType_, _name_, _parameters_, _parents_, and _variableType_.

Here is the call graph for this function:

◆ operator=() [2/2]

O3Aggregate & gum::prm::o3prm::O3Aggregate::operator= ( O3Aggregate && src)

Definition at line 1136 of file O3prm.cpp.

1136 {
1137 if (this == &src) { return *this; }
1138 _aggregateType_ = std::move(src._aggregateType_);
1139 _variableType_ = std::move(src._variableType_);
1140 _name_ = std::move(src._name_);
1141 _parents_ = std::move(src._parents_);
1142 _parameters_ = std::move(src._parameters_);
1143 return *this;
1144 }

References O3Aggregate(), _aggregateType_, _name_, _parameters_, _parents_, and _variableType_.

Here is the call graph for this function:

◆ parameters() [1/2]

O3Aggregate::O3LabelList & gum::prm::o3prm::O3Aggregate::parameters ( )

Definition at line 1162 of file O3prm.cpp.

1162{ return _parameters_; }

References _parameters_.

Referenced by gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::_checkParametersNumber_(), and gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::_checkParameterValue_().

Here is the caller graph for this function:

◆ parameters() [2/2]

const O3Aggregate::O3LabelList & gum::prm::o3prm::O3Aggregate::parameters ( ) const

Definition at line 1164 of file O3prm.cpp.

1164{ return _parameters_; }

References _parameters_.

◆ parents() [1/2]

O3Aggregate::O3LabelList & gum::prm::o3prm::O3Aggregate::parents ( )

Definition at line 1158 of file O3prm.cpp.

1158{ return _parents_; }

References _parents_.

Referenced by gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::_checkAggParents_().

Here is the caller graph for this function:

◆ parents() [2/2]

const O3Aggregate::O3LabelList & gum::prm::o3prm::O3Aggregate::parents ( ) const

Definition at line 1160 of file O3prm.cpp.

1160{ return _parents_; }

References _parents_.

◆ variableType() [1/2]

O3Label & gum::prm::o3prm::O3Aggregate::variableType ( )

Definition at line 1146 of file O3prm.cpp.

1146{ return _variableType_; }

References _variableType_.

Referenced by gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::_checkAggregateForDeclaration_(), and gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::_checkAggTypeLegality_().

Here is the caller graph for this function:

◆ variableType() [2/2]

const O3Label & gum::prm::o3prm::O3Aggregate::variableType ( ) const

Definition at line 1148 of file O3prm.cpp.

1148{ return _variableType_; }

References _variableType_.

Member Data Documentation

◆ _aggregateType_

O3Label gum::prm::o3prm::O3Aggregate::_aggregateType_
private

◆ _name_

O3Label gum::prm::o3prm::O3Aggregate::_name_
private

Definition at line 630 of file O3prm.h.

Referenced by O3Aggregate(), O3Aggregate(), O3Aggregate(), name(), name(), operator=(), and operator=().

◆ _parameters_

O3LabelList gum::prm::o3prm::O3Aggregate::_parameters_
private

◆ _parents_

O3LabelList gum::prm::o3prm::O3Aggregate::_parents_
private

Definition at line 631 of file O3prm.h.

Referenced by O3Aggregate(), O3Aggregate(), O3Aggregate(), operator=(), operator=(), parents(), and parents().

◆ _variableType_

O3Label gum::prm::o3prm::O3Aggregate::_variableType_
private

The documentation for this class was generated from the following files: