61 if (bits > 7 || (((val<<3)>>3) != val))
64 <<
"Direction " << bits <<
" outside range 0..7" 65 <<
" or value " << val <<
" negative or larger than " 66 <<
label(8*
sizeof(
label)-3) <<
" bit representation" 71 return (val<<3) |
bits;
85 data_(pack(val, bits))
110 data_ = pack(val,
bits());
115 data_ = pack(
val(), bits);
123 return a.data_ == b.data_;
135 return is >> lb.data_;
140 return os << lb.data_;
FvWallInfoData< WallInfo, label > label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
friend Istream & operator>>(Istream &is, labelBits &lb)
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
const dimensionedScalar b
Wien displacement law constant: default SI units: [m K].
friend Ostream & operator<<(Ostream &os, const labelBits &lb)
void setVal(const label val)
labelBits()
Construct null.
void setBits(const direction bits)
errorManip< error > abort(error &err)
An Ostream is an abstract base class for all output systems (streams, files, token lists...
friend bool operator==(const labelBits &a, const labelBits &b)
friend bool operator!=(const labelBits &a, const labelBits &b)
Direction is an 8-bit unsigned integer type used to represent the Cartesian directions etc...
A 29bits label and 3bits direction packed into single label.