Public Member Functions | Protected Member Functions | Protected Attributes | Private Types

fasp::FileInput Class Reference

#include <FileInput.h>

Collaboration diagram for fasp::FileInput:
Collaboration graph
[legend]

Public Member Functions

 FileInput (const char *fname=0, uint32_t bufsize=0x10000)
virtual ~FileInput ()
virtual bool Read_Init (const dabc::WorkerRef &wrk, const dabc::Command &cmd)
bool Init ()
virtual unsigned Read_Size ()
virtual unsigned Read_Complete (dabc::Buffer &buf)

Protected Member Functions

bool CloseFile ()
bool OpenNextFile ()

Protected Attributes

std::string fFileName
uint32_t fBufferSize
dabc::Object * fFilesList
FILE * fFile
std::string fCurrentFileName
uint64_t fCurrentRead
uint8_t * fRaw
unsigned fRawSize
unsigned fRawPos
unsigned fRawSync

Private Types

enum  { FaspBlockSize = 44, FaspSyncPos = 34 }
enum  { DummySync = 0xffffffff }

Detailed Description

Definition at line 17 of file FileInput.h.


Member Enumeration Documentation

anonymous enum [private]
Enumerator:
FaspBlockSize 
FaspSyncPos 

Definition at line 19 of file FileInput.h.

anonymous enum [private]
Enumerator:
DummySync 

Definition at line 21 of file FileInput.h.


Constructor & Destructor Documentation

fasp::FileInput::FileInput ( const char *  fname = 0,
uint32_t  bufsize = 0x10000 
)

Definition at line 17 of file FileInput.cxx.

fasp::FileInput::~FileInput (  )  [virtual]

Definition at line 33 of file FileInput.cxx.

References CloseFile(), fFilesList, and fRaw.


Member Function Documentation

bool fasp::FileInput::CloseFile (  )  [protected]

Definition at line 111 of file FileInput.cxx.

References fCurrentFileName, fCurrentRead, and fFile.

Referenced by OpenNextFile(), Read_Complete(), and ~FileInput().

bool fasp::FileInput::Init (  ) 

Definition at line 59 of file FileInput.cxx.

References fBufferSize, fFileName, fFilesList, and OpenNextFile().

Referenced by Read_Init().

bool fasp::FileInput::OpenNextFile (  )  [protected]

Definition at line 83 of file FileInput.cxx.

References CloseFile(), fCurrentFileName, fFile, fFilesList, fRaw, and fRawSize.

Referenced by Init(), and Read_Complete().

unsigned fasp::FileInput::Read_Complete ( dabc::Buffer &  buf  )  [virtual]
bool fasp::FileInput::Read_Init ( const dabc::WorkerRef &  wrk,
const dabc::Command &  cmd 
) [virtual]

Definition at line 45 of file FileInput.cxx.

References FaspBlockSize, fBufferSize, fFileName, fRawSize, and Init().

unsigned fasp::FileInput::Read_Size (  )  [virtual]

Definition at line 119 of file FileInput.cxx.

References fBufferSize.


Field Documentation

uint32_t fasp::FileInput::fBufferSize [protected]

Definition at line 40 of file FileInput.h.

Referenced by Init(), Read_Init(), and Read_Size().

std::string fasp::FileInput::fCurrentFileName [protected]

Definition at line 45 of file FileInput.h.

Referenced by CloseFile(), and OpenNextFile().

uint64_t fasp::FileInput::fCurrentRead [protected]

Definition at line 46 of file FileInput.h.

Referenced by CloseFile().

FILE* fasp::FileInput::fFile [protected]

Definition at line 43 of file FileInput.h.

Referenced by CloseFile(), OpenNextFile(), and Read_Complete().

std::string fasp::FileInput::fFileName [protected]

Definition at line 39 of file FileInput.h.

Referenced by Init(), and Read_Init().

dabc::Object* fasp::FileInput::fFilesList [protected]

Definition at line 42 of file FileInput.h.

Referenced by Init(), OpenNextFile(), and ~FileInput().

uint8_t* fasp::FileInput::fRaw [protected]

Definition at line 48 of file FileInput.h.

Referenced by OpenNextFile(), Read_Complete(), and ~FileInput().

unsigned fasp::FileInput::fRawPos [protected]

Definition at line 50 of file FileInput.h.

Referenced by Read_Complete().

unsigned fasp::FileInput::fRawSize [protected]

Definition at line 49 of file FileInput.h.

Referenced by OpenNextFile(), Read_Complete(), and Read_Init().

unsigned fasp::FileInput::fRawSync [protected]

Definition at line 51 of file FileInput.h.

Referenced by Read_Complete().


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