diff dstep/coreservices/cfnetwork/CFNetServices.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 diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dstep/coreservices/cfnetwork/CFNetServices.d	Sat Aug 01 15:03:28 2009 +0200
@@ -0,0 +1,124 @@
+/**
+ * Copyright: Copyright (c) 2009 Jacob Carlborg.
+ * Authors: Jacob Carlborg
+ * Version: Initial created: Jul 22, 2009 
+ * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0)
+ */
+module dstep.coreservices.cfnetwork.CFNetServices;
+
+//import dstep.Availability;
+import dstep.coreservices.cfnetwork.CFNetworkDefs;
+import dstep.corefoundation.CFArray;
+import dstep.corefoundation.CFBase;
+import dstep.corefoundation.CFData;
+import dstep.corefoundation.CFDictionary;
+import dstep.corefoundation.CFRunLoop;
+import dstep.corefoundation.CFStream;
+
+struct __CFNetService;
+struct __CFNetServiceMonitor;
+struct __CFNetServiceBrowser;
+
+alias __CFNetService* CFNetServiceRef;
+alias __CFNetServiceMonitor* CFNetServiceMonitorRef;
+alias __CFNetServiceBrowser* CFNetServiceBrowserRef;
+alias int CFNetServicesError;
+alias int CFNetServiceMonitorType;
+
+extern (C)
+{
+	alias void function (CFNetServiceRef, CFStreamError*, void*) CFNetServiceClientCallBack;
+	alias void function (CFNetServiceBrowserRef, uint, CFTypeRef, CFStreamError*, void*) CFNetServiceBrowserClientCallBack;
+	alias void function (CFNetServiceMonitorRef, CFNetServiceRef, int, CFDataRef, CFStreamError*, void*) CFNetServiceMonitorClientCallBack;
+}
+
+extern (C)
+{
+	extern
+	{
+		const int kCFStreamErrorDomainMach;
+		const int kCFStreamErrorDomainNetServices;
+	}
+}
+
+enum /*CFNetServicesError*/ 
+{
+	kCFNetServicesErrorUnknown = -72000L,
+	kCFNetServicesErrorCollision = -72001L,
+	kCFNetServicesErrorNotFound = -72002L,
+	kCFNetServicesErrorInProgress = -72003L,
+	kCFNetServicesErrorBadArgument = -72004L,
+	kCFNetServicesErrorCancel = -72005L,
+	kCFNetServicesErrorInvalid = -72006L,
+	kCFNetServicesErrorTimeout = -72007L
+}
+
+enum /*CFNetServiceMonitorType*/ 
+{
+	kCFNetServiceMonitorTXT = 1
+}
+
+enum
+{
+	kCFNetServiceFlagNoAutoRename = 1
+}
+
+enum
+{
+	kCFNetServiceFlagMoreComing = 1,
+	kCFNetServiceFlagIsDomain = 2,
+	kCFNetServiceFlagIsDefault = 4,
+	kCFNetServiceFlagIsRegistrationDomain = 4,
+	kCFNetServiceFlagRemove = 8
+}
+
+struct CFNetServiceClientContext
+{
+	int version_;
+	void* info;
+	CFAllocatorRetainCallBack retain;
+	CFAllocatorReleaseCallBack release;
+	CFAllocatorCopyDescriptionCallBack copyDescription;
+}
+
+extern (C)
+{
+	uint CFNetServiceGetTypeID ();
+	uint CFNetServiceMonitorGetTypeID ();
+	uint CFNetServiceBrowserGetTypeID ();
+	CFNetServiceRef CFNetServiceCreate (CFAllocatorRef alloc, CFStringRef domain, CFStringRef serviceType, CFStringRef name, int port);
+	CFNetServiceRef CFNetServiceCreateCopy (CFAllocatorRef alloc, CFNetServiceRef service);
+	CFStringRef CFNetServiceGetDomain (CFNetServiceRef theService);
+	CFStringRef CFNetServiceGetType (CFNetServiceRef theService);
+	CFStringRef CFNetServiceGetName (CFNetServiceRef theService);
+	ubyte CFNetServiceRegisterWithOptions (CFNetServiceRef theService, uint options, CFStreamError* error);
+	ubyte CFNetServiceResolveWithTimeout (CFNetServiceRef theService, double timeout, CFStreamError* error);
+	void CFNetServiceCancel (CFNetServiceRef theService);
+	CFStringRef CFNetServiceGetTargetHost (CFNetServiceRef theService);
+	int CFNetServiceGetPortNumber (CFNetServiceRef theService);
+	CFArrayRef CFNetServiceGetAddressing (CFNetServiceRef theService);
+	CFDataRef CFNetServiceGetTXTData (CFNetServiceRef theService);
+	ubyte CFNetServiceSetTXTData (CFNetServiceRef theService, CFDataRef txtRecord);
+	CFDictionaryRef CFNetServiceCreateDictionaryWithTXTData (CFAllocatorRef alloc, CFDataRef txtRecord);
+	CFDataRef CFNetServiceCreateTXTDataWithDictionary (CFAllocatorRef alloc, CFDictionaryRef keyValuePairs);
+	ubyte CFNetServiceSetClient (CFNetServiceRef theService, CFNetServiceClientCallBack clientCB, CFNetServiceClientContext* clientContext);
+	void CFNetServiceScheduleWithRunLoop (CFNetServiceRef theService, CFRunLoopRef runLoop, CFStringRef runLoopMode);
+	void CFNetServiceUnscheduleFromRunLoop (CFNetServiceRef theService, CFRunLoopRef runLoop, CFStringRef runLoopMode);
+	CFNetServiceMonitorRef CFNetServiceMonitorCreate (CFAllocatorRef alloc, CFNetServiceRef theService, CFNetServiceMonitorClientCallBack clientCB, CFNetServiceClientContext* clientContext);
+	void CFNetServiceMonitorInvalidate (CFNetServiceMonitorRef monitor);
+	ubyte CFNetServiceMonitorStart (CFNetServiceMonitorRef monitor, int recordType, CFStreamError* error);
+	void CFNetServiceMonitorStop (CFNetServiceMonitorRef monitor, CFStreamError* error);
+	void CFNetServiceMonitorScheduleWithRunLoop (CFNetServiceMonitorRef monitor, CFRunLoopRef runLoop, CFStringRef runLoopMode);
+	void CFNetServiceMonitorUnscheduleFromRunLoop (CFNetServiceMonitorRef monitor, CFRunLoopRef runLoop, CFStringRef runLoopMode);
+	CFNetServiceBrowserRef CFNetServiceBrowserCreate (CFAllocatorRef alloc, CFNetServiceBrowserClientCallBack clientCB, CFNetServiceClientContext* clientContext);
+	void CFNetServiceBrowserInvalidate (CFNetServiceBrowserRef browser);
+	ubyte CFNetServiceBrowserSearchForDomains (CFNetServiceBrowserRef browser, ubyte registrationDomains, CFStreamError* error);
+	ubyte CFNetServiceBrowserSearchForServices (CFNetServiceBrowserRef browser, CFStringRef domain, CFStringRef serviceType, CFStreamError* error);
+	void CFNetServiceBrowserStopSearch (CFNetServiceBrowserRef browser, CFStreamError* error);
+	void CFNetServiceBrowserScheduleWithRunLoop (CFNetServiceBrowserRef browser, CFRunLoopRef runLoop, CFStringRef runLoopMode);
+	void CFNetServiceBrowserUnscheduleFromRunLoop (CFNetServiceBrowserRef browser, CFRunLoopRef runLoop, CFStringRef runLoopMode);
+	ubyte CFNetServiceRegister (CFNetServiceRef theService, CFStreamError* error);
+	ubyte CFNetServiceResolve (CFNetServiceRef theService, CFStreamError* error);
+	CFStringRef CFNetServiceGetProtocolSpecificInformation (CFNetServiceRef theService);
+	void CFNetServiceSetProtocolSpecificInformation (CFNetServiceRef theService, CFStringRef theInfo);
+}
\ No newline at end of file