ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

hivedata.h File Reference
#include <pshpack1.h>
#include <poppack.h>

Go to the source code of this file.

Data Structures

struct  PHBASE_BLOCK
struct  PHBIN
struct  PHCELL
struct  PHMAP_ENTRY
struct  PHMAP_TABLE
struct  PHMAP_DIRECTORY
struct  PDUAL
struct  PHHIVE

Defines

#define HINIT_CREATE   0
#define HINIT_MEMORY   1
#define HINIT_FILE   2
#define HINIT_MEMORY_INPLACE   3
#define HINIT_FLAT   4
#define HINIT_MAPFILE   5
#define HIVE_VOLATILE   1
#define HIVE_NOLAZYFLUSH   2
#define HIVE_HAS_BEEN_REPLACED   4
#define HIVE_HAS_BEEN_FREED   8
#define HIVE_UNKNOWN   0x10
#define HIVE_IS_UNLOADING   0x20
#define HFILE_TYPE_PRIMARY   0
#define HFILE_TYPE_ALTERNATE   1
#define HFILE_TYPE_LOG   2
#define HFILE_TYPE_EXTERNAL   3
#define HFILE_TYPE_MAX   4
#define HBLOCK_SIZE   0x1000
#define HSECTOR_SIZE   0x200
#define HSECTOR_COUNT   8
#define HV_BLOCK_SIZE   4096
#define HV_LOG_HEADER_SIZE   FIELD_OFFSET(HBASE_BLOCK, Reserved2)
#define HV_SIGNATURE   0x66676572
#define HV_BIN_SIGNATURE   0x6e696268
#define HSYS_MAJOR   1
#define HSYS_MINOR   3
#define HSYS_WHISTLER_BETA1   4
#define HSYS_WHISTLER   5
#define HSYS_MINOR_SUPPORTED   HSYS_WHISTLER
#define HBASE_FORMAT_MEMORY   1
#define HTYPE_COUNT   2

HCELL_INDEX

A handle to cell index. The highest bit specifies the cell storage and the other bits specify index into the hive file. The value HCELL_NULL (-1) is reserved for marking invalid cells.

#define HCELL_NIL   MAXULONG
#define HCELL_CACHED   1
#define HCELL_TYPE_MASK   0x80000000
#define HCELL_BLOCK_MASK   0x7ffff000
#define HCELL_OFFSET_MASK   0x00000fff
#define HCELL_TYPE_SHIFT   31
#define HCELL_BLOCK_SHIFT   12
#define HCELL_OFFSET_SHIFT   0
#define HvGetCellType(Cell)   ((ULONG)((Cell & HCELL_TYPE_MASK) >> HCELL_TYPE_SHIFT))
#define HvGetCellBlock(Cell)   ((ULONG)((Cell & HCELL_BLOCK_MASK) >> HCELL_BLOCK_SHIFT))
enum  HSTORAGE_TYPE { Stable = 0, Volatile = 1 }
typedef ULONG HCELL_INDEX
typedef ULONGPHCELL_INDEX

HBASE_BLOCK

On-disk header for registry hive file.

#define IsFreeCell(Cell)   (Cell->Size >= 0)
#define IsUsedCell(Cell)   (Cell->Size < 0)
typedef struct _CELL_DATA *CMAPIPGET_CELL_ROUTINE (struct _HHIVE *Hive, HCELL_INDEX Cell)
typedef VOID(CMAPIPRELEASE_CELL_ROUTINE )(struct _HHIVE *Hive, HCELL_INDEX Cell)
typedef PVOID(CMAPIPALLOCATE_ROUTINE )(SIZE_T Size, BOOLEAN Paged, ULONG Tag)
typedef VOID(CMAPIPFREE_ROUTINE )(PVOID Ptr, ULONG Quota)
typedef BOOLEAN(CMAPIPFILE_READ_ROUTINE )(struct _HHIVE *RegistryHive, ULONG FileType, PULONG FileOffset, PVOID Buffer, SIZE_T BufferLength)
typedef BOOLEAN(CMAPIPFILE_WRITE_ROUTINE )(struct _HHIVE *RegistryHive, ULONG FileType, PULONG FileOffset, PVOID Buffer, SIZE_T BufferLength)
typedef BOOLEAN(CMAPIPFILE_SET_SIZE_ROUTINE )(struct _HHIVE *RegistryHive, ULONG FileType, ULONG FileSize, ULONG OldfileSize)
typedef BOOLEAN(CMAPIPFILE_FLUSH_ROUTINE )(struct _HHIVE *RegistryHive, ULONG FileType, PLARGE_INTEGER FileOffset, ULONG Length)

Generated on Sun May 27 2012 06:03:27 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.