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 39 of file IFileMgr.h.

Constructor & Destructor Documentation

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

Definition at line 42 of file IFileMgr.h.

42 :_f(i){};

Member Function Documentation

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

Definition at line 67 of file IFileMgr.h.

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

Definition at line 44 of file IFileMgr.h.

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

Definition at line 57 of file IFileMgr.h.

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

Definition at line 56 of file IFileMgr.h.

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

Definition at line 54 of file IFileMgr.h.

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

Definition at line 55 of file IFileMgr.h.

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

Definition at line 59 of file IFileMgr.h.

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

Definition at line 52 of file IFileMgr.h.

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

Definition at line 46 of file IFileMgr.h.

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

Definition at line 47 of file IFileMgr.h.

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

Definition at line 49 of file IFileMgr.h.

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

Definition at line 50 of file IFileMgr.h.

50 { return (_f | fa); }

Member Data Documentation

int Io::IoFlags::_f = INVALID
private

Definition at line 82 of file IFileMgr.h.


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