foobar2000 SDK  2015-01-14
Public Member Functions | Data Fields
pfc::fdSelect

#include <nix-objects.h>

Public Member Functions

int Select ()
 
int Select (double timeOutSeconds)
 
int Select (timeval *tv)
 

Data Fields

fdSet Errors
 
fdSet Reads
 
fdSet Writes
 

Detailed Description

Definition at line 58 of file nix-objects.h.

Member Function Documentation

int pfc::fdSelect::Select ( )

Definition at line 87 of file nix-objects.cpp.

87  {
88  return Select( (timeval*) NULL );
89  }
int pfc::fdSelect::Select ( double  timeOutSeconds)

Definition at line 90 of file nix-objects.cpp.

90  {
91  if (timeOutSeconds < 0) {
92  return Select( );
93  } else {
94  timeval tv = makeTimeVal( timeOutSeconds );
95  return Select( & tv );
96  }
97  }
timeval makeTimeVal(double timeSeconds)
Definition: nix-objects.cpp:62
int pfc::fdSelect::Select ( timeval *  tv)

Definition at line 98 of file nix-objects.cpp.

98  {
99  int nfds = 0;
100  max_acc(nfds, Reads.m_nfds);
101  max_acc(nfds, Writes.m_nfds);
102  max_acc(nfds, Errors.m_nfds);
103  int rv = select(nfds, &Reads.m_set, &Writes.m_set, &Errors.m_set, tv);
104  if (rv < 0) {
105  throw exception_nix();
106  }
107  return rv;
108  }
void max_acc(t_val &p_acc, const t_val &p_val)
Definition: primitives.h:834
fd_set m_set
Definition: nix-objects.h:47

Field Documentation

fdSet pfc::fdSelect::Errors

Definition at line 65 of file nix-objects.h.

fdSet pfc::fdSelect::Reads

Definition at line 65 of file nix-objects.h.

fdSet pfc::fdSelect::Writes

Definition at line 65 of file nix-objects.h.


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