Logo Search packages:      
Sourcecode: virtualbox-ose version File versions  Download package

HGSMI.h File Reference


Detailed Description

VBox Host Guest Shared Memory Interface (HGSMI). Host/Guest shared part.

Definition in file HGSMI.h.

#include <iprt/assert.h>
#include <iprt/types.h>
#include <VBox/HGSMI/HGSMIChannels.h>

Go to the source code of this file.

Classes

struct  _HGSMIAREA
struct  _HGSMIBUFFERHEADER
struct  _HGSMIBUFFERTAIL
struct  _HGSMICHANNEL
struct  _HGSMICHANNELHANDLER
struct  _HGSMICHANNELINFO
struct  _HGSMIHEAP

Defines

#define HGSMI_BUFFER_HEADER_F_SEQ_CONTINUE   0x02
#define HGSMI_BUFFER_HEADER_F_SEQ_END   0x03
#define HGSMI_BUFFER_HEADER_F_SEQ_MASK   0x03
#define HGSMI_BUFFER_HEADER_F_SEQ_SINGLE   0x00
#define HGSMI_BUFFER_HEADER_F_SEQ_START   0x01
#define HGSMI_NUMBER_OF_CHANNELS   0x100
#define HGSMIOFFSET_VOID   ((HGSMIOFFSET)~0)

Typedefs

typedef uint16_t void HGSMISIZE cbBuffer
typedef struct _HGSMIAREA HGSMIAREA
typedef struct _HGSMIBUFFERHEADER HGSMIBUFFERHEADER
typedef struct _HGSMIBUFFERTAIL HGSMIBUFFERTAIL
typedef struct _HGSMICHANNEL HGSMICHANNEL
typedef struct _HGSMICHANNELHANDLER HGSMICHANNELHANDLER
typedef struct _HGSMICHANNELINFO HGSMICHANNELINFO
typedef struct _HGSMIHEAP HGSMIHEAP
typedef uint32_t HGSMIOFFSET
typedef uint32_t HGSMISIZE
typedef FNHGSMICHANNELHANDLER * PFNHGSMICHANNELHANDLER
typedef uint16_t void * pvBuffer
typedef uint16_t u16ChannelInfo

Functions

 AssertCompile (sizeof(HGSMIBUFFERTAIL)==8)
 AssertCompile (sizeof(HGSMIBUFFERHEADER)==16)
typedef DECLCALLBACK (int) FNHGSMICHANNELHANDLER(void *pvHandler
 DECLINLINE (bool) HGSMIAreaContainsOffset(HGSMIAREA *pArea
 DECLINLINE (HGSMIBUFFERHEADER *) HGSMIBufferHeaderFromData(const void *pvData)
 DECLINLINE (HGSMIBUFFERTAIL *) HGSMIBufferTail(const HGSMIBUFFERHEADER *pHeader)
 DECLINLINE (uint8_t *) HGSMIBufferData(const HGSMIBUFFERHEADER *pHeader)
RT_C_DECLS_BEGIN DECLINLINE (HGSMISIZE) HGSMIBufferMinimumSize(void)
void HGSMIAreaClear (HGSMIAREA *pArea)
int HGSMIAreaInitialize (HGSMIAREA *pArea, void *pvBase, HGSMISIZE cbArea, HGSMIOFFSET offBase)
int HGSMIBufferProcess (HGSMIAREA *pArea, HGSMICHANNELINFO *pChannelInfo, HGSMIOFFSET offBuffer)
int HGSMIChannelRegister (HGSMICHANNELINFO *pChannelInfo, uint8_t u8Channel, const char *pszName, PFNHGSMICHANNELHANDLER pfnChannelHandler, void *pvChannelHandler, HGSMICHANNELHANDLER *pOldHandler)
uint32_t HGSMIChecksum (HGSMIOFFSET offBuffer, const HGSMIBUFFERHEADER *pHeader, const HGSMIBUFFERTAIL *pTail)
void * HGSMIHeapAlloc (HGSMIHEAP *pHeap, HGSMISIZE cbData, uint8_t u8Channel, uint16_t u16ChannelInfo)
HGSMIOFFSET HGSMIHeapBufferOffset (HGSMIHEAP *pHeap, void *pvData)
void HGSMIHeapDestroy (HGSMIHEAP *pHeap)
void HGSMIHeapFree (HGSMIHEAP *pHeap, void *pvData)
bool HGSMIHeapIsItialized (HGSMIHEAP *pHeap)
int HGSMIHeapRelocate (HGSMIHEAP *pHeap, void *pvBase, uint32_t offHeapHandle, uintptr_t offDelta, HGSMISIZE cbArea, HGSMIOFFSET offBase, bool fOffsetBased)
int HGSMIHeapSetup (HGSMIHEAP *pHeap, void *pvBase, HGSMISIZE cbArea, HGSMIOFFSET offBase, bool fOffsetBased)
void HGSMIHeapSetupUnitialized (HGSMIHEAP *pHeap)


Generated by  Doxygen 1.6.0   Back to index