Jpp  18.3.1
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Attributes | List of all members
JNET::JSelectReader Class Reference

Wrapper class for select call. More...

#include <JSelectReader.hh>

Inheritance diagram for JNET::JSelectReader:
JNET::JSelect

Public Member Functions

 JSelectReader ()
 Default constructor. More...
 
JFileDescriptorMaskgetReaderMask ()
 Get reader mask. More...
 
void setReaderMask (const JAbstractFile &file)
 Set reader mask. More...
 
bool hasReaderMask (const JAbstractFile &file) const
 Has reader file. More...
 
void reset ()
 Reset. More...
 
bool operator() (JTimeval timeout)
 Select call. More...
 
int operator() (timeval *timeout=NULL)
 Select call. More...
 

Protected Attributes

JFileDescriptorMask readerMask
 

Detailed Description

Wrapper class for select call.

Definition at line 32 of file JSelectReader.hh.

Constructor & Destructor Documentation

JNET::JSelectReader::JSelectReader ( )
inline

Default constructor.

Definition at line 37 of file JSelectReader.hh.

38  {}

Member Function Documentation

JFileDescriptorMask& JNET::JSelectReader::getReaderMask ( )
inline

Get reader mask.

Returns
mask

Definition at line 46 of file JSelectReader.hh.

47  {
48  return readerMask;
49  }
JFileDescriptorMask readerMask
void JNET::JSelectReader::setReaderMask ( const JAbstractFile file)
inline

Set reader mask.

Parameters
filefile

Definition at line 57 of file JSelectReader.hh.

58  {
60  }
then usage $script[< detector identifier >< run range >]< QA/QCfile > nExample script to produce data quality plots nWhen a detector identifier and run range are data are downloaded from the database nand subsequently stored in the given QA QC file
Definition: JDataQuality.sh:19
void set(const int file_descriptor)
Set file descriptor.
JFileDescriptorMask readerMask
bool JNET::JSelectReader::hasReaderMask ( const JAbstractFile file) const
inline

Has reader file.

Parameters
filefile
Returns
true if file set; else false

Definition at line 69 of file JSelectReader.hh.

70  {
71  return readerMask.has(file);
72  }
then usage $script[< detector identifier >< run range >]< QA/QCfile > nExample script to produce data quality plots nWhen a detector identifier and run range are data are downloaded from the database nand subsequently stored in the given QA QC file
Definition: JDataQuality.sh:19
bool has(const int file_descriptor) const
Has file descriptor.
JFileDescriptorMask readerMask
void JNET::JSelectReader::reset ( )
inline

Reset.

Definition at line 78 of file JSelectReader.hh.

79  {
80  readerMask.reset(true); // hard reset
81  }
void reset(const bool option=true)
Reset mask.
JFileDescriptorMask readerMask
bool JNET::JSelectReader::operator() ( JTimeval  timeout)
inline

Select call.

Parameters
timeouttimeout
Returns
number of valid file descriptors

Definition at line 90 of file JSelectReader.hh.

91  {
92  return this->operator()(&timeout);
93  }
bool operator()(JTimeval timeout)
Select call.
int JNET::JSelectReader::operator() ( timeval *  timeout = NULL)
inline

Select call.

Parameters
timeouttimeout
Returns
number of valid file descriptors

Definition at line 102 of file JSelectReader.hh.

103  {
105 
106  nfds += 1;
107  nfds = ::select(nfds, &readerMask, NULL, NULL, timeout);
108 
109  if (nfds != 0) {
110 
111  if (nfds < 0) {
112  if (errno != EINTR) {
113  THROW(JSelectException, "JSelectReader(..) failed.");
114  }
115  }
116 
117  } else {
118 
119  readerMask.reset(false); // soft reset
120  }
121 
122  return nfds;
123  }
bool select(const Trk &trk, const Evt &evt)
Event selection.
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
Definition: JException.hh:712
void reset(const bool option=true)
Reset mask.
int getNumberOfFileDescriptors() const
Get number of file descriptors.
JFileDescriptorMask readerMask

Member Data Documentation

JFileDescriptorMask JNET::JSelectReader::readerMask
protected

Definition at line 127 of file JSelectReader.hh.


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