library of assembled shared sources

http://lass.cocamware.com

lass::io::BinaryIStream Class Reference

base class of binary input streams. More...

#include <binary_i_stream.h>

Inheritance diagram for lass::io::BinaryIStream:

Inheritance graph
[legend]
Collaboration diagram for lass::io::BinaryIStream:

Collaboration graph
[legend]

Public Member Functions

 BinaryIStream ()
 ~BinaryIStream ()
long tellg () const
BinaryIStreamseekg (long iPosition)
BinaryIStreamseekg (long iOffset, std::ios_base::seekdir iDirection)
BinaryIStreamoperator>> (char &x)
BinaryIStreamoperator>> (num::Tint8 &x)
BinaryIStreamoperator>> (num::Tuint8 &x)
BinaryIStreamoperator>> (num::Tint16 &x)
BinaryIStreamoperator>> (num::Tuint16 &x)
BinaryIStreamoperator>> (num::Tint32 &x)
BinaryIStreamoperator>> (num::Tuint32 &x)
BinaryIStreamoperator>> (num::Tint64 &x)
BinaryIStreamoperator>> (num::Tuint64 &x)
BinaryIStreamoperator>> (num::Tfloat32 &x)
BinaryIStreamoperator>> (num::Tfloat64 &x)
BinaryIStreamoperator>> (bool &x)
BinaryIStreamoperator>> (void *&x)
BinaryIStreamoperator>> (std::string &oOut)
template<typename T >
BinaryIStreamoperator>> (std::vector< T > &oOut)
template<typename T >
BinaryIStreamoperator>> (std::complex< T > &oOut)
void read (void *oOutput, size_t iNumberOfBytes)
 read a number of bytes from stream to buffer
num::Endianness endianness () const
void setEndianness (num::Endianness iEndianness)
const bool good () const
const bool eof () const
const bool fail () const
const bool bad () const
std::ios_base::iostate rdstate () const
void clear (std::ios_base::iostate iState=std::ios_base::goodbit)
void setstate (std::ios_base::iostate iState)
 operator num::SafeBool () const
const bool operator! () const

Protected Member Functions

void swap (NonCopyable &)

Private Member Functions

template<typename T >
BinaryIStreamreadValue (T &x)
virtual long doTellg () const =0
virtual void doSeekg (long iOffset, std::ios_base::seekdir iDirection)=0
virtual void doRead (void *oOutput, size_t iNumberOfBytes)=0

Detailed Description

base class of binary input streams.

Definition at line 63 of file binary_i_stream.h.


Constructor & Destructor Documentation

lass::io::BinaryIStream::BinaryIStream (  ) 

Definition at line 60 of file binary_i_stream.cpp.

lass::io::BinaryIStream::~BinaryIStream (  ) 

Definition at line 67 of file binary_i_stream.cpp.


Member Function Documentation

long lass::io::BinaryIStream::tellg (  )  const

Definition at line 73 of file binary_i_stream.cpp.

References doTellg().

BinaryIStream & lass::io::BinaryIStream::seekg ( long  iPosition  ) 

BinaryIStream & lass::io::BinaryIStream::seekg ( long  iOffset,
std::ios_base::seekdir  iDirection 
)

Definition at line 88 of file binary_i_stream.cpp.

References doSeekg().

BinaryIStream & lass::io::BinaryIStream::operator>> ( char &  x  ) 

Definition at line 96 of file binary_i_stream.cpp.

References readValue().

BinaryIStream & lass::io::BinaryIStream::operator>> ( num::Tint8 x  ) 

Definition at line 103 of file binary_i_stream.cpp.

References readValue().

BinaryIStream & lass::io::BinaryIStream::operator>> ( num::Tuint8 x  ) 

Definition at line 110 of file binary_i_stream.cpp.

References readValue().

BinaryIStream & lass::io::BinaryIStream::operator>> ( num::Tint16 x  ) 

Definition at line 117 of file binary_i_stream.cpp.

References readValue().

BinaryIStream & lass::io::BinaryIStream::operator>> ( num::Tuint16 x  ) 

Definition at line 124 of file binary_i_stream.cpp.

References readValue().

BinaryIStream & lass::io::BinaryIStream::operator>> ( num::Tint32 x  ) 

Definition at line 131 of file binary_i_stream.cpp.

References readValue().

BinaryIStream & lass::io::BinaryIStream::operator>> ( num::Tuint32 x  ) 

Definition at line 138 of file binary_i_stream.cpp.

References readValue().

BinaryIStream & lass::io::BinaryIStream::operator>> ( num::Tint64 x  ) 

Definition at line 145 of file binary_i_stream.cpp.

References readValue().

