comparison 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
comparison
equal deleted inserted replaced
10:27e00625790b 11:07194b026fa4
1 /**
2 * Copyright: Copyright (c) 2009 Jacob Carlborg.
3 * Authors: Jacob Carlborg
4 * Version: Initial created: Jul 21, 2009
5 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0)
6 */
7 module dstep.coreservices.ae.AEHelpers;
8
9 //import dstep.AvailabilityMacros;
10 import dstep.coreservices.ae.AEDataModel;
11 import dstep.coreservices.ae.AppleEvents;
12 import dstep.coreservices.carboncore.MacTypes;
13 import dstep.corefoundation.CFString;
14 //import dstep.stdarg;
15
16 struct OpaqueAEStreamRef;
17
18 alias uint AEBuildErrorCode;
19 alias OpaqueAEStreamRef* AEStreamRef;
20
21 enum
22 {
23 aeBuildSyntaxNoErr = 0,
24 aeBuildSyntaxBadToken = 1,
25 aeBuildSyntaxBadEOF = 2,
26 aeBuildSyntaxNoEOF = 3,
27 aeBuildSyntaxBadNegative = 4,
28 aeBuildSyntaxMissingQuote = 5,
29 aeBuildSyntaxBadHex = 6,
30 aeBuildSyntaxOddHex = 7,
31 aeBuildSyntaxNoCloseHex = 8,
32 aeBuildSyntaxUncoercedHex = 9,
33 aeBuildSyntaxNoCloseString = 10,
34 aeBuildSyntaxBadDesc = 11,
35 aeBuildSyntaxBadData = 12,
36 aeBuildSyntaxNoCloseParen = 13,
37 aeBuildSyntaxNoCloseBracket = 14,
38 aeBuildSyntaxNoCloseBrace = 15,
39 aeBuildSyntaxNoKey = 16,
40 aeBuildSyntaxNoColon = 17,
41 aeBuildSyntaxCoercedList = 18,
42 aeBuildSyntaxUncoercedDoubleAt = 19
43 }
44
45 struct AEBuildError
46 {
47 uint fError;
48 uint fErrorPos;
49 }
50
51 extern (C)
52 {
53 int AEBuildDesc (AEDesc* dst, AEBuildError* error, char* src, ...);
54 int vAEBuildDesc (AEDesc* dst, AEBuildError* error, char* src, char* args);
55 int AEBuildParameters (AppleEvent* event, AEBuildError* error, char* format, ...);
56 int vAEBuildParameters (AppleEvent* event, AEBuildError* error, char* format, char* args);
57 int AEBuildAppleEvent (uint theClass, uint theID, uint addressType, void* addressData, int addressLength, short returnID, int transactionID, AppleEvent* result, AEBuildError* error, char* paramsFmt, ...);
58 int vAEBuildAppleEvent (uint theClass, uint theID, uint addressType, void* addressData, int addressLength, short returnID, int transactionID, AppleEvent* resultEvt, AEBuildError* error, char* paramsFmt, char* args);
59 int AEPrintDescToHandle (AEDesc* desc, Handle* result);
60 AEStreamRef AEStreamOpen ();
61 int AEStreamClose (AEStreamRef ref_, AEDesc* desc);
62 int AEStreamOpenDesc (AEStreamRef ref_, uint newType);
63 int AEStreamWriteData (AEStreamRef ref_, void* data, int length);
64 int AEStreamCloseDesc (AEStreamRef ref_);
65 int AEStreamWriteDesc (AEStreamRef ref_, uint newType, void* data, int length);
66 int AEStreamWriteAEDesc (AEStreamRef ref_, AEDesc* desc);
67 int AEStreamOpenList (AEStreamRef ref_);
68 int AEStreamCloseList (AEStreamRef ref_);
69 int AEStreamOpenRecord (AEStreamRef ref_, uint newType);
70 int AEStreamSetRecordType (AEStreamRef ref_, uint newType);
71 int AEStreamCloseRecord (AEStreamRef ref_);
72 int AEStreamWriteKeyDesc (AEStreamRef ref_, uint key, uint newType, void* data, int length);
73 int AEStreamOpenKeyDesc (AEStreamRef ref_, uint key, uint newType);
74 int AEStreamWriteKey (AEStreamRef ref_, uint key);
75 AEStreamRef AEStreamCreateEvent (uint clazz, uint id, uint targetType, void* targetData, int targetLength, short returnID, int transactionID);
76 AEStreamRef AEStreamOpenEvent (AppleEvent* event);
77 int AEStreamOptionalParam (AEStreamRef ref_, uint key);
78 }