90 throw std::runtime_error(
"fei::FieldMask ERROR, fieldID should be >= 0.");
96 for(
unsigned i=idindex+1; i<fieldEqnOffsets_.size(); ++i) {
97 fieldEqnOffsets_[i] += fieldSize;
101 fieldIDs_.insert(fieldIDs_.begin()+insertPoint, fieldID);
103 fieldSizes_.insert(fieldSizes_.begin()+insertPoint, fieldSize);
105 fieldEqnOffsets_.push_back(1);
109 for(
unsigned i=0; i<fieldIDs_.size(); ++i) {
110 fieldEqnOffsets_[i] = eqnOffset;
111 eqnOffset += fieldSizes_[i];
112 numIndices_ += fieldSizes_[i];
115 numFields_ = fieldIDs_.size();
118 maskID_ = calculateMaskID();