UNDER CONSTRUCTION
Reference
Home
Overview
Hardware
News
Download
License
Documentation
Reference
Help
FAQs
Contributing
Contact
Links

LowLevel.hpp File Reference


Detailed Description

Primitives for Low-Level harware operations.

Definition in file LowLevel.hpp.

#include <RSLib\Types.hpp>
#include <memory>

Go to the source code of this file.


Namespaces

namespace  RSLib
namespace  RSLib::LowLevel

Classes

class  RSLib::LowLevel::MethodAddress< T >

Method Invocation

#define METHOD_ADDRESS(class, method)   RSLib::LowLevel::MethodAddress<class>( (RSLib::LowLevel::MethodAddress<class>::Method)class::method )
 used to get the address of a method.
#define OBJECT_ADDRESS(class, object)   ((PVOID)&(object))
 Pair macro of METHOD_ADDRESS.

Defines

#define MAKEWORD(a, b)   ((WORD)(((BYTE)((DWORD_PTR)(a) & 0xff)) | ((WORD)((BYTE)((DWORD_PTR)(b) & 0xff))) << 8))
#define LOWORD(l)   ((WORD)((DWORD_PTR)(l) & 0xffff))
#define HIWORD(l)   ((WORD)((DWORD_PTR)(l) >> 16))
#define LOBYTE(w)   ((BYTE)((DWORD_PTR)(w) & 0xff))
#define HIBYTE(w)   ((BYTE)((DWORD_PTR)(w) >> 8))
#define MAKEQWORD(a, b)   ( (((QWORD)a)<<32) | (((QWORD)b)&0xFFFFFFFF) )
#define MAKEDWORD(a, b)   ( (((DWORD)a)<<16) | (((DWORD)b)&0xFFFF) )
#define LODWORD(q)   ( (DWORD) (q & 0xFFFFFFFF) )
#define HIDWORD(q)   ( (DWORD) (q >> 32) )
#define NULL_REFERENCE(type)   (*((type*)NULL))
#define VALID_REFERENCE(reference)   (&reference != NULL)
#define INVALID_REFERENCE(reference)   (&reference == NULL)

Functions

void RSLib::ZeroMemory (PVOID ptr, UINT32 bytes)
template<typename T>
void RSLib::ZeroObjectMemory (T &object)
bool RSLib::CompareMemory (const void *a, const void *b, UINT32 bytes)
void RSLib::CopyMemory (PVOID a, const void *b, UINT32 bytes)
Last Updated on 2006/02/01 09:53:39 UTC info@haptiklibrary.org