IOFireWireLibUnitDirectory.h [plain text]
#import "IOFireWireLibIUnknown.h"
#import "IOFireWireLibPriv.h"
namespace IOFireWireLib {
class Device ;
class LocalUnitDirectory: public IOFireWireIUnknown
{
typedef ::IOFireWireLocalUnitDirectoryInterface Interface ;
typedef ::IOFireWireLibLocalUnitDirectoryRef DirRef ;
protected:
static Interface sInterface ;
UserObjectHandle mKernUnitDirRef ;
Device& mUserClient ;
bool mPublished ;
HRESULT QueryInterface(
REFIID iid,
void ** ppv ) ;
public:
LocalUnitDirectory( Device& userclient ) ;
virtual ~LocalUnitDirectory() ;
IOReturn AddEntry(
int key,
void* inBuffer,
size_t inLen,
CFStringRef inDesc = NULL) ;
IOReturn AddEntry(
int key,
UInt32 value,
CFStringRef inDesc = NULL) ;
IOReturn AddEntry(
int key,
const FWAddress & value,
CFStringRef inDesc = NULL) ;
IOReturn Publish() ;
IOReturn Unpublish() ;
static Interface** Alloc( Device& userclient ) ;
static IOReturn SAddEntry_Ptr(
DirRef self,
int key,
void* inBuffer,
size_t inLen,
CFStringRef inDesc = NULL) ;
static IOReturn SAddEntry_UInt32(
DirRef self,
int key,
UInt32 value,
CFStringRef inDesc = NULL) ;
static IOReturn SAddEntry_FWAddress(
DirRef self,
int key,
const FWAddress* value,
CFStringRef inDesc = NULL) ;
static IOReturn SPublish( DirRef self ) ;
static IOReturn SUnpublish( DirRef self ) ;
} ;
}