Jpp
Public Member Functions | Protected Attributes | List of all members
JIO::JStreamReader Class Reference

Binary input based on std::istream. More...

#include <JStreamIO.hh>

Inheritance diagram for JIO::JStreamReader:
JIO::JReader JLANG::JBinaryInput JLANG::JAbstractObjectStatus JIO::JBinaryFileReader< JPhotonPath > JIO::JBinaryFileReader< T > JMARKOV::JPhotonPathReader JSUPPORT::JDAQFileReader< T, true >

Public Member Functions

 JStreamReader (std::istream &__in)
 Constructor. More...
 
virtual bool getStatus () const
 Status of reader. More...
 
virtual void clear ()
 Clear status of reader. More...
 
virtual int read (char *buffer, const int length)
 Read byte array. More...
 
JReaderoperator>> (JSerialisable &object)
 Read serialisable data object. More...
 
JReaderoperator>> (bool &value)
 
JReaderoperator>> (char &value)
 
JReaderoperator>> (unsigned char &value)
 
JReaderoperator>> (short &value)
 
JReaderoperator>> (unsigned short &value)
 
JReaderoperator>> (int &value)
 
JReaderoperator>> (unsigned int &value)
 
JReaderoperator>> (long int &value)
 
JReaderoperator>> (unsigned long int &value)
 
JReaderoperator>> (long long int &value)
 
JReaderoperator>> (unsigned long long int &value)
 
JReaderoperator>> (float &value)
 
JReaderoperator>> (double &value)
 
JReaderoperator>> (long double &value)
 
JReaderload (JSerialisable &object)
 Read object. More...
 
template<class T >
JReaderload (T &object)
 Read object. More...
 
 operator bool () const
 Type conversion operator. More...
 
bool operator! () const
 Negated status of this object. More...
 

Protected Attributes

std::istream & in
 

Detailed Description

Binary input based on std::istream.

This class implements the JReader interface.

Definition at line 24 of file JStreamIO.hh.

Constructor & Destructor Documentation

◆ JStreamReader()

JIO::JStreamReader::JStreamReader ( std::istream &  __in)
inline

Constructor.

Parameters
__ininput stream

Definition at line 33 of file JStreamIO.hh.

33  :
34  in(__in)
35  {}

Member Function Documentation

◆ getStatus()

virtual bool JIO::JStreamReader::getStatus ( ) const
inlinevirtual

Status of reader.

Returns
status of this reader

Implements JLANG::JAbstractObjectStatus.

Definition at line 43 of file JStreamIO.hh.

44  {
45  return (bool) in;
46  }

◆ clear()

virtual void JIO::JStreamReader::clear ( )
inlinevirtual

Clear status of reader.

Reimplemented from JIO::JReader.

Definition at line 52 of file JStreamIO.hh.

53  {
54  in.clear();
55  }

◆ read()

virtual int JIO::JStreamReader::read ( char *  buffer,
const int  length 
)
inlinevirtual

Read byte array.

Parameters
bufferpointer to byte array
lengthnumber of bytes
Returns
number of bytes read

Implements JLANG::JBinaryInput.

Definition at line 65 of file JStreamIO.hh.

66  {
67  in.read(buffer, length);
68 
69  return in.gcount();
70  }

◆ operator>>() [1/15]

JReader& JIO::JReader::operator>> ( JSerialisable object)
inlineinherited

Read serialisable data object.

Parameters
objectserialisable data object
Returns
JReader

Definition at line 80 of file JSerialisable.hh.

81  {
82  return object.read(*this);
83  }

◆ operator>>() [2/15]

JReader& JIO::JReader::operator>> ( bool &  value)
inlineinherited

Definition at line 86 of file JSerialisable.hh.

86 { read((char*) &value, sizeof(bool)); return *this; }

◆ operator>>() [3/15]

JReader& JIO::JReader::operator>> ( char &  value)
inlineinherited

Definition at line 87 of file JSerialisable.hh.

87 { read((char*) &value, sizeof(char)); return *this; }

◆ operator>>() [4/15]

JReader& JIO::JReader::operator>> ( unsigned char &  value)
inlineinherited

Definition at line 88 of file JSerialisable.hh.

88 { read((char*) &value, sizeof(unsigned char)); return *this; }

