15 if (fieldId >= fieldsCount)
return this->
getSize();
18 if (ptr == NULL)
return 0;
21 size_t nextFID = fieldId + 1;
23 if (nextFID < fieldsCount ) nextPtr = this->
getFieldPtr(nextFID, subField);
24 if (nextPtr != NULL) {
26 if (dif < 0)
return 0;
32 BYTE *bgnPtr = (BYTE*)
getPtr();
33 BYTE *endPtr = bgnPtr + fullSize;
41 BYTE *ptr = (BYTE*)this->
getPtr();
48 return m_Exe->getOffset(ptr, allowExceptions);
75 if (isOk) (*isOk) =
false;
76 if (this->
m_Exe == NULL)
return (-1);
80 return this->
m_Exe->getNumValue(offset, size, isOk);
85 if (this->
m_Exe == NULL)
return false;
89 return this->
m_Exe->setNumValue(offset, size, newVal);
94 if (this->
m_Exe == NULL)
return false;
96 if (this->
m_Exe->isAreaEmpty(rawOffset,
getSize()) ==
false) {
104 if (this->
m_Exe == NULL)
return false;
110 if (
m_Exe->pasteBuffer(rawOffset,
this,
false) ==
false) {
const bufsize_t BUFSIZE_MAX
const offset_t INVALID_ADDR
virtual bufsize_t getSize()=0
virtual bufsize_t getFieldSize(size_t fieldId, size_t subField=FIELD_NONE)
virtual bool setNumValue(size_t fieldId, size_t subField, uint64_t val)
virtual bool canCopyToOffset(offset_t rawOffset)
virtual void * getPtr()=0
virtual void * getFieldPtr(size_t fieldId, size_t subField)=0
virtual offset_t getFieldOffset(size_t fieldId, size_t subField=FIELD_NONE)
virtual size_t getFieldsCount()=0
virtual WrappedValue getWrappedValue(size_t fieldId, size_t subField)
ExeElementWrapper(Executable *exe)
virtual WrappedValue::data_type containsDataType(size_t fieldId, size_t subField=FIELD_NONE)
virtual offset_t getOffset()
bool copyToOffset(offset_t rawOffset)
virtual uint64_t getNumValue(size_t fieldId, size_t subField, bool *isOk)
bool append(dbg_level lvl, const char *format,...)