47 abstractTriangulation_{
nullptr}, explicitTriangulation_{std::move(
48 rhs.explicitTriangulation_)},
49 implicitTriangulation_{std::move(rhs.implicitTriangulation_)},
50 periodicImplicitTriangulation_{
51 std::move(rhs.periodicImplicitTriangulation_)},
52 compactTriangulation_{std::move(rhs.compactTriangulation_)} {
55 hasPeriodicBoundaries_ = rhs.hasPeriodicBoundaries_;
57 switch(rhs.getType()) {
59 this->abstractTriangulation_ = &this->explicitTriangulation_;
62 this->abstractTriangulation_ = &this->compactTriangulation_;
65 this->abstractTriangulation_ = &this->implicitTriangulation_;
67 case Type::HYBRID_IMPLICIT:
68 this->abstractTriangulation_ = &this->implicitPreconditionsTriangulation_;
71 this->abstractTriangulation_ = &this->periodicImplicitTriangulation_;
73 case Type::HYBRID_PERIODIC:
74 this->abstractTriangulation_ = &this->periodicPreconditionsTriangulation_;
77 rhs.abstractTriangulation_ =
nullptr;
120 abstractTriangulation_ =
nullptr;
121 explicitTriangulation_ = std::move(rhs.explicitTriangulation_);
122 implicitTriangulation_ = std::move(rhs.implicitTriangulation_);
123 periodicImplicitTriangulation_
124 = std::move(rhs.periodicImplicitTriangulation_);
125 compactTriangulation_ = std::move(rhs.compactTriangulation_);
126 hasPeriodicBoundaries_ = rhs.hasPeriodicBoundaries_;
128 switch(rhs.getType()) {
130 this->abstractTriangulation_ = &this->explicitTriangulation_;
133 this->abstractTriangulation_ = &this->compactTriangulation_;
136 this->abstractTriangulation_ = &this->implicitTriangulation_;
138 case Type::HYBRID_IMPLICIT:
139 this->abstractTriangulation_
140 = &this->implicitPreconditionsTriangulation_;
143 this->abstractTriangulation_ = &this->periodicImplicitTriangulation_;
145 case Type::HYBRID_PERIODIC:
146 this->abstractTriangulation_
147 = &this->periodicPreconditionsTriangulation_;