10 #define P6DLLAPI_H__ 1
122 typedef P6DLLAPI_1_0 P6DLLAPI;
P6ERR(P6CCALL * P6ALLOCCOMSTRING)(const P6WCHAR *pszSource, P6COMSTR *ppNewString)
P6UINT64(P6CCALL * P6HASHUINT64)(P6UINT64 nInteger)
P6API P6VOID *P6CCALL p6AtomicSetPtr(P6VOID volatile **pVar, P6VOID *pValue)
Atomically sets the value in the variable pointed to by pVar with the specified value.
P6API P6ERR P6CCALL p6GetRuntimeVersion(P6VERINFO *pVerInfo)
Return version informaton for runtime.
P6UINT32(P6CCALL * P6HASHBWCSTR)(P6BWCSTR *pbwcsString)
P6API P6ERR P6CCALL p6GetDirectory(P6DIRS nDir, P6WCHAR *pBuffer, P6SIZE cBuffer, P6SIZE *pcWritten)
This method can be used to retrieve the location of the specified directory.
P6API P6ERR P6CCALL p6GetRuntimeIface(const P6R::P6IID &iid, P6VOID **ppIface)
This method is used to retreive any of the loader runtime interfaces.
P6API P6WCHAR *P6CCALL p6ErrToWStr(P6ERR err, P6WCHAR *pszBuffer, P6SIZE cBuffer)
Convert a standard P6R::P6ERR into it's P6WCHAR* string representation.
P6API P6ERR P6CCALL p6ComStringLen(const P6COMSTR pString, P6SIZE *pLength)
Returns the length in characters of a P6COMSTR not including the terminating NULL character...
P6API P6UINT32 P6CCALL p6HashBCSTR(P6BCSTR *pbcsString)
P6ERR(P6CCALL * P6COMSTRINGBYTELEN)(const P6COMSTR pString, P6SIZE *pLength)
P6ERR(P6CCALL * P6COMSTRINGLEN)(const P6COMSTR pString, P6SIZE *pLength)
P6API P6UINT64 P6CCALL p6HashUINT64(P6UINT64 nInteger)
A 64 bit integer hash.
P6INT32(P6CCALL * P6ATOMICADD32)(P6INT32 volatile *pVar, P6INT32 value)
P6API P6INT32 P6CCALL p6AtomicAdd32(P6INT32 volatile *pVar, P6INT32 value)
Atomically adds the specified value to the variable pointed to by pVar.
unsigned char P6BOOL
Boolean type.
P6ERR(P6CCALL * P6STRINGTOUUID)(const P6CHAR *pszUUID, P6R::P6UUID &uuid)
P6ERR(P6CCALL * P6GETMODULEFILENAME)(P6WCHAR *pszBuffer, P6SIZE *pcBuffer)
P6WCHAR * P6COMSTR
Standard COM length encoded string.
Wide Const binary string.
P6API P6ERR P6CCALL p6CreateCryptoInstance(const P6R::P6CID &cid, const P6R::P6IID &iid, P6VOID **ppIface)
Creates a single uninitialized instance of the cryptographic interface associated with the specified ...
P6ERR(P6CCALL * P6TRACECTOR)(const P6CHAR *pszClassname, P6UINT32 cClassSize, P6VOID *classAddr, P6UINT32 *pSerialNumber)
P6INT32(P6CCALL * P6ATOMICDEC32)(P6INT32 volatile *pVar)
P6ERR(P6CCALL * P6ALLOCCOMSTRINGLEN)(P6WCHAR *pszSource, P6SIZE nSize, P6COMSTR *ppNewString)
P6ERR(P6CCALL * P6GETRUNTIMEIFACE)(const P6R::P6IID &iid, P6VOID **ppIface)
P6API P6ERR P6CCALL p6WStringToUUID(const P6WCHAR *pszUUID, P6R::P6UUID &uuid)
Used to convert the wide character string representation of a P6UUID in the form "{00000000-0000-0000...
P6API P6ERR P6CCALL p6GetCryptoProviderVersion(P6CHAR *pBuffer, P6SIZE cBuffer, P6SIZE *pcWritten, P6BOOL bVerbose)
This function retrieves a string that describes the underlying crypto provider's name and version...
P6API P6INT32 P6CCALL p6AtomicDec32(P6INT32 volatile *pVar)
Atomically decrements the variable pointed to by pVar by one.
P6API P6UINT32 P6CCALL p6HashString(const P6CHAR *pszData)
An implementation of Paul Hsieh's super fast hash for narrow strings.
P6API P6INT32 P6CCALL p6AtomicInc32(P6INT32 volatile *pVar)
Atomically increments the variable pointed to by pVar by one.
P6ERR(P6CCALL * P6ASSERT)(const P6WCHAR *pszExpr, const P6CHAR *pszFile, P6UINT32 nLine)
P6API P6ERR P6CCALL p6ComStringByteLen(const P6COMSTR pString, P6SIZE *pLength)
Returns the length in bytes of a P6COMSTR not including the terminating NULL character.
P6API P6ERR P6CCALL p6FreeMemory(P6VOID *pMemory)
Frees memory allocated with p6AllocMemory().
P6API P6ERR P6CCALL p6AllocComStringLen(P6WCHAR *pszSource, P6SIZE nSize, P6COMSTR *ppNewString)
Allocates a new COM String of the sepcified size and optionally containing a copy of pszSource...
P6API P6ERR P6CCALL p6MapOSError(P6UINT32 oserr)
Used by porting layers to map OS error values to P6ERR values.
P6ERR(P6CCALL * P6FREECOMSTRING)(P6COMSTR pString)
P6API P6INT64 P6CCALL p6AtomicSet64(P6INT64 volatile *pVar, P6INT64 value)
Atomically sets the value in the variable pointed to by pVar with the specified value.
wchar_t P6WCHAR
Wide character type see p6i18n.h.
P6UINT32 P6BTFLAGS
Runtime API Types.
P6API P6INT32 P6CCALL p6AtomicSet32(P6INT32 volatile *pVar, P6INT32 value)
Atomically sets the value in the variable pointed to by pVar with the specified value.
P6ERR(P6CCALL * P6SETERROR)(const P6IID *piid, const P6CHAR *pszFile, P6UINT32 cLine, P6ERR error, const P6WCHAR *pwszContext, const P6WCHAR *pwszDescription)
P6ERR(P6CCALL * P6UUIDTOWSTRING)(const P6R::P6UUID &uuid, P6WCHAR *pBuffer, P6SIZE cBuffer)
P6API P6UINT32 P6CCALL p6HashStringW(const P6WCHAR *pszData)
An implementation of Paul Hsieh's super fast hash for wide strings.
P6VOID *(P6CCALL * P6ATOMICSETPTR)(P6VOID volatile **pVar, P6VOID *pValue)
The base interface all [p6]COM components must derive from and implement.
P6API P6ERR P6CCALL p6FreeComString(P6COMSTR pString)
Frees a COM string previously allocated with p6AllocComString(), p6AllocComStringLen(), p6AllocComStringByteLen()
P6INT64(P6CCALL * P6ATOMICSET64)(P6INT64 volatile *pVar, P6INT64 value)
P6API P6ERR P6CCALL p6CreateInstance(p6ICom *pOuter, const P6R::P6CID &cid, const P6R::P6IID &iid, P6VOID **ppIface)
Creates a single uninitialized instance of the class/interface associated with the specified componen...
P6DIRS
This enumeration defines the directories which can be retrieved using the p6GetDirectory() API...
Log producer component interfaces.
P6API P6ERR P6CCALL p6UUIDToString(const P6R::P6UUID &uuid, P6CHAR *pBuffer, P6SIZE cBuffer)
This function is used to convert a P6UUID into a string in the form "{00000000-0000-0000-0000-0000000...
P6API P6UINT32 P6CCALL p6HashData(const P6UINT8 *pData, P6SIZE cData, P6UINT32 hash)
An implementation of Paul Hsieh's super fast hash for arbitrary non-NULL terminated data...
P6VOID(P6CCALL * P6COMPONENTDTOR)()
P6VOID(P6CCALL * P6COMPONENTCTOR)()
P6ERR(P6CCALL * P6CREATEINSTANCE)(p6ICom *pOuter, const P6R::P6CID &cid, const P6R::P6IID &iid, P6VOID **ppIface)
it may not contain all the symbols used by this software If you run into undefined symbol please let us know and we can provide you a build that will be compatible with your specific value
P6UINT32(P6CCALL * P6HASHUINT64TO32)(P6UINT64 nInteger)
P6VOID(P6CCALL * P6DBGBREAK)()
P6UINT32(P6CCALL * P6HASHSTRING)(const P6CHAR *pszData)
A universally unique indentifier (UUID).
P6API P6ERR P6CCALL p6StringToUUID(const P6CHAR *pszUUID, P6R::P6UUID &uuid)
Used to convert a string representing a P6UUID in the form "{00000000-0000-0000-0000-000000000000}" i...
P6API P6ERR P6CCALL p6AllocMemory(P6SIZE cSize, P6VOID **ppMemory)
Allocated a block of memory.
P6ERR(P6CCALL * P6TRACEADDREF)(const P6CHAR *pszClassname, P6UINT32 cClassSize, P6VOID *classAddr, P6INT32 refCount, P6UINT32 *pSerialNumber)
P6UINT32(P6CCALL * P6HASHSTRINGW)(const P6WCHAR *pszData)
P6ERR(P6CCALL * P6BACKTRACE)(P6CHAR *pBuffer, P6SIZE cBuffer, P6UINT32 cFramesToSkip, P6BTFLAGS fFlags)
P6ERR(P6CCALL * P6GETRUNTIMEVERSION)(P6VERINFO *pVerInfo)
P6UINT32(P6CCALL * P6HASHBCSTR)(P6BCSTR *pbcsString)
P6UINT32 P6ERR
COM err return type see P6ERR.h.
P6WCHAR *(P6CCALL * P6ERRTOWSTR)(P6ERR err, P6WCHAR *pszBuffer, P6SIZE cBuffer)
P6UINT32(P6CCALL * P6HASHUINT32)(P6UINT32 nInteger)
P6API P6ERR P6CCALL p6UUIDToWString(const P6R::P6UUID &uuid, P6WCHAR *pBuffer, P6SIZE cBuffer)
This function is used to convert a P6UUID into a wide string in the form "{00000000-0000-0000-0000-00...
P6API P6ERR P6CCALL p6AllocComString(const P6WCHAR *pszSource, P6COMSTR *ppNewString)
Allocates a new COM string the same length as pSource and copies the characters in pSource into the n...
P6ERR(P6CCALL * P6FREEMEMORY)(P6VOID *pMemory)
P6ERR(P6CCALL * P6MAPOSERROR)(P6UINT32 oserr)
P6ERR(P6CCALL * P6WSTRINGTOUUID)(const P6WCHAR *pszUUID, P6R::P6UUID &uuid)
P6API P6VOID P6CCALL p6DbgBreak()
A platform independent embeddable breakpoint.
P6ERR(P6CCALL * P6ALLOCMEMORY)(P6SIZE cSize, P6VOID **ppMemory)
P6ERR(P6CCALL * P6GETERRORINFO)(p6IErrorInfo **ppInfo)
P6ERR(P6CCALL * P6SETERRORA)(const P6IID *piid, const P6CHAR *pszFile, P6UINT32 cLine, P6ERR error, const P6CHAR *pszContext, const P6CHAR *pszDescription)
P6CHAR *(P6CCALL * P6ERRTOSTR)(P6ERR err, P6CHAR *pszBuffer, P6SIZE cBuffer)
P6ERR(P6CCALL * P6GETDIRECTORY)(P6DIRS nDir, P6WCHAR *pBuffer, P6SIZE cBuffer, P6SIZE *pcWritten)
P6UINT32(P6CCALL * P6HASHDATA)(const P6UINT8 *pData, P6SIZE cData, P6UINT32 hash)
P6API P6UINT32 P6CCALL p6HashBWCSTR(P6BWCSTR *pbwcsString)
P6API P6ERR P6CCALL p6GetThreadLogger(p6ILogProducer **ppLogger)
Used to retrieve the p6ILogProducer interface for the current thread.
P6API P6UINT32 P6CCALL p6HashUINT64to32(P6UINT64 nInteger)
A 64 bit integer to 32 bit hash.
P6INT32(P6CCALL * P6ATOMICINC32)(P6INT32 volatile *pVar)
P6ERR(P6CCALL * P6CREATECRYPTOINSTANCE)(const P6R::P6CID &cid, const P6R::P6IID &iid, P6VOID **ppIface)
P6ERR(P6CCALL * P6UUIDTOSTRING)(const P6R::P6UUID &uuid, P6CHAR *pBuffer, P6SIZE cBuffer)
P6ERR(P6CCALL * P6GETCRYPTOPROVIDERVERSION)(P6CHAR *pBuffer, P6SIZE cBuffer, P6SIZE *pcWritten, P6BOOL bVerbose)
P6API P6UINT32 P6CCALL p6HashUINT32(P6UINT32 nInteger)
A 32 bit integer hash.
P6INT32(P6CCALL * P6ATOMICSET32)(P6INT32 volatile *pVar, P6INT32 value)
P6ERR(P6CCALL * P6TRACERELEASE)(const P6CHAR *pszClassname, P6VOID *classAddr, P6INT32 refCount, P6UINT32 *pSerialNumber)
P6ERR(P6CCALL * P6GETTHREADLOGGER)(p6ILogProducer **ppLogger)
P6API P6CHAR *P6CCALL p6ErrToStr(P6ERR err, P6CHAR *pszBuffer, P6SIZE cBuffer)
Convert a standard P6R::P6ERR into it's ASCII string representation.
char P6CHAR
Narrow character type.
P6ERR(P6CCALL * P6TRACEDTOR)(const P6CHAR *pszClassname, P6VOID *classAddr, P6UINT32 *pSerialNumber)