PrevNextUpHome SophiaFramework UNIVERSE 5.3
SFBMemAStream
Wrapper Class for the IMemAStream interface.
#include <SFBMemAStream.h.hpp>
class SFBMemAStream : public SFBAStream;
SFMTYPEDEFWRAPPER(SFBMemAStream)

Inheritance diagram

 Inheritance diagram of SFBMemAStreamClass

Version

BREW 2.0 BREW 2.1 BREW 3.1 BREW 4.0
O O O O

Reference

BREW API IMemAStream

Member

Public Functions
static
SFBMemAStreamSmp
NewInstance( SFCErrorPtr exception = null )
Create a new SFBMemAStream instance.
static
SFBMemAStreamSmp
NewInstance( AEECLSID id , SFCErrorPtr exception = null )
Create a new SFBMemAStream instance.
Void Set( VoidPtr buff , UInt32 size , UInt32 offset , Bool sysMem )
Set the memory chunk that needs to be read as a stream.
Void SetEx( VoidPtr buff , UInt32 size , UInt32 offset , PFNNOTIFY notify , VoidPtr data = null )
Set the memory chunk that needs to be read as a stream This function behaves the same as SFBMemAStream::Set(), with the additional feature of a User callback to free the memory chunk.
Void Cancel( Void ) (inherits from SFBAStream)
Cancel a callback that was scheduled with SFBAStream::Readable().
SInt32 Read( VoidPtr buffer , UInt32 count ) (inherits from SFBAStream)
Attempt to read data from a stream, and returns the number of bytes read. If no data is available for reading, it returns the value AEE_STREAM_WOULDBLOCK.
SInt32 Read( SFXBufferPtr buffer ) (inherits from SFBAStream)
Attempt to read data from a stream, and returns the number of bytes read. If no data is available for reading, it returns the value AEE_STREAM_WOULDBLOCK.
Void Readable( PFNNOTIFY notify , VoidPtr data = null ) (inherits from SFBAStream)
Register a callback that checks whether data is available to be read. It is called when the SFBAStream::Read() returns AEE_STREAM_WOULDBLOCK.
Protected Functions
static
SFBBaseSmp
FactoryByCreate( AEECLSID id , SFCErrorPtr exception = null ) (inherits from SFBBase)
Create the instance for the specified ClassID's interface.
static
SFBBaseSmp
FactoryByQuery( SFBQuerySmpConstRef query , AEECLSID id , SFCErrorPtr exception = null ) (inherits from SFBBase)
Create the instance for the specified ClassID's interface using the SFBQuery instance.

SFBMemAStream::NewInstance
Create a new SFBMemAStream instance.
[ public, static ]
SFBMemAStreamSmp NewInstance(
    SFCErrorPtr exception = null   // Error
);
[ public, static ]
SFBMemAStreamSmp NewInstance(
    AEECLSID id                    // Class ID
    SFCErrorPtr exception = null   // Error
);

SFBMemAStream::Set
Set the memory chunk that needs to be read as a stream.
[ public ]
Void Set(
    VoidPtr buff    // pointer to the memory chunk that needs to be read as a stream
    UInt32 size     // size of the memory chunk
    UInt32 offset   // offset from the beginning of the memory chunk 
                    // to be set as the start data for the memory stream
    Bool sysMem     // flag to specify if the memory for the buffer buff belongs to the user area or the system memory
);

Reference

BREW API IMEMASTREAM_Set


SFBMemAStream::SetEx
Set the memory chunk that needs to be read as a stream This function behaves the same as SFBMemAStream::Set(), with the additional feature of a User callback to free the memory chunk.
[ public ]
Void SetEx(
    VoidPtr buff          // pointer to the memory chunk that needs to be read as a stream
    UInt32 size           // size of the memory chunk
    UInt32 offset         // offset from the beginning of the memory chunk 
                          // to be set as the start data for the memory stream
    PFNNOTIFY notify      // callback function to be called when the memory chunk needs to be freed
    VoidPtr data = null   // parameter to be passed to notify
);

Reference

BREW API IMEMASTREAM_SetEx