Pin
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Enumerations | Functions
chunk.cpp File Reference
#include "level_base.H"
#include "level_core.H"
#include "container.H"

Enumerations

enum  CHUNK_STATE {
  CHUNK_STATE_INVALID,
  CHUNK_STATE_LAST
}
 
enum  CHUNK_TYPE {
  CHUNK_TYPE_INVALID,
  CHUNK_TYPE_DATA,
  CHUNK_TYPE_CODE,
  CHUNK_TYPE_THUMB,
  CHUNK_TYPE_LAST
}
 

Functions

ARRAYBASE LEVEL_CORE::ChunkArrayBase ("chunk pool", 128 *1024)
 
STRIPE< CHUNK_STRUCT_BASE > LEVEL_CORE::ChunkStripeBase ("chunk stripe base","core",&ChunkArrayBase)
 
CHUNK LEVEL_CORE::CHUNK_INVALID ()
 
BOOL LEVEL_CORE::CHUNK_valid (CHUNK x)
 
INT32 LEVEL_CORE::CHUNK_no (CHUNK x)
 
BOOL LEVEL_CORE::CHUNK_allocated (CHUNK x)
 
BOOL LEVEL_CORE::CHUNK_original (CHUNK x)
 
CHUNK_TYPE LEVEL_CORE::CHUNK_type (CHUNK x)
 
VOID LEVEL_CORE::CHUNK_type_set (CHUNK x, CHUNK_TYPE y)
 
CHUNK_STATE LEVEL_CORE::CHUNK_state (CHUNK x)
 
VOID LEVEL_CORE::CHUNK_state_set (CHUNK x, CHUNK_STATE y)
 
SEC LEVEL_CORE::CHUNK_sec (CHUNK x)
 
VOID LEVEL_CORE::CHUNK_sec_set (CHUNK x, SEC y)
 
BBL LEVEL_CORE::CHUNK_bbl (CHUNK x)
 
VOID LEVEL_CORE::CHUNK_bbl_set (CHUNK x, BBL y)
 
CHUNK LEVEL_CORE::CHUNK_next (CHUNK x)
 
CHUNK LEVEL_CORE::CHUNK_prev (CHUNK x)
 
UINT32 LEVEL_CORE::CHUNK_alignment (CHUNK x)
 
VOID LEVEL_CORE::CHUNK_alignment_set (CHUNK x, UINT32 y)
 
const VOID * LEVEL_CORE::CHUNK_data_i (CHUNK x)
 
VOID * LEVEL_CORE::CHUNK_data_o (CHUNK x)
 
REL LEVEL_CORE::CHUNK_rel_head (CHUNK x)
 
VOID LEVEL_CORE::CHUNK_rel_head_set (CHUNK x, REL y)
 
REL LEVEL_CORE::CHUNK_rel_tail (CHUNK x)
 
VOID LEVEL_CORE::CHUNK_rel_tail_set (CHUNK x, REL y)
 
USIZE LEVEL_CORE::CHUNK_size_i (CHUNK x)
 
USIZE LEVEL_CORE::CHUNK_size_o (CHUNK x)
 
IADDR LEVEL_CORE::CHUNK_vaddr_i (CHUNK x)
 
VOID LEVEL_CORE::CHUNK_vaddr_i_set (CHUNK x, IADDR y)
 
OADDR LEVEL_CORE::CHUNK_vaddr_o (CHUNK x)
 
EXT LEVEL_CORE::CHUNK_ext (CHUNK x)
 
string LEVEL_CORE::str (CHUNK chunk)
 
LOCALINLINE VOID LEVEL_CORE::CHUNK_allocated_set (CHUNK x, BOOL y)
 
LOCALINLINE VOID LEVEL_CORE::CHUNK_original_set (CHUNK x, BOOL y)
 
LOCALINLINE VOID LEVEL_CORE::CHUNK_data_i_set (CHUNK x, const VOID *y)
 
LOCALINLINE VOID LEVEL_CORE::CHUNK_size_i_set (CHUNK x, UINT32 y)
 
LOCALINLINE VOID LEVEL_CORE::CHUNK_next_set (CHUNK x, CHUNK y)
 
LOCALINLINE VOID LEVEL_CORE::CHUNK_prev_set (CHUNK x, CHUNK y)
 
LOCALINLINE VOID LEVEL_CORE::CHUNK_size_o_set (CHUNK x, UINT32 y)
 
LOCALINLINE VOID LEVEL_CORE::CHUNK_data_o_set (CHUNK x, VOID *y)
 
LOCALINLINE VOID LEVEL_CORE::CHUNK_vaddr_o_set (CHUNK x, OADDR y)
 
