50using ReferenceManager::SafePointer;
51using ReferenceManager::SectionKey;
52using ReferenceManager::FileOffsetKey;
53using ReferenceManager::SectionIndexKey;
107 bool undefASpaceWritten =
false;
109 for (
unsigned int i = 0; i < sect->
elementCount(); i++) {
116 if (
dynamic_cast<const ASpaceSection*
>(sect)->isUndefined(elem)) {
120 undefASpaceWritten =
true;
129 assert(undefASpaceWritten);
#define assert(condition)
void writeByte(Byte byte)
unsigned int writePosition()
static void addObjectReference(SectionIndexKey key, const SafePointable *obj)
static SectionKey sectionKeyFor(const SafePointable *obj)
SectionId sectionId() const
static void setSize(const SafePointable *obj, Word size)
static void registerSectionWriter(const SectionWriter *sWriter)
@ ST_ADDRSP
Address space section.
SectionElement * element(Word index) const
Word elementCount() const
virtual Word elementSize(const Section *section) const
static const Word elementSize_
The fixed size address space element.
static const TPEFASpaceSectionWriter instance_
An unique instance of class.
TPEFASpaceSectionWriter()
virtual ~TPEFASpaceSectionWriter()
void writeElement(BinaryStream &stream, const ASpaceElement *elem, SectionId id, Word index) const
virtual void actualWriteData(BinaryStream &stream, const Section *section) const
virtual Section::SectionType type() const
HalfWord SectionId
Type for storing binary file section ids.
Word FileOffset
Type for storing absolute file offsets.