diff dstep/coreservices/ae/AEHelpers.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/ae/AEHelpers.d	Sat Aug 01 15:03:28 2009 +0200
@@ -0,0 +1,78 @@
+/**
+ * Copyright: Copyright (c) 2009 Jacob Carlborg.
+ * Authors: Jacob Carlborg
+ * Version: Initial created: Jul 21, 2009 
+ * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0)
+ */
+module dstep.coreservices.ae.AEHelpers;
+
+//import dstep.AvailabilityMacros;
+import dstep.coreservices.ae.AEDataModel;
+import dstep.coreservices.ae.AppleEvents;
+import dstep.coreservices.carboncore.MacTypes;
+import dstep.corefoundation.CFString;
+//import dstep.stdarg;
+
+struct OpaqueAEStreamRef;
+
+alias uint AEBuildErrorCode;
+alias OpaqueAEStreamRef* AEStreamRef;
+
+enum
+{
+	aeBuildSyntaxNoErr = 0,
+	aeBuildSyntaxBadToken = 1,
+	aeBuildSyntaxBadEOF = 2,
+	aeBuildSyntaxNoEOF = 3,
+	aeBuildSyntaxBadNegative = 4,
+	aeBuildSyntaxMissingQuote = 5,
+	aeBuildSyntaxBadHex = 6,
+	aeBuildSyntaxOddHex = 7,
+	aeBuildSyntaxNoCloseHex = 8,
+	aeBuildSyntaxUncoercedHex = 9,
+	aeBuildSyntaxNoCloseString = 10,
+	aeBuildSyntaxBadDesc = 11,
+	aeBuildSyntaxBadData = 12,
+	aeBuildSyntaxNoCloseParen = 13,
+	aeBuildSyntaxNoCloseBracket = 14,
+	aeBuildSyntaxNoCloseBrace = 15,
+	aeBuildSyntaxNoKey = 16,
+	aeBuildSyntaxNoColon = 17,
+	aeBuildSyntaxCoercedList = 18,
+	aeBuildSyntaxUncoercedDoubleAt = 19
+}
+
+struct AEBuildError
+{
+	uint fError;
+	uint fErrorPos;
+}
+
+extern (C)
+{
+	int AEBuildDesc (AEDesc* dst, AEBuildError* error, char* src, ...);
+	int vAEBuildDesc (AEDesc* dst, AEBuildError* error, char* src, char* args);
+	int AEBuildParameters (AppleEvent* event, AEBuildError* error, char* format, ...);
+	int vAEBuildParameters (AppleEvent* event, AEBuildError* error, char* format, char* args);
+	int AEBuildAppleEvent (uint theClass, uint theID, uint addressType, void* addressData, int addressLength, short returnID, int transactionID, AppleEvent* result, AEBuildError* error, char* paramsFmt, ...);
+	int vAEBuildAppleEvent (uint theClass, uint theID, uint addressType, void* addressData, int addressLength, short returnID, int transactionID, AppleEvent* resultEvt, AEBuildError* error, char* paramsFmt, char* args);
+	int AEPrintDescToHandle (AEDesc* desc, Handle* result);
+	AEStreamRef AEStreamOpen ();
+	int AEStreamClose (AEStreamRef ref_, AEDesc* desc);
+	int AEStreamOpenDesc (AEStreamRef ref_, uint newType);
+	int AEStreamWriteData (AEStreamRef ref_, void* data, int length);
+	int AEStreamCloseDesc (AEStreamRef ref_);
+	int AEStreamWriteDesc (AEStreamRef ref_, uint newType, void* data, int length);
+	int AEStreamWriteAEDesc (AEStreamRef ref_, AEDesc* desc);
+	int AEStreamOpenList (AEStreamRef ref_);
+	int AEStreamCloseList (AEStreamRef ref_);
+	int AEStreamOpenRecord (AEStreamRef ref_, uint newType);
+	int AEStreamSetRecordType (AEStreamRef ref_, uint newType);
+	int AEStreamCloseRecord (AEStreamRef ref_);
+	int AEStreamWriteKeyDesc (AEStreamRef ref_, uint key, uint newType, void* data, int length);
+	int AEStreamOpenKeyDesc (AEStreamRef ref_, uint key, uint newType);
+	int AEStreamWriteKey (AEStreamRef ref_, uint key);
+	AEStreamRef AEStreamCreateEvent (uint clazz, uint id, uint targetType, void* targetData, int targetLength, short returnID, int transactionID);
+	AEStreamRef AEStreamOpenEvent (AppleEvent* event);
+	int AEStreamOptionalParam (AEStreamRef ref_, uint key);
+}
\ No newline at end of file