LOCALINLINE VOID LEVEL_CORE::CHUNK_size_max_set (CHUNK x, USIZE y)
 
LOCALINLINE USIZE LEVEL_CORE::CHUNK_size_max (CHUNK x)
 
VOID LEVEL_CORE::CHUNK_GarbageCollect ()
 
CHUNK LEVEL_CORE::CHUNK_Alloc ()
 
VOID LEVEL_CORE::CHUNK_Free (CHUNK chunk)
 
VOID LEVEL_CORE::CHUNK_InsertBefore (CHUNK chunk, CHUNK before, SEC parent)
 
VOID LEVEL_CORE::CHUNK_Append (CHUNK chunk, SEC parent)
 
VOID LEVEL_CORE::CHUNK_InsertAfter (CHUNK chunk, CHUNK after, SEC parent)
 
VOID LEVEL_CORE::CHUNK_Prepend (CHUNK chunk, SEC parent)
 
VOID LEVEL_CORE::CHUNK_Unlink (CHUNK chunk)
 
VOID LEVEL_CORE::CHUNK_Init (CHUNK chunk, CHUNK_TYPE type, USIZE size, const VOID *data, UINT32 alignment)
 
VOID LEVEL_CORE::CHUNK_InitOriginal (CHUNK chunk, CHUNK_TYPE type, IADDR vaddr, USIZE size, const VOID *data, UINT32 alignment)
 
LOCALFUN REL LEVEL_CORE::CHUNK_FindRelWithTargetOffAboveThreshold (CHUNK chunk, UINT32 offset)
 
LOCALFUN REL LEVEL_CORE::CHUNK_FindRelWithValueOffAboveThreshold (CHUNK chunk, UINT32 offset)
 
VOID LEVEL_CORE::CHUNK_SplitData (CHUNK chunk, UINT32 offset)
 
BOOL LEVEL_CORE::CHUNK_ContainsIaddr (CHUNK chunk, IADDR iaddr)
 
BOOL LEVEL_CORE::CHUNK_ContainsIaddrEndInclusive (CHUNK chunk, IADDR iaddr)
 
BOOL LEVEL_CORE::CHUNK_ContainsOaddr (CHUNK chunk, OADDR oaddr)
 
BOOL LEVEL_CORE::CHUNK_ContainsOaddrEndInclusive (CHUNK chunk, OADDR oaddr)
 
VOID LEVEL_CORE::CHUNK_PutODataByOffsetUINT32 (CHUNK chunk, USIZE offset, UINT32 value)
 
VOID LEVEL_CORE::CHUNK_PutODataByOffsetUINT64 (CHUNK chunk, USIZE offset, UINT64 value)
 
VOID LEVEL_CORE::CHUNK_PutIDataByOffsetUINT32 (CHUNK chunk, USIZE offset, UINT32 value)
 
VOID LEVEL_CORE::CHUNK_PutIDataByOffsetUINT64 (CHUNK chunk, USIZE offset, UINT64 value)
 
VOID LEVEL_CORE::CHUNK_PutUnalignedIDataByOffsetUINT64 (CHUNK chunk, USIZE offset, UINT64 value)
 
UINT32 LEVEL_CORE::CHUNK_GetUnalignedIDataByOffsetUINT32 (CHUNK chunk, USIZE offset)
 
UINT32 LEVEL_CORE::CHUNK_GetIDataByOffsetUINT32 (CHUNK chunk, USIZE offset)
 
UINT64 LEVEL_CORE::CHUNK_GetIDataByOffsetUINT64 (CHUNK chunk, USIZE offset)
 
UINT32 LEVEL_CORE::CHUNK_GetUnalignedIDataByOffsetUINT64 (CHUNK chunk, USIZE offset)
 
VOID LEVEL_CORE::CHUNK_SetNewSizeAndAddress (CHUNK chunk, USIZE size, OADDR oaddr)
 
VOID LEVEL_CORE::CHUNK_SetNewData (CHUNK chunk, VOID *data)
 
LOCALFUN string LEVEL_CORE::ChunkTypeString (CHUNK_TYPE type)
 
string LEVEL_CORE::CHUNK_StringShort (CHUNK chunk)
 
string LEVEL_CORE::CHUNK_StringLong (CHUNK chunk)
 
REL LEVEL_CORE::CHUNK_FindRelForOffset (CHUNK chunk, UINT32 offset)
 
USIZE LEVEL_CORE::CHUNK_AppendData (CHUNK chunk, USIZE num_bytes)
 
VOID LEVEL_CORE::CHUNK_Check (CHUNK chunk)
 
VOID LEVEL_CORE::IMG_SetNewChunkSizesAndAddresses (IMG img)
 

Detailed Description

This file contains CHUNK primitives