The Gaudi Framework  v29r0 (ff2e7097)
Io::IoFlags Class Referencefinal

#include <GaudiKernel/IFileMgr.h>

Public Member Functions

 IoFlags ()=default
 
 IoFlags (int i)
 
int f () const
 
bool operator== (const IoFlags &fa) const
 
bool operator== (const int &fa) const
 
IoFlags operator| (const IoFlags &fa) const
 
IoFlags operator| (const int &fa) const
 
 operator int () const
 
bool isRead () const
 
bool isWrite () const
 
bool isRdWr () const
 
bool isInvalid () const
 
bool match (const IoFlags &fa, bool strict=true) const
 
std::string bits () const
 

Private Attributes

int _f = INVALID
 

Detailed Description

Definition at line 40 of file IFileMgr.h.

Constructor & Destructor Documentation

Io::IoFlags::IoFlags ( )
default
Io::IoFlags::IoFlags ( int  i)
inline

Definition at line 44 of file IFileMgr.h.

44 : _f( i ){};

Member Function Documentation

std::string Io::IoFlags::bits ( ) const
inline

Definition at line 70 of file IFileMgr.h.

71  {
72  std::string s;
73  int f( _f );
74  const int SHIFT = 8 * sizeof( int ) - 1;
75  const unsigned MASK = 1 << SHIFT;
76 
77  for ( int i = 1; i <= SHIFT + 1; ++i ) {
78  s += ( f & MASK ? '1' : '0' );
79  f <<= 1;
80  if ( i % 8 == 0 ) s += ' ';
81  }
82  return s;
83  }
STL class.
string s
Definition: gaudirun.py:253
int f() const
Definition: IFileMgr.h:46
int Io::IoFlags::f ( ) const
inline

Definition at line 46 of file IFileMgr.h.

46 { return _f; }
bool Io::IoFlags::isInvalid ( ) const
inline

Definition at line 59 of file IFileMgr.h.

59 { return ( ( _f & INVALID ) != 0 ); }
bool Io::IoFlags::isRdWr ( ) const
inline

Definition at line 58 of file IFileMgr.h.

58 { return ( ( _f & RDWR ) != 0 ); }
bool Io::IoFlags::isRead ( ) const
inline

Definition at line 56 of file IFileMgr.h.

56 { return ( _f == READ ); }
bool Io::IoFlags::isWrite ( ) const
inline

Definition at line 57 of file IFileMgr.h.

57 { return ( ( _f & WRITE ) != 0 ); }
bool Io::IoFlags::match ( const IoFlags fa,
bool  strict = true 
) const
inline

Definition at line 61 of file IFileMgr.h.

62  {
63  if ( strict ) {
64  return ( _f == fa );
65  }
66  // only look at first 2 bits
67  return ( ( _f & 3 ) == ( fa & 3 ) );
68  }
Io::IoFlags::operator int ( ) const
inline

Definition at line 54 of file IFileMgr.h.

54 { return _f; }
bool Io::IoFlags::operator== ( const IoFlags fa) const
inline

Definition at line 48 of file IFileMgr.h.

48 { return ( _f == fa.f() ); }
bool Io::IoFlags::operator== ( const int &  fa) const
inline

Definition at line 49 of file IFileMgr.h.

49 { return ( _f == fa ); }
IoFlags Io::IoFlags::operator| ( const IoFlags fa) const
inline

Definition at line 51 of file IFileMgr.h.

51 { return ( _f | fa.f() ); }
IoFlags Io::IoFlags::operator| ( const int &  fa) const
inline

Definition at line 52 of file IFileMgr.h.

52 { return ( _f | fa ); }

Member Data Documentation

int Io::IoFlags::_f = INVALID
private

Definition at line 86 of file IFileMgr.h.


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