BinaryIStream & lass::io::BinaryIStream::operator>> ( num::Tuint64 x  ) 

Definition at line 152 of file binary_i_stream.cpp.

References readValue().

BinaryIStream & lass::io::BinaryIStream::operator>> ( num::Tfloat32 x  ) 

Definition at line 159 of file binary_i_stream.cpp.

References readValue().

BinaryIStream & lass::io::BinaryIStream::operator>> ( num::Tfloat64 x  ) 

Definition at line 166 of file binary_i_stream.cpp.

References readValue().

BinaryIStream & lass::io::BinaryIStream::operator>> ( bool &  x  ) 

Definition at line 173 of file binary_i_stream.cpp.

References lass::io::StreamBase::good().

BinaryIStream & lass::io::BinaryIStream::operator>> ( void *&  x  ) 

Definition at line 186 of file binary_i_stream.cpp.

References lass::io::StreamBase::good(), and LASS_META_ASSERT.

BinaryIStream & lass::io::BinaryIStream::operator>> ( std::string &  oOut  ) 

Definition at line 201 of file binary_i_stream.cpp.

References doRead(), lass::io::StreamBase::good(), and LASS_ASSERT.

template<typename T >
BinaryIStream & lass::io::BinaryIStream::operator>> ( std::vector< T > &  oOut  )  [inline]

Definition at line 60 of file binary_i_stream.inl.

References lass::io::StreamBase::good(), LASS_ASSERT, and lass::stde::T.

template<typename T >
BinaryIStream & lass::io::BinaryIStream::operator>> ( std::complex< T > &  oOut  )  [inline]

Definition at line 95 of file binary_i_stream.inl.

References lass::io::StreamBase::good(), and lass::stde::T.

void lass::io::BinaryIStream::read ( void *  output,
size_t  numBytes 
)

read a number of bytes from stream to buffer

Parameters:
iBytes pointer to buffer. Must be able to contain at least numBytes bytes.
numBytes number of bytes to be read

Definition at line 229 of file binary_i_stream.cpp.

References doRead().

Referenced by lass::io::BinaryISocket::doRead(), lass::io::Image::openRadianceHdr(), lass::io::Image::openTargaTrueColor(), lass::io::Image::HeaderPfm::readFrom(), and lass::io::Image::HeaderRadianceHdr::readFrom().

template<typename T >
BinaryIStream & lass::io::BinaryIStream::readValue ( T &  x  )  [inline, private]

virtual long lass::io::BinaryIStream::doTellg (  )  const [private, pure virtual]

virtual void lass::io::BinaryIStream::doSeekg ( long  iOffset,
std::ios_base::seekdir  iDirection 
) [private, pure virtual]

virtual void lass::io::BinaryIStream::doRead ( void *  oOutput,
size_t  iNumberOfBytes 
) [private, pure virtual]

num::Endianness lass::io::BinaryStreamBase::endianness (  )  const [inline, inherited]

Definition at line 75 of file binary_stream_base.h.

Referenced by readValue(), and lass::io::BinaryOStream::writeValue().

void lass::io::BinaryStreamBase::setEndianness ( num::Endianness  iEndianness  )  [inline, inherited]

const bool lass::io::StreamBase::good (  )  const [inline, inherited]

const bool lass::io::StreamBase::eof (  )  const [inline, inherited]

Definition at line 77 of file stream_base.h.

Referenced by lass::io::Image::open(), and lass::io::Image::save().

const bool lass::io::StreamBase::fail (  )  const [inline, inherited]

Definition at line 78 of file stream_base.h.

Referenced by lass::io::StreamBase::operator num::SafeBool().

const bool lass::io::StreamBase::bad (  )  const [inline, inherited]

Definition at line 79 of file stream_base.h.

std::ios_base::iostate lass::io::StreamBase::rdstate (  )  const [inline, inherited]

Definition at line 80 of file stream_base.h.

Referenced by lass::io::XmlOElement::XmlOElement().

void lass::io::StreamBase::clear ( std::ios_base::iostate  iState = std::ios_base::goodbit  )  [inline, inherited]

void lass::io::StreamBase::setstate ( std::ios_base::iostate  iState  )  [inline, inherited]

lass::io::StreamBase::operator num::SafeBool (  )  const [inline, inherited]

const bool lass::io::StreamBase::operator! (  )  const [inline, inherited]

Definition at line 84 of file stream_base.h.

void lass::util::NonCopyable::swap ( NonCopyable  )  [inline, protected, inherited]

Definition at line 60 of file non_copyable.h.

Referenced by lass::io::Image::readLine().


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

Generated on Mon Nov 10 14:22:09 2008 for Library of Assembled Shared Sources by doxygen 1.5.7.1
SourceForge.net Logo