VST 3 SDK VST 3.7
SDK for developing VST plug-in
Loading...
Searching...
No Matches
MemoryStream Class Reference

Memory based Stream for IBStream implementation (using malloc). More...

#include <memorystream.h>

+ Inheritance diagram for MemoryStream:

Public Member Functions

 MemoryStream ()
 
 MemoryStream (void *memory, TSize memorySize)
 reuse a given memory without getting ownership
 
virtual ~MemoryStream ()
 
tresult read (void *buffer, int32 numBytes, int32 *numBytesRead) SMTG_OVERRIDE
 
tresult write (void *buffer, int32 numBytes, int32 *numBytesWritten) SMTG_OVERRIDE
 
tresult seek (int64 pos, int32 mode, int64 *result) SMTG_OVERRIDE
 
tresult tell (int64 *pos) SMTG_OVERRIDE
 
TSize getSize () const
 returns the current memory size
 
void setSize (TSize size)
 set the memory size, a realloc will occur if memory already used
 
chargetData () const
 returns the memory pointer
 
chardetachData ()
 returns the memory pointer and give up ownership
 
bool truncate ()
 realloc to the current use memory size if needed
 
bool truncateToCursor ()
 truncate memory at current cursor position
 
- Public Member Functions inherited from FUnknown
virtual tresult queryInterface (const TUID _iid, void **obj)=0
 
virtual uint32 addRef ()=0
 
virtual uint32 release ()=0
 

Protected Attributes

charmemory
 
TSize memorySize
 
TSize size
 
int64 cursor
 
bool ownMemory
 
bool allocationError
 

Additional Inherited Members

- Public Types inherited from IBStream
enum  IStreamSeekMode
 
- Public Attributes inherited from IBStream
 kIBSeekSet
 
 kIBSeekCur
 
 kIBSeekEnd
 
- Static Public Attributes inherited from IBStream
static const FUID iid
 
- Static Public Attributes inherited from FUnknown
static const FUID iid
 

Detailed Description

Memory based Stream for IBStream implementation (using malloc).

Constructor & Destructor Documentation

◆ MemoryStream() [1/2]

◆ MemoryStream() [2/2]

MemoryStream ( void * memory,
TSize memorySize )

reuse a given memory without getting ownership

◆ ~MemoryStream()

virtual ~MemoryStream ( )
virtual

Member Function Documentation

◆ read()

tresult read ( void * buffer,
int32 numBytes,
int32 * numBytesRead )
virtual

Implements IBStream.

◆ write()

tresult write ( void * buffer,
int32 numBytes,
int32 * numBytesWritten )
virtual

Implements IBStream.

◆ seek()

tresult seek ( int64 pos,
int32 mode,
int64 * result )
virtual

Implements IBStream.

◆ tell()

tresult tell ( int64 * pos)
virtual

Implements IBStream.

◆ getSize()

TSize getSize ( ) const

returns the current memory size

◆ setSize()

void setSize ( TSize size)

set the memory size, a realloc will occur if memory already used

◆ getData()

char * getData ( ) const

returns the memory pointer

◆ detachData()

char * detachData ( )

returns the memory pointer and give up ownership

◆ truncate()

bool truncate ( )

realloc to the current use memory size if needed

◆ truncateToCursor()

bool truncateToCursor ( )

truncate memory at current cursor position

Member Data Documentation

◆ memory

char* memory
protected

◆ memorySize

TSize memorySize
protected

◆ size

TSize size
protected

◆ cursor

int64 cursor
protected

◆ ownMemory

bool ownMemory
protected

◆ allocationError

bool allocationError
protected
Empty

Copyright © Steinberg Media Technologies GmbH. All Rights Reserved. This documentation is under this license.