VSTGUI  4.10
Graphical User Interface Framework not only for VST plugins
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
CFileStream Class Reference

File input and output stream. More...

+ Inheritance diagram for CFileStream:

Public Types

enum  { kReadMode = 1 << 0, kWriteMode = 1 << 1, kTruncateMode = 1 << 2, kBinaryMode = 1 << 3 }
 
- Public Types inherited from SeekableStream
enum  SeekMode { kSeekSet, kSeekCurrent, kSeekEnd }
 

Public Member Functions

 CFileStream ()
 
 ~CFileStream () noexceptoverride
 
bool open (UTF8StringPtr path, int32_t mode, ByteOrder byteOrder=kNativeByteOrder)
 
bool isEndOfFile () const
 
uint32_t writeRaw (const void *buffer, uint32_t size) override
 
uint32_t readRaw (void *buffer, uint32_t size) override
 
int64_t seek (int64_t pos, SeekMode mode) override
 returns -1 if seek fails otherwise new position
 
int64_t tell () const override
 
void rewind () override
 
bool operator<< (const std::string &str) override
 
bool operator>> (std::string &string) override
 
- Public Member Functions inherited from OutputStream
 OutputStream (ByteOrder byteOrder=kNativeByteOrder)
 
virtual ~OutputStream () noexcept=default
 
ByteOrder getByteOrder () const
 
void setByteOrder (ByteOrder newByteOrder)
 
bool operator<< (const int8_t &input)
 
bool operator<< (const uint8_t &input)
 
bool operator<< (const int16_t &input)
 
bool operator<< (const uint16_t &input)
 
bool operator<< (const int32_t &input)
 
bool operator<< (const uint32_t &input)
 
bool operator<< (const int64_t &input)
 
bool operator<< (const uint64_t &input)
 
bool operator<< (const double &input)
 
- Public Member Functions inherited from InputStream
 InputStream (ByteOrder byteOrder=kNativeByteOrder)
 
virtual ~InputStream () noexcept=default
 
ByteOrder getByteOrder () const
 
void setByteOrder (ByteOrder newByteOrder)
 
bool operator>> (int8_t &output)
 
bool operator>> (uint8_t &output)
 
bool operator>> (int16_t &output)
 
bool operator>> (uint16_t &output)
 
bool operator>> (int32_t &output)
 
bool operator>> (uint32_t &output)
 
bool operator>> (int64_t &output)
 
bool operator>> (uint64_t &output)
 
bool operator>> (double &output)
 
- Public Member Functions inherited from SeekableStream
virtual ~SeekableStream () noexcept=default
 
- Public Member Functions inherited from ReferenceCounted< T >
 ReferenceCounted ()=default
 
virtual ~ReferenceCounted () noexcept=default
 
 ReferenceCounted (const ReferenceCounted &)
 
ReferenceCountedoperator= (const ReferenceCounted &)
 
void forget () override
 decrease refcount and delete object if refcount == 0
 
void remember () override
 increase refcount
 
virtual int32_t getNbReference () const
 get refcount
 

Protected Attributes

FILE * stream
 
int32_t openMode
 

Detailed Description

File input and output stream.

Member Enumeration Documentation

anonymous enum
Enumerator
kReadMode 
kWriteMode 
kTruncateMode 
kBinaryMode 

Constructor & Destructor Documentation

~CFileStream ( )
overridenoexcept

Member Function Documentation

bool isEndOfFile ( ) const
bool open ( UTF8StringPtr  path,
int32_t  mode,
ByteOrder  byteOrder = kNativeByteOrder 
)
bool operator<< ( const std::string &  str)
overridevirtual

Implements OutputStream.

bool operator>> ( std::string &  string)
overridevirtual

Implements InputStream.

uint32_t readRaw ( void *  buffer,
uint32_t  size 
)
overridevirtual

Implements InputStream.

void rewind ( )
overridevirtual

Implements SeekableStream.

int64_t seek ( int64_t  pos,
SeekMode  mode 
)
overridevirtual

returns -1 if seek fails otherwise new position

Implements SeekableStream.

int64_t tell ( ) const
overridevirtual

Implements SeekableStream.

uint32_t writeRaw ( const void *  buffer,
uint32_t  size 
)
overridevirtual

Implements OutputStream.

Member Data Documentation

int32_t openMode
protected
FILE* stream
protected

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