LMMS
Loading...
Searching...
No Matches
Steinberg::Vst::FileStream Class Reference

#include <vstpresetfile.h>

Inheritance diagram for Steinberg::Vst::FileStream:
Steinberg::IBStream Steinberg::FUnknown

Public Member Functions

DECLARE_FUNKNOWN_METHODS tresult PLUGIN_API read (void *buffer, int32 numBytes, int32 *numBytesRead=nullptr) SMTG_OVERRIDE
tresult PLUGIN_API write (void *buffer, int32 numBytes, int32 *numBytesWritten=nullptr) SMTG_OVERRIDE
tresult PLUGIN_API seek (int64 pos, int32 mode, int64 *result=nullptr) SMTG_OVERRIDE
tresult PLUGIN_API tell (int64 *pos) SMTG_OVERRIDE
Public Member Functions inherited from Steinberg::FUnknown
virtual tresult PLUGIN_API queryInterface (const TUID _iid, void **obj)=0
virtual uint32 PLUGIN_API addRef ()=0
virtual uint32 PLUGIN_API release ()=0

Static Public Member Functions

static IBStreamopen (const char *filename, const char *mode)
 open a stream using stdio function

Protected Member Functions

 FileStream (FILE *file)
virtual ~FileStream ()

Protected Attributes

FILE * file

Additional Inherited Members

Public Types inherited from Steinberg::IBStream
enum  IStreamSeekMode { kIBSeekSet = 0 , kIBSeekCur , kIBSeekEnd }
Static Public Attributes inherited from Steinberg::IBStream
static const FUID iid
Static Public Attributes inherited from Steinberg::FUnknown
static const FUID iid

Detailed Description

Stream implementation for a file using stdio.

Constructor & Destructor Documentation

◆ FileStream()

Steinberg::Vst::FileStream::FileStream ( FILE * file)
protected

◆ ~FileStream()

Steinberg::Vst::FileStream::~FileStream ( )
protectedvirtual

Member Function Documentation

◆ open()

IBStream * Steinberg::Vst::FileStream::open ( const char * filename,
const char * mode )
static

open a stream using stdio function

◆ read()

tresult PLUGIN_API Steinberg::Vst::FileStream::read ( void * buffer,
int32 numBytes,
int32 * numBytesRead = nullptr )
virtual

Reads binary data from stream.

Parameters
buffer: destination buffer
numBytes: amount of bytes to be read
numBytesRead: result - how many bytes have been read from stream (set to 0 if this is of no interest)

Implements Steinberg::IBStream.

◆ seek()

tresult PLUGIN_API Steinberg::Vst::FileStream::seek ( int64 pos,
int32 mode,
int64 * result = nullptr )
virtual

Sets stream read-write position.

Parameters
pos: new stream position (dependent on mode)
mode: value of enum IStreamSeekMode
result: new seek position (set to 0 if this is of no interest)

Implements Steinberg::IBStream.

◆ tell()

tresult PLUGIN_API Steinberg::Vst::FileStream::tell ( int64 * pos)
virtual

Gets current stream read-write position.

Parameters
pos: is assigned the current position if function succeeds

Implements Steinberg::IBStream.

◆ write()

tresult PLUGIN_API Steinberg::Vst::FileStream::write ( void * buffer,
int32 numBytes,
int32 * numBytesWritten = nullptr )
virtual

Writes binary data to stream.

Parameters
buffer: source buffer
numBytes: amount of bytes to write
numBytesWritten: result - how many bytes have been written to stream (set to 0 if this is of no interest)

Implements Steinberg::IBStream.

Member Data Documentation

◆ file

FILE* Steinberg::Vst::FileStream::file
protected

The documentation for this class was generated from the following files: