VST 3 SDK  VST 3.7
SDK for developing VST plug-in
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Macros Groups Pages
ReadOnlyBStream Class Reference

Stream representing a Read-Only subsection of its source stream. More...

#include <vstpresetfile.h>

+ Inheritance diagram for ReadOnlyBStream:

Public Member Functions

 ReadOnlyBStream (IBStream *sourceStream, TSize sourceOffset, TSize sectionSize)
 
virtual ~ReadOnlyBStream ()
 
DECLARE_FUNKNOWN_METHODS tresult read (void *buffer, int32 numBytes, int32 *numBytesRead=nullptr) SMTG_OVERRIDE
 
tresult write (void *buffer, int32 numBytes, int32 *numBytesWritten=nullptr) SMTG_OVERRIDE
 
tresult seek (int64 pos, int32 mode, int64 *result=nullptr) SMTG_OVERRIDE
 
tresult tell (int64 *pos) SMTG_OVERRIDE
 

Protected Attributes

IBStreamsourceStream
 
TSize sourceOffset
 
TSize sectionSize
 
TSize seekPosition
 

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
 

Detailed Description

Stream representing a Read-Only subsection of its source stream.

Constructor & Destructor Documentation

ReadOnlyBStream ( IBStream sourceStream,
TSize  sourceOffset,
TSize  sectionSize 
)
~ReadOnlyBStream ( )
virtual

Member Function Documentation

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

Implements IBStream.

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

Implements IBStream.

tresult seek ( int64  pos,
int32  mode,
int64 result = nullptr 
)
virtual

Implements IBStream.

tresult tell ( int64 pos)
virtual

Implements IBStream.

Member Data Documentation

IBStream* sourceStream
protected
TSize sourceOffset
protected
TSize sectionSize
protected
TSize seekPosition
protected
Empty

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