OpenASIP
2.0
|
#include <DestinationField.hh>
Public Member Functions | |
DestinationField (BinaryEncoding::Position socketIDPos, MoveSlot &parent) | |
DestinationField (const ObjectState *state, MoveSlot &parent) | |
virtual | ~DestinationField () |
virtual ObjectState * | saveState () const |
Public Member Functions inherited from SlotField | |
virtual | ~SlotField () |
MoveSlot * | parent () const |
void | addSocketEncoding (SocketEncoding &encoding) |
void | removeSocketEncoding (SocketEncoding &encoding) |
int | socketEncodingCount () const |
SocketEncoding & | socketEncoding (int index) const |
bool | hasSocketEncoding (const std::string &socket) const |
SocketEncoding & | socketEncoding (const std::string &socket) const |
void | setNoOperationEncoding (NOPEncoding &encoding) |
void | unsetNoOperationEncoding () |
bool | hasNoOperationEncoding () const |
NOPEncoding & | noOperationEncoding () const |
BinaryEncoding::Position | componentIDPosition () const |
virtual int | width () const |
virtual int | childFieldCount () const |
virtual InstructionField & | childField (int position) const |
virtual void | loadState (const ObjectState *state) |
Public Member Functions inherited from InstructionField | |
virtual | ~InstructionField () |
InstructionField * | parent () const |
int | bitPosition () const |
int | relativePosition () const |
virtual void | setRelativePosition (int position) |
void | setExtraBits (int bits) |
int | extraBits () const |
Public Member Functions inherited from Serializable | |
virtual | ~Serializable () |
Static Public Attributes | |
static const std::string | OSNAME_DESTINATION_FIELD = "dest_field" |
ObjectState name for destination field. More... | |
Static Public Attributes inherited from SlotField | |
static const std::string | OSNAME_SLOT_FIELD = "slot_field" |
ObjectState name for slot field. More... | |
static const std::string | OSKEY_COMPONENT_ID_POSITION = "comp_id_pos" |
ObjectState attribute key for component ID position. More... | |
Static Public Attributes inherited from InstructionField | |
static const std::string | OSNAME_INSTRUCTION_FIELD = "instr_field" |
ObjectState name for instruction field. More... | |
static const std::string | OSKEY_EXTRA_BITS = "extra_bits" |
ObjectState attribute key for the number of extra bits. More... | |
static const std::string | OSKEY_POSITION = "position" |
ObjectState attribute key for the relative position of the field. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from SlotField | |
SlotField (BinaryEncoding::Position componentIDPos, MoveSlot &parent) | |
SlotField (const ObjectState *state, MoveSlot &parent) | |
Protected Member Functions inherited from InstructionField | |
InstructionField (InstructionField *parent) | |
InstructionField (const ObjectState *state, InstructionField *parent) | |
void | setParent (InstructionField *parent) |
Static Protected Member Functions inherited from InstructionField | |
static void | reorderSubfields (ObjectState *state) |
The DestinationField class represents the destination field of a move slot.
The destination field contains only socket encodings and so it is just a realization of SlotField class. It does not provide any additional methods.
Definition at line 44 of file DestinationField.hh.
DestinationField::DestinationField | ( | BinaryEncoding::Position | socketIDPos, |
MoveSlot & | parent | ||
) |
The constructor.
Registers the destination field to the given move slot automatically.
socketIDPos | Position of the socket ID within the destination field. |
parent | The parent move slot. |
ObjectAlreadyExists | If the parent move slot already has a destination field. |
IllegalParameters | If the given socket ID position is not the same with other destination fields. |
Definition at line 56 of file DestinationField.cc.
References SlotField::componentIDPosition(), MoveSlot::destinationField(), MoveSlot::hasDestinationField(), BinaryEncoding::moveSlot(), BinaryEncoding::moveSlotCount(), SlotField::parent(), MoveSlot::parent(), MoveSlot::setDestinationField(), and InstructionField::setParent().
DestinationField::DestinationField | ( | const ObjectState * | state, |
MoveSlot & | parent | ||
) |
The constructor.
Loads the state of the object from the given ObjectState tree.
state | The ObjectState tree. |
parent | The parent move slot. |
ObjectStateLoadingException | If an error occurs while loading the state. |
ObjectAlreadyExists | If the parent move slot already has a destination field. |
Definition at line 88 of file DestinationField.cc.
References ObjectState::name(), OSNAME_DESTINATION_FIELD, SlotField::parent(), MoveSlot::setDestinationField(), and InstructionField::setParent().
|
virtual |
The destructor.
Definition at line 103 of file DestinationField.cc.
References assert, SlotField::parent(), InstructionField::setParent(), and MoveSlot::unsetDestinationField().
|
virtual |
Saves the state of the object to an ObjectState tree.
Reimplemented from SlotField.
Definition at line 117 of file DestinationField.cc.
References OSNAME_DESTINATION_FIELD, SlotField::saveState(), and ObjectState::setName().
|
static |
ObjectState name for destination field.
Definition at line 54 of file DestinationField.hh.
Referenced by DestinationField(), BEMSerializer::destinationFieldToOM(), MoveSlot::loadState(), BEMSerializer::moveSlotToFile(), and saveState().