41 #if !defined(__CACFMessagePort_h__)
42 #define __CACFMessagePort_h__
48 #if !defined(__COREAUDIO_USE_FLAT_INCLUDES__)
49 #include <CoreFoundation/CFMessagePort.h>
51 #include <CFMessagePort.h>
58 class CACFLocalMessagePort
63 CACFLocalMessagePort(CFStringRef inName, CFMessagePortCallBack inPortCallBack, CFMessagePortInvalidationCallBack inInvalidationCallBack,
void* inUserData = NULL);
64 virtual ~CACFLocalMessagePort();
68 bool IsValid()
const {
return mMessagePort != NULL; }
69 CFMessagePortRef GetMessagePortRef()
const {
return mMessagePort; }
70 CFRunLoopSourceRef GetRunLoopSource()
const {
return mRunLoopSource; }
74 CFMessagePortRef mMessagePort;
75 CFRunLoopSourceRef mRunLoopSource;
83 class CACFRemoteMessagePort
88 CACFRemoteMessagePort(CFStringRef inName, CFMessagePortInvalidationCallBack inInvalidationCallBack);
89 virtual ~CACFRemoteMessagePort();
93 bool IsValid()
const {
return mMessagePort != NULL; }
94 CFMessagePortRef GetMessagePortRef()
const {
return mMessagePort; }
95 CFRunLoopSourceRef GetRunLoopSource()
const {
return mRunLoopSource; }
99 SInt32 SendRequest(SInt32 inMessageID, CFDataRef inData, CFTimeInterval inSendTimeout, CFTimeInterval inReceiveTimout)
const {
return CFMessagePortSendRequest(mMessagePort, inMessageID, inData, inSendTimeout, inReceiveTimout, NULL, NULL); }
100 SInt32 SendRequest(SInt32 inMessageID, CFDataRef inData, CFTimeInterval inSendTimeout, CFTimeInterval inReceiveTimout, CFStringRef inReplyMode, CFDataRef& outReturnData)
const {
return CFMessagePortSendRequest(mMessagePort, inMessageID, inData, inSendTimeout, inReceiveTimout, inReplyMode, &outReturnData); }
104 CFMessagePortRef mMessagePort;
105 CFRunLoopSourceRef mRunLoopSource;