33 Foam::fileFormats::NASedgeFormat::NASedgeFormat
55 <<
"Cannot read file " << filename
69 if (line.empty() || line[0] ==
'$')
75 if (line.size() > 72 && line[72] ==
'+')
77 line = line.substr(0, 72);
84 if (buf.size() > 72 && buf[72] ==
'+')
86 line += buf.substr(8, 64);
90 line += buf.substr(8, buf.size()-8);
102 if (cmd ==
"CBEAM" || cmd ==
"CROD")
113 else if (cmd ==
"PLOTEL")
124 else if (cmd ==
"GRID")
134 else if (cmd ==
"GRID*")
150 <<
"Expected continuation symbol '*' when reading GRID*" 151 <<
" (double precision coordinate) format" <<
nl 152 <<
"Read:" << line <<
nl 164 storedPoints().transfer(dynPoints);
173 mapPointId.insert(pointId[i], i);
184 edge&
e = dynEdges[i];
185 e[0] = mapPointId[e[0]];
186 e[1] = mapPointId[e[1]];
188 usedPoints.
set(e[0]);
189 usedPoints.
set(e[1]);
195 if (
unsigned(
points().size()) != usedPoints.
count())
202 if (usedPoints.
get(pointi))
206 pts[nUsed] = pts[pointi];
210 mapPointId[pointi] = nUsed;
221 edge&
e = dynEdges[edgeI];
223 e[0] = mapPointId[e[0]];
224 e[1] = mapPointId[e[1]];
unsigned int count() const
Count number of bits set, O(log(n))
#define forAll(list, i)
Loop across all elements in list.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
A class for handling file names.
errorManipArg< error, int > exit(error &err, const int errNo=1)
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
void size(const label)
Override size to be inconsistent with allocated storage.
bool good() const
Return true if next operation might succeed.
const fileName & name() const
Return the name of the stream.
bool read(const char *, int32_t &)
const dimensionedScalar e
Elementary charge.
void set(const PackedList< 1 > &)
Set specified bits.
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects...
An edge is a list of two point labels. The functionality it provides supports the discretisation on a...
A class for handling words, derived from string.
void transfer(const FixedList< T, Size > &)
Copy (not transfer) the argument contents.
DynamicList< T, SizeInc, SizeMult, SizeDiv > & append(const T &)
Append an element at the end of the list.
label readLabel(Istream &is)
DynamicList< T, SizeInc, SizeMult, SizeDiv > & shrink()
Shrink the allocated space to the number of elements used.
void setSize(const label)
Reset size of List.
vector point
Point is a vector.
Input from memory buffer stream.
label lineNumber() const
Return current stream line number.
void clearStorage()
Clear the list and delete storage.
static scalar parseNASCoord(const string &s)
ISstream & getLine(string &)
Raw, low-level getline into a string function.
unsigned int get(const label) const
Get value at index I.