21#ifndef COMPLETION_HPP_
22#define COMPLETION_HPP_
41 class FieldPropsManager;
51 static const std::string State2String( State enumValue );
52 static State StateFromString(
const std::string& stringValue );
61 static std::string Direction2String(
const Direction enumValue);
62 static Direction DirectionFromString(
const std::string& stringValue);
71 static const std::string Order2String( Order enumValue );
72 static Order OrderFromString(
const std::string& comporderStringValue);
82 std::size_t global_index,
91 double connection_length,
94 const Direction direction,
95 const CTFKind ctf_kind,
96 const std::size_t sort_value,
97 const bool defaultSatTabId);
103 bool attachedToSegment()
const;
104 bool sameCoordinate(
const int i,
const int j,
const int k)
const;
108 std::size_t global_index()
const;
110 Direction dir()
const;
111 double depth()
const;
112 int satTableId()
const;
113 int complnum()
const;
120 double connectionLength()
const;
121 double skinFactor()
const;
122 CTFKind kind()
const;
124 void setState(State state);
125 void setComplnum(
int compnum);
126 void scaleWellPi(
double wellPi);
127 bool prepareWellPIScaling();
128 bool applyWellPIScaling(
const double scaleFactor);
129 void updateSegmentRST(
int segment_number_arg,
130 double center_depth_arg);
131 void updateSegment(
int segment_number_arg,
132 double center_depth_arg,
133 std::size_t compseg_insert_index,
134 const std::pair<double,double>& perf_range);
135 std::size_t sort_value()
const;
136 const bool& getDefaultSatTabId()
const;
137 void setDefaultSatTabId(
bool id);
138 const std::optional<std::pair<double, double>>& perf_range()
const;
139 std::string str()
const;
140 bool ctfAssignedFromInput()
const
142 return this->m_ctfkind == CTFKind::DeckValue;
148 template<
class Serializer>
151 serializer(direction);
152 serializer(center_depth);
153 serializer(open_state);
154 serializer(sat_tableId);
155 serializer(m_complnum);
161 serializer(m_connection_length);
162 serializer(m_skin_factor);
164 serializer(m_global_index);
165 serializer(m_ctfkind);
166 serializer(m_sort_value);
167 serializer(m_perf_range);
168 serializer(m_defaultSatTabId);
169 serializer(segment_number);
170 serializer(m_subject_to_welpi);
184 double m_connection_length;
185 double m_skin_factor;
187 std::array<int,3> ijk;
189 std::size_t m_global_index;
242 std::size_t m_sort_value;
243 std::optional<std::pair<double,double>> m_perf_range;
244 bool m_defaultSatTabId;
248 int segment_number = 0;
251 bool m_subject_to_welpi =
false;
253 static std::string CTFKindToString(
const CTFKind);
Definition: Connection.hpp:43
Definition: DeckValue.hpp:30
Definition: FieldPropsManager.hpp:38
Definition: ScheduleGrid.hpp:29
Class for (de-)serializing.
Definition: Serializer.hpp:75
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition: Exceptions.hpp:29
Definition: connection.hpp:33