Go to the documentation of this file.
67 :
SlotField(componentIDPos, parent), immEncoding_(NULL) {
73 const string procName =
"SourceField::SourceField";
98 :
SlotField(state, parent), immEncoding_(NULL) {
134 const string procName =
"SourceField::addBridgeEncoding";
172 for (
int i = 0; i < bridgeEncodings; i++) {
193 for (
int i = 0; i < encodingCount; i++) {
224 const string procName =
"SourceField::bridgeEncoding";
225 throw OutOfRange(__FILE__, __LINE__, procName);
252 const string procName =
"SourceField::setImmediateEncoding";
314 if (encoding.
width() > maxEncodingWidth) {
315 maxEncodingWidth = encoding.
width();
337 const string procName =
"SourceField::loadState";
348 for (
int i = 0; i < state->
childCount(); i++) {
352 }
else if (child->
name() ==
359 __FILE__, __LINE__, procName, exception.
errorMessage());
static NullBridgeEncoding & instance()
void setImmediateEncoding(ImmediateEncoding &encoding)
virtual void loadState(const ObjectState *state)
virtual ObjectState * saveState() const
BridgeEncodingTable bridgeEncodings_
Container for bridge encodings.
void unsetImmediateEncoding()
bool hasImmediateEncoding() const
SourceField * parent() const
virtual ObjectState * saveState() const
virtual boost::format text(int textId)
void setName(const std::string &name)
static const std::string OSNAME_BRIDGE_ENCODING
ObjectState name for bridge encoding.
#define assert(condition)
ImmediateEncoding * immEncoding_
The immediate encoding.
virtual int width() const
bool hasSourceField() const
bool hasBridgeEncoding(const std::string &bridge) const
ImmediateEncoding & immediateEncoding() const
void removeBridgeEncoding(BridgeEncoding &encoding)
void setParent(InstructionField *parent)
virtual int width() const
ObjectState * child(int index) const
void addChild(ObjectState *child)
virtual ObjectState * saveState() const
virtual int width() const
std::string bridgeName() const
unsigned int encoding() const
BinaryEncoding::Position componentIDPosition() const
SourceField & sourceField() const
std::string errorMessage() const
void clearBridgeEncodings()
void setSourceField(SourceField &field)
void clearImmediateEncoding()
BinaryEncoding * parent() const
int bridgeEncodingCount() const
static bool canAddComponentEncoding(SlotField &field, unsigned int encoding, unsigned int extraBits)
MoveSlot & moveSlot(int index) const
BridgeEncoding & bridgeEncoding(const std::string &bridge) const
void addBridgeEncoding(BridgeEncoding &encoding)
int moveSlotCount() const
MoveSlot * parent() const
static const std::string OSNAME_SOURCE_FIELD
ObjectState name for source field.
SourceField(BinaryEncoding::Position componentIDPos, MoveSlot &parent)
unsigned int extraBits() const
virtual void loadState(const ObjectState *state)