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());
#define assert(condition)
static bool canAddComponentEncoding(SlotField &field, unsigned int encoding, unsigned int extraBits)
int moveSlotCount() const
MoveSlot & moveSlot(int index) const
static const std::string OSNAME_BRIDGE_ENCODING
ObjectState name for bridge encoding.
std::string bridgeName() const
SourceField * parent() const
virtual ObjectState * saveState() const
unsigned int extraBits() const
virtual int width() const
unsigned int encoding() const
std::string errorMessage() const
void setParent(InstructionField *parent)
BinaryEncoding * parent() const
SourceField & sourceField() const
void setSourceField(SourceField &field)
bool hasSourceField() const
static NullBridgeEncoding & instance()
void setName(const std::string &name)
ObjectState * child(int index) const
void addChild(ObjectState *child)
MoveSlot * parent() const
virtual int width() const
virtual ObjectState * saveState() const
virtual void loadState(const ObjectState *state)
BinaryEncoding::Position componentIDPosition() const
ImmediateEncoding * immEncoding_
The immediate encoding.
BridgeEncodingTable bridgeEncodings_
Container for bridge encodings.
void clearBridgeEncodings()
int bridgeEncodingCount() const
virtual void loadState(const ObjectState *state)
void unsetImmediateEncoding()
static const std::string OSNAME_SOURCE_FIELD
ObjectState name for source field.
void addBridgeEncoding(BridgeEncoding &encoding)
bool hasBridgeEncoding(const std::string &bridge) const
virtual int width() const
void removeBridgeEncoding(BridgeEncoding &encoding)
SourceField(BinaryEncoding::Position componentIDPos, MoveSlot &parent)
void clearImmediateEncoding()
ImmediateEncoding & immediateEncoding() const
void setImmediateEncoding(ImmediateEncoding &encoding)
bool hasImmediateEncoding() const
virtual ObjectState * saveState() const
BridgeEncoding & bridgeEncoding(const std::string &bridge) const
virtual boost::format text(int textId)