◆ operator>>() [5/15]

JReader& JIO::JReader::operator>> ( short &  value)
inlineinherited

Definition at line 89 of file JSerialisable.hh.

89 { read((char*) &value, sizeof(short)); return *this; }

◆ operator>>() [6/15]

JReader& JIO::JReader::operator>> ( unsigned short &  value)
inlineinherited

Definition at line 90 of file JSerialisable.hh.

90 { read((char*) &value, sizeof(unsigned short)); return *this; }

◆ operator>>() [7/15]

JReader& JIO::JReader::operator>> ( int &  value)
inlineinherited

Definition at line 91 of file JSerialisable.hh.

91 { read((char*) &value, sizeof(int)); return *this; }

◆ operator>>() [8/15]

JReader& JIO::JReader::operator>> ( unsigned int &  value)
inlineinherited

Definition at line 92 of file JSerialisable.hh.

92 { read((char*) &value, sizeof(unsigned int)); return *this; }

◆ operator>>() [9/15]

JReader& JIO::JReader::operator>> ( long int &  value)
inlineinherited

Definition at line 93 of file JSerialisable.hh.

93 { read((char*) &value, sizeof(long int)); return *this; }

◆ operator>>() [10/15]

JReader& JIO::JReader::operator>> ( unsigned long int &  value)
inlineinherited

Definition at line 94 of file JSerialisable.hh.

94 { read((char*) &value, sizeof(unsigned long int)); return *this; }

◆ operator>>() [11/15]

JReader& JIO::JReader::operator>> ( long long int &  value)
inlineinherited

Definition at line 95 of file JSerialisable.hh.

95 { read((char*) &value, sizeof(long long int)); return *this; }

◆ operator>>() [12/15]

JReader& JIO::JReader::operator>> ( unsigned long long int &  value)
inlineinherited

Definition at line 96 of file JSerialisable.hh.

96 { read((char*) &value, sizeof(unsigned long long int)); return *this; }

◆ operator>>() [13/15]

JReader& JIO::JReader::operator>> ( float &  value)
inlineinherited

Definition at line 97 of file JSerialisable.hh.

97 { read((char*) &value, sizeof(float)); return *this; }

◆ operator>>() [14/15]

JReader& JIO::JReader::operator>> ( double &  value)
inlineinherited

Definition at line 98 of file JSerialisable.hh.

98 { read((char*) &value, sizeof(double)); return *this; }

◆ operator>>() [15/15]

JReader& JIO::JReader::operator>> ( long double &  value)
inlineinherited

Definition at line 99 of file JSerialisable.hh.

99 { read((char*) &value, sizeof(long double)); return *this; }

◆ load() [1/2]

JReader& JIO::JReader::load ( JSerialisable object)
inlineinherited

Read object.

Parameters
objectobject
Returns
this reader

Definition at line 108 of file JSerialisable.hh.

109  {
110  return object.read(*this);
111  }

◆ load() [2/2]

template<class T >
JReader& JIO::JReader::load ( T &  object)
inlineinherited

Read object.

Parameters
objectobject
Returns
this reader

Definition at line 121 of file JSerialisable.hh.

122  {
123  return *this >> object;
124  }

◆ operator bool()

JLANG::JAbstractObjectStatus::operator bool ( ) const
inlineinherited

Type conversion operator.

Returns
status of this object

Definition at line 33 of file JAbstractObjectStatus.hh.

34  {
35  return this->getStatus();
36  }

◆ operator!()

bool JLANG::JAbstractObjectStatus::operator! ( ) const
inlineinherited

Negated status of this object.

Returns
negated status of this object

Definition at line 44 of file JAbstractObjectStatus.hh.

45  {
46  return !(this->getStatus());
47  }

Member Data Documentation

◆ in

std::istream& JIO::JStreamReader::in
protected

Definition at line 73 of file JStreamIO.hh.


The documentation for this class was generated from the following file:
JLANG::JBinaryInput::read
virtual int read(char *buffer, const int length)=0
Read byte array.
JLANG::JAbstractObjectStatus::getStatus
virtual bool getStatus() const =0
Get status of object.
JIO::JStreamReader::in
std::istream & in
Definition: JStreamIO.hh:73