Mercurial > projects > dstep
view dstep/corefoundation/CFPlugIn.d @ 11:07194b026fa4
Added bindings to a couple of frameworks, new license + some other things
author | Jacob Carlborg <doob@me.com> |
---|---|
date | Sat, 01 Aug 2009 15:03:28 +0200 |
parents | |
children |
line wrap: on
line source
/** * Copyright: Copyright (c) 2009 Jacob Carlborg. * Authors: Jacob Carlborg * Version: Initial created: Jul 12, 2009 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) */ module dstep.corefoundation.CFPlugIn; import dstep.corefoundation.CFArray; import dstep.corefoundation.CFBase; import dstep.corefoundation.CFBundle; import dstep.corefoundation.CFPlugInCOM; import dstep.corefoundation.CFString; import dstep.corefoundation.CFURL; import dstep.corefoundation.CFUUID; import dstep.objc.bridge.Bridge; import dstep.objc.objc : id; struct __CFPlugInInstance; alias __CFPlugInInstance* CFPlugInInstanceRef; extern (C) { alias void function (CFPlugInRef) CFPlugInUnloadFunction; alias void function (void*) CFPlugInInstanceDeallocateInstanceDataFunction; alias void* function (CFAllocatorRef, CFUUIDRef) CFPlugInFactoryFunction; alias void function (CFPlugInRef) CFPlugInDynamicRegisterFunction; alias ubyte function (CFPlugInInstanceRef, CFStringRef, void**) CFPlugInInstanceGetInterfaceFunction; } extern (C) { extern { const CFStringRef kCFPlugInDynamicRegistrationKey; const CFStringRef kCFPlugInDynamicRegisterFunctionKey; const CFStringRef kCFPlugInUnloadFunctionKey; const CFStringRef kCFPlugInFactoriesKey; const CFStringRef kCFPlugInTypesKey; } } extern (C) { uint CFPlugInGetTypeID (); CFPlugInRef CFPlugInCreate (CFAllocatorRef allocator, CFURLRef plugInURL); CFBundleRef CFPlugInGetBundle (CFPlugInRef plugIn); void CFPlugInSetLoadOnDemand (CFPlugInRef plugIn, ubyte flag); ubyte CFPlugInIsLoadOnDemand (CFPlugInRef plugIn); CFArrayRef CFPlugInFindFactoriesForPlugInType (CFUUIDRef typeUUID); CFArrayRef CFPlugInFindFactoriesForPlugInTypeInPlugIn (CFUUIDRef typeUUID, CFPlugInRef plugIn); void* CFPlugInInstanceCreate (CFAllocatorRef allocator, CFUUIDRef factoryUUID, CFUUIDRef typeUUID); ubyte CFPlugInRegisterFactoryFunction (CFUUIDRef factoryUUID, CFPlugInFactoryFunction* func); ubyte CFPlugInRegisterFactoryFunctionByName (CFUUIDRef factoryUUID, CFPlugInRef plugIn, CFStringRef functionName); ubyte CFPlugInUnregisterFactory (CFUUIDRef factoryUUID); ubyte CFPlugInRegisterPlugInType (CFUUIDRef factoryUUID, CFUUIDRef typeUUID); ubyte CFPlugInUnregisterPlugInType (CFUUIDRef factoryUUID, CFUUIDRef typeUUID); void CFPlugInAddInstanceForFactory (CFUUIDRef factoryID); void CFPlugInRemoveInstanceForFactory (CFUUIDRef factoryID); ubyte CFPlugInInstanceGetInterfaceFunctionTable (CFPlugInInstanceRef instance, CFStringRef interfaceName, void** ftbl); CFStringRef CFPlugInInstanceGetFactoryName (CFPlugInInstanceRef instance); void* CFPlugInInstanceGetInstanceData (CFPlugInInstanceRef instance); uint CFPlugInInstanceGetTypeID (); CFPlugInInstanceRef CFPlugInInstanceCreateWithInstanceDataSize (CFAllocatorRef allocator, int instanceDataSize, CFPlugInInstanceDeallocateInstanceDataFunction* deallocateInstanceFunction, CFStringRef factoryName, CFPlugInInstanceGetInterfaceFunction* getInterfaceFunction); }