PrevNextUpHome BREW C++ Class Library & GUI Framework & XML Middleware : SophiaFramework 4.1

23.4. Macro for Callback

23.4.1. Macro for declaring the callback function

The callback function is declared using the macro of which name starts with CALLBACK_DECLARE _.

Table 23.10. Macro for callback declaration (file)

Macro Meaning Used methods
CALLBACK_DECLARE_SFXFILE Macro for declaring the callback function of SFXFile class SFXFile::ScheduleRead

Table 23.11. Macro for callback declaration (network)

Macro Meaning Used methods
CALLBACK_DECLARE_SFXINETADDRESS Macro for declaring the callback function of SFXInetAddress class SFXInetAddress::Resolve
CALLBACK_DECLARE_SFXSOCKETADDRESS Macro for declaring the callback function of SFXSocketAddress class SFXInetAddress::Resolve (inherits from SFXInetAddress class)
CALLBACK_DECLARE_SFXHTTPCONNECTION Macro for declaring the callback function of SFXHTTPConnection class SFXHTTPConnection::Connect
CALLBACK_DECLARE_SFXTCPSOCKET Macro for declaring the callback function of SFXTCPSocket class SFXTCPSocket::Connect, SFXTCPSocket::ScheduleAccept, SFXTCPSocket::ScheduleBind, SFXTCPSocket::ScheduleListen, SFXTCPSocket::ScheduleRead, SFXTCPSocket::ScheduleWrite
CALLBACK_DECLARE_SFXSSLSOCKET Macro for declaring the callback function of SFXSSLSocket class SFXSSLSocket::Connect, SFXSSLSocket::Negotiate, SFXSSLSocket::ScheduleBind, SFXSSLSocket::ScheduleRead, SFXSSLSocket::ScheduleWrite
CALLBACK_DECLARE_SFXUDPSOCKET Macro for declaring the callback function of SFXUDPSocket class SFXUDPSocket::ScheduleBind, SFXUDPSocket::ScheduleReceive, SFXUDPSocket::ScheduleSend
CALLBACK_DECLARE_SFXSMTPSENDER Macro for declaring the callback function of SFXSMTPSender class SFXSMTPSender::SendMessage, SFXSMTPSender::SendText
CALLBACK_DECLARE_SFXPOP3RECEIVER Macro for declaring the callback function of SFXPOP3Receiver class SFXPOP3Receiver::Delete, SFXPOP3Receiver::Receive, SFXPOP3Receiver::ReceiveAndDelete
CALLBACK_DECLARE_SFXSMTP Macro for declaring the callback function of SFXSMTP class SFXSMTP::Connect
CALLBACK_DECLARE_SFXPOP3 Macro for declaring the callback function of SFXPOP3 class SFXPOP3::Connect

Table 23.12. Macro for callback declaration (stream)

Macro Meaning Used methods
CALLBACK_DECLARE_SFXSTREAMREADER Macro for declaring the callback function of SFXStreamReader class SFXStreamReader::Fetch
CALLBACK_DECLARE_SFXSTREAMWRITER Macro for declaring the callback function of SFXStreamWriter class SFXStreamWriter::Flush
CALLBACK_DECLARE_SFXANSISTRINGSTREAMREADER Macro for declaring the callback function of SFXAnsiStringStreamReader class SFXStreamReader::Fetch(inherits from SFXStreamReader class)
CALLBACK_DECLARE_SFXANSISTRINGSTREAMWRITER Macro for declaring the callback function of SFXAnsiStringStreamWriter class SFXStreamWriter::Flush(inherits from SFXStreamWriter class)
CALLBACK_DECLARE_SFXWIDESTRINGSTREAMREADER Macro for declaring the callback function of SFXWideStringStreamReader class SFXStreamReader::Fetch(inherits from SFXStreamReader class)
CALLBACK_DECLARE_SFXWIDESTRINGSTREAMWRITER Macro for declaring the callback function of SFXWideStringStreamWriter class SFXStreamWriter::Flush(inherits from SFXStreamWriter class)
CALLBACK_DECLARE_SFXBINARYSTREAMREADER Macro for declaring the callback function of SFXBinaryStreamReader class SFXStreamReader::Fetch(inherits from SFXStreamReader class)
CALLBACK_DECLARE_SFXBINARYSTREAMWRITER Macro for declaring the callback function of SFXBinaryStreamWriter class SFXStreamWriter::Flush(inherits from SFXStreamWriter class)
CALLBACK_DECLARE_SFXELASTICSTREAMREADER Macro for declaring the callback function of SFXElasticStreamReader class SFXElasticStreamReader::Fetch
CALLBACK_DECLARE_SFXELASTICSTREAMWRITER Macro for declaring the callback function of SFXElasticStreamWriter class SFXElasticStreamWriter::Flush

Table 23.13. Macro for callback declaration (storage)

Macro Meaning Used methods
CALLBACK_DECLARE_SFXFILE Macro for declaring the callback function of SFXFile class SFXFile::ScheduleRead
CALLBACK_DECLARE_SFXHTTPCONNECTION Macro for declaring the callback function of SFXHTTPConnection class SFXHTTPConnection::Connect
CALLBACK_DECLARE_SFXTCPSOCKET Macro for declaring the callback function of SFXTCPSocket class SFXTCPSocket::Connect, SFXTCPSocket::ScheduleAccept, SFXTCPSocket::ScheduleBind, SFXTCPSocket::ScheduleListen, SFXTCPSocket::ScheduleRead, SFXTCPSocket::ScheduleWrite
CALLBACK_DECLARE_SFXSSLSOCKET Macro for declaring the callback function of SFXSSLSocket class SFXSSLSocket::Connect, SFXSSLSocket::Negotiate, SFXSSLSocket::ScheduleBind, SFXSSLSocket::ScheduleRead, SFXSSLSocket::ScheduleWrite
CALLBACK_DECLARE_SFXSOURCE Macro for declaring the callback function of SFXSource class SFXSource::ScheduleRead
CALLBACK_DECLARE_SFXZIPDECODER Macro for declaring the callback function of SFXZIPDecoder class SFXZIPDecoder::ScheduleRead

Table 23.14. Macro for callback declaration (other utilities)

Macro Meaning Used methods
CALLBACK_DECLARE_SFXCALLBACK Macro for declaring the callback function of SFXCallback class SFXCallback::Set
CALLBACK_DECLARE_SFXTASK Macro for declaring the callback function of SFXTask class SFXTask::Set
CALLBACK_DECLARE_SFXTIMER Macro for declaring the callback function of SFXTimer class SFXTimer::Set
[Note] Note
The argument is the name of callback function.

23.4.2. Macro for callback implementation

Callback is implemented by macro whose name beginning with CALLBACK_IMPLEMENT_.

Table 23.15. Macro for callback implementation (file)

Macro 3rd argument Meaning
CALLBACK_IMPLEMENT_SFXFILE error (error type) Macro for implementing the callback function of SFXFile class

Table 23.16. Macro for callback implementation (network)

Macro 3rd argument Meaning
CALLBACK_IMPLEMENT_SFXINETADDRESS error (error type) Macro for implementing the callback function of SFXInetAddress class
CALLBACK_IMPLEMENT_SFXSOCKETADDRESS error (error type) Macro for implementing the callback function of SFXSocketAddress class
CALLBACK_IMPLEMENT_SFXHTTPCONNECTION error (error type) Macro for implementing the callback function of SFXHTTPConnection class
CALLBACK_IMPLEMENT_SFXTCPSOCKET error (error type) Macro for implementing the callback function of SFXTCPSocket class
CALLBACK_IMPLEMENT_SFXSSLSOCKET error (error type) Macro for implementing the callback function of SFXSSLSocket class
CALLBACK_IMPLEMENT_SFXUDPSOCKET error (error type) Macro for implementing the callback function of SFXUDPSocket class
CALLBACK_IMPLEMENT_SFXSMTPSENDER error (error type) Macro for implementing the callback function of SFXSMTPSender class
CALLBACK_IMPLEMENT_SFXPOP3RECEIVER error (error type) Macro for implementing the callback function of SFXPOP3Receiver class
CALLBACK_IMPLEMENT_SFXSMTP error (error type) Macro for implementing the callback function of SFXSMTP class
CALLBACK_IMPLEMENT_SFXPOP3 error (error type) Macro for implementing the callback function of SFXPOP3 class

Table 23.17. Macro for callback implementation (stream)

Macro 3rd argument Meaning
CALLBACK_IMPLEMENT_SFXSTREAMREADER error (error type) Macro for implementing the callback function of SFXStreamReader class
CALLBACK_IMPLEMENT_SFXSTREAMWRITER error (error type) Macro for implementing the callback function of SFXStreamWriter class
CALLBACK_IMPLEMENT_SFXANSISTRINGSTREAMREADER error (error type) Macro for implementing the callback function of SFXAnsiStringStreamReader class
CALLBACK_IMPLEMENT_SFXANSISTRINGSTREAMWRITER error (error type) Macro for implementing the callback function of SFXAnsiStringStreamWriter class
CALLBACK_IMPLEMENT_SFXWIDESTRINGSTREAMREADER error (error type) Macro for implementing the callback function of SFXWideStringStreamReader class
CALLBACK_IMPLEMENT_SFXWIDESTRINGSTREAMWRITER error (error type) Macro for implementing the callback function of SFXWideStringStreamWriter class
CALLBACK_IMPLEMENT_SFXBINARYSTREAMREADER error (error type) Macro for implementing the callback function of SFXBinaryStreamReader class
CALLBACK_IMPLEMENT_SFXBINARYSTREAMWRITER error (error type) Macro for implementing the callback function of SFXBinaryStreamWriter class
CALLBACK_IMPLEMENT_SFXELASTICSTREAMREADER error (error type) Macro for implementing the callback function of SFXElasticStreamReader class
CALLBACK_IMPLEMENT_SFXELASTICSTREAMWRITER error (error type) Macro for implementing the callback function of SFXElasticStreamWriter class

Table 23.18. Macro for callback implementation ( storage)

Macro 3rd argument Meaning
CALLBACK_IMPLEMENT_SFXFILE error (error type) Macro for implementing the callback function of SFXFile class
CALLBACK_IMPLEMENT_SFXHTTPCONNECTION error (error type) Macro for implementing the callback function of SFXHTTPConnection class
CALLBACK_IMPLEMENT_SFXTCPSOCKET error (error type) Macro for implementing the callback function of SFXTCPSocket class
CALLBACK_IMPLEMENT_SFXSSLSOCKET error (error type) Macro for implementing the callback function of SFXSSLSocket class
CALLBACK_IMPLEMENT_SFXSOURCE error (error type) Macro for implementing the callback function of SFXSource class
CALLBACK_IMPLEMENT_SFXZIPDECODER error (error type) Macro for implementing the callback function of SFXZIPDecoder class

Table 23.19. Macro for callback implementation (other utilities)

Macro 3rd argument Meaning
CALLBACK_IMPLEMENT_SFXCALLBACK none Macro for implementing the callback function of SFXCallback class
CALLBACK_IMPLEMENT_SFXTASK none Macro for implementing the callback function of SFXTask class
CALLBACK_IMPLEMENT_SFXTIMER none Macro for implementing the callback function of SFXTimer class
[Note]
1st argument is the class name, 2nd argument is the name of callback function, and 3rd argument depends on the type of callback function.
[Note] About the return value of 3rd argument of error type

The error value defined in the "AEEError.h" during connection or sending/receiveing data will be returned.

23.4.3. Macro for registering the callback function

The callback function is registered using the macro of which name starts with CALLBACK_.

Table 23.20. Macro for registering the callback function

Macro Meaning
CALLBACK_FUNCTION Pass the pointer to the callback function and the identification number of callback function(reference value).
CALLBACK_NULL Regard the callback function as being executed though the actual callback function will not be called.
[Note] Note
The name of callback function is specified as an argument.