Mercurial > projects > dstep
view dstep/corefoundation/CFStream.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.CFStream; import dstep.corefoundation.CFBase; import dstep.corefoundation.CFDictionary; import dstep.corefoundation.CFError; import dstep.corefoundation.CFRunLoop; import dstep.corefoundation.CFSocket; import dstep.corefoundation.CFString; import dstep.corefoundation.CFURL; import dstep.objc.bridge.Bridge; import dstep.objc.objc : id; alias int CFStreamStatus; alias uint CFStreamEventType; struct __CFReadStream; alias __CFReadStream* CFReadStreamRef; struct __CFWriteStream; alias __CFWriteStream* CFWriteStreamRef; alias int CFStreamErrorDomain; extern (C) { alias void function (CFWriteStreamRef, uint, void*) CFWriteStreamClientCallBack; alias void function (CFReadStreamRef, uint, void*) CFReadStreamClientCallBack; } extern (C) { extern { const CFStringRef kCFStreamPropertyDataWritten; const CFStringRef kCFStreamPropertyAppendToFile; const CFStringRef kCFStreamPropertyFileCurrentOffset; const CFStringRef kCFStreamPropertySocketNativeHandle; const CFStringRef kCFStreamPropertySocketRemoteHostName; const CFStringRef kCFStreamPropertySocketRemotePortNumber; } } enum { kCFStreamStatusNotOpen = 0, kCFStreamStatusOpening, kCFStreamStatusOpen, kCFStreamStatusReading, kCFStreamStatusWriting, kCFStreamStatusAtEnd, kCFStreamStatusClosed, kCFStreamStatusError } enum { kCFStreamEventNone = 0, kCFStreamEventOpenCompleted = 1, kCFStreamEventHasBytesAvailable = 2, kCFStreamEventCanAcceptBytes = 4, kCFStreamEventErrorOccurred = 8, kCFStreamEventEndEncountered = 16 } enum { kCFStreamErrorDomainCustom = -1, kCFStreamErrorDomainPOSIX = 1, kCFStreamErrorDomainMacOSStatus } struct CFStreamClientContext { int version_; void* info; } struct CFStreamError { int domain; int error; } extern (C) { uint CFReadStreamGetTypeID (); uint CFWriteStreamGetTypeID (); CFReadStreamRef CFReadStreamCreateWithBytesNoCopy (CFAllocatorRef alloc, char* bytes, int length, CFAllocatorRef bytesDeallocator); CFWriteStreamRef CFWriteStreamCreateWithBuffer (CFAllocatorRef alloc, char* buffer, int bufferCapacity); CFWriteStreamRef CFWriteStreamCreateWithAllocatedBuffers (CFAllocatorRef alloc, CFAllocatorRef bufferAllocator); CFReadStreamRef CFReadStreamCreateWithFile (CFAllocatorRef alloc, CFURLRef fileURL); CFWriteStreamRef CFWriteStreamCreateWithFile (CFAllocatorRef alloc, CFURLRef fileURL); void CFStreamCreateBoundPair (CFAllocatorRef alloc, CFReadStreamRef* readStream, CFWriteStreamRef* writeStream, int transferBufferSize); void CFStreamCreatePairWithSocket (CFAllocatorRef alloc, int sock, CFReadStreamRef* readStream, CFWriteStreamRef* writeStream); void CFStreamCreatePairWithSocketToHost (CFAllocatorRef alloc, CFStringRef host, uint port, CFReadStreamRef* readStream, CFWriteStreamRef* writeStream); void CFStreamCreatePairWithPeerSocketSignature (CFAllocatorRef alloc, CFSocketSignature* signature, CFReadStreamRef* readStream, CFWriteStreamRef* writeStream); int CFReadStreamGetStatus (CFReadStreamRef stream); int CFWriteStreamGetStatus (CFWriteStreamRef stream); CFErrorRef CFReadStreamCopyError (CFReadStreamRef stream); CFErrorRef CFWriteStreamCopyError (CFWriteStreamRef stream); ubyte CFReadStreamOpen (CFReadStreamRef stream); ubyte CFWriteStreamOpen (CFWriteStreamRef stream); void CFReadStreamClose (CFReadStreamRef stream); void CFWriteStreamClose (CFWriteStreamRef stream); ubyte CFReadStreamHasBytesAvailable (CFReadStreamRef stream); int CFReadStreamRead (CFReadStreamRef stream, char* buffer, int bufferLength); char* CFReadStreamGetBuffer (CFReadStreamRef stream, int maxBytesToRead, int* numBytesRead); ubyte CFWriteStreamCanAcceptBytes (CFWriteStreamRef stream); int CFWriteStreamWrite (CFWriteStreamRef stream, char* buffer, int bufferLength); void* CFReadStreamCopyProperty (CFReadStreamRef stream, CFStringRef propertyName); void* CFWriteStreamCopyProperty (CFWriteStreamRef stream, CFStringRef propertyName); ubyte CFReadStreamSetProperty (CFReadStreamRef stream, CFStringRef propertyName, void* propertyValue); ubyte CFWriteStreamSetProperty (CFWriteStreamRef stream, CFStringRef propertyName, void* propertyValue); ubyte CFReadStreamSetClient (CFReadStreamRef stream, uint streamEvents, CFReadStreamClientCallBack* clientCB, CFStreamClientContext* clientContext); ubyte CFWriteStreamSetClient (CFWriteStreamRef stream, uint streamEvents, CFWriteStreamClientCallBack* clientCB, CFStreamClientContext* clientContext); void CFReadStreamScheduleWithRunLoop (CFReadStreamRef stream, CFRunLoopRef runLoop, CFStringRef runLoopMode); void CFWriteStreamScheduleWithRunLoop (CFWriteStreamRef stream, CFRunLoopRef runLoop, CFStringRef runLoopMode); void CFReadStreamUnscheduleFromRunLoop (CFReadStreamRef stream, CFRunLoopRef runLoop, CFStringRef runLoopMode); void CFWriteStreamUnscheduleFromRunLoop (CFWriteStreamRef stream, CFRunLoopRef runLoop, CFStringRef runLoopMode); CFStreamError CFReadStreamGetError (CFReadStreamRef stream); CFStreamError CFWriteStreamGetError (CFWriteStreamRef stream); }