Go to the documentation of this file.
140 const string procName =
"ImmediateControlField::instructionTemplate";
141 throw OutOfRange(__FILE__, __LINE__, procName);
145 for (EncodingMap::const_iterator iter =
templates_.begin();
148 if (counter == index) {
184 const string procName =
"ImmediateControlField::templateEncoding";
188 EncodingMap::const_iterator iter =
templates_.find(name);
207 const std::string& name,
unsigned int encoding) {
209 MapTools::keyForValue<string>(
templates_, encoding) != name) {
210 const string procName =
"ImmediateControlField::addTemplateEncoding";
215 pair<EncodingMap::iterator, bool> result =
216 templates_.insert(pair<string, int>(name, encoding));
218 if (!result.second) {
220 EncodingMap::iterator iter =
templates_.find(name);
222 iter->second = encoding;
245 for (EncodingMap::const_iterator iter =
templates_.begin();
247 int encoding = iter->second;
249 if (requiredBits > minWidth) {
250 minWidth = requiredBits;
277 const string procName =
"ImmediateControlField::childField";
278 throw OutOfRange(__FILE__, __LINE__, procName);
293 const string procName =
"ImmediateControlField::loadState";
300 for (
int i = 0; i < state->
childCount(); i++) {
304 __FILE__, __LINE__, procName);
313 __FILE__, __LINE__, procName, exception.
errorMessage());
static const std::string OSKEY_POSITION
ObjectState attribute key for the relative position of the field.
std::string stringAttribute(const std::string &name) const
void setImmediateControlField(ImmediateControlField &field)
void unsetImmediateControlField()
void setName(const std::string &name)
virtual ObjectState * saveState() const
#define assert(condition)
void setParent(InstructionField *parent)
InstructionField * parent() const
ObjectState * child(int index) const
void addChild(ObjectState *child)
std::string errorMessage() const
virtual void loadState(const ObjectState *state)
int relativePosition() const
int intAttribute(const std::string &name) const
void setAttribute(const std::string &name, const std::string &value)