; 
; Exports of file wiarpc.dll
;
; Autogenerated by gen_exportdef
; Written by Kai Tietz, 2007
;
LIBRARY wiarpc.dll
EXPORTS
; public: __cdecl BUFFER::BUFFER(unsigned int) __ptr64
??0BUFFER@@QEAA@I@Z
; public: __cdecl BUFFER_CHAIN::BUFFER_CHAIN(void) __ptr64
??0BUFFER_CHAIN@@QEAA@XZ
; public: __cdecl BUFFER_CHAIN_ITEM::BUFFER_CHAIN_ITEM(unsigned int) __ptr64
??0BUFFER_CHAIN_ITEM@@QEAA@I@Z
; public: __cdecl BUFFER::~BUFFER(void) __ptr64
??1BUFFER@@QEAA@XZ
; public: __cdecl BUFFER_CHAIN::~BUFFER_CHAIN(void) __ptr64
??1BUFFER_CHAIN@@QEAA@XZ
; public: __cdecl BUFFER_CHAIN_ITEM::~BUFFER_CHAIN_ITEM(void) __ptr64
??1BUFFER_CHAIN_ITEM@@QEAA@XZ
; public: void __cdecl BUFFER::`default constructor closure'(void) __ptr64
??_FBUFFER@@QEAAXXZ
; public: void __cdecl BUFFER_CHAIN_ITEM::`default constructor closure'(void) __ptr64
??_FBUFFER_CHAIN_ITEM@@QEAAXXZ
; public: void * __ptr64 __cdecl BUFFER::QueryPtr(void)const  __ptr64
?QueryPtr@BUFFER@@QEBAPEAXXZ
; public: unsigned int __cdecl BUFFER::QuerySize(void)const  __ptr64
?QuerySize@BUFFER@@QEBAIXZ
; public: unsigned long __cdecl BUFFER_CHAIN_ITEM::QueryUsed(void)const  __ptr64
?QueryUsed@BUFFER_CHAIN_ITEM@@QEBAKXZ
; public: void __cdecl BUFFER_CHAIN_ITEM::SetUsed(unsigned long) __ptr64
?SetUsed@BUFFER_CHAIN_ITEM@@QEAAXK@Z
WiaEventsInitialize
WiaEventsTerminate
