FreePOOMA  2.4.1
Classes | Public Types | Public Member Functions
FileSetReader< Dim > Class Template Reference

FileSetReader<Dim> manages the reading of Arrays and Fields from "DiscField" format files (as designed for Pooma r1 by Bill Humphrey). More...

#include <FileSetReader.h>

List of all members.

Classes

struct  OffsetData

Public Types

typedef Interval< Dim > Domain_t
typedef POOMA_INT64 Offset_t

Public Member Functions

 FileSetReader (const char *filesetname)
 ~FileSetReader ()
bool open (bool abortOnError=false)
template<class T , class ETag >
bool read (Array< Dim, T, ETag > &a)
template<class Mesh , class T , class ETag >
bool read (Field< Mesh, T, ETag > &f)
const Domain_tdomain () const
const DiskLayout< Dim > & diskLayout () const
int nextRecord () const
int nextField () const
std::string errorMessage () const
bool bytesReversed () const
const DiskMetadiskMeta () const

Detailed Description

template<int Dim>
class FileSetReader< Dim >

FileSetReader<Dim> manages the reading of Arrays and Fields from "DiscField" format files (as designed for Pooma r1 by Bill Humphrey).

It uses a DiskMeta object to read the fileset's .meta file and a DiskLayout object to read the .layout file. It then reads the .offset and .data files to extract the data for each field.

NOTE: We do not currently provide random access to the fields within a record, as r1 did. Rather, reading an Array just advances the field counter until fieldsPerRecord is hit, and then it advances the record counter. Reading a Field assumes that there is enough room remaining in the record to get all the "sub-Fields" - i.e. a Pooma Field can't span multiple records.


Member Typedef Documentation

template<int Dim>
typedef Interval<Dim> FileSetReader< Dim >::Domain_t
template<int Dim>
typedef POOMA_INT64 FileSetReader< Dim >::Offset_t

Constructor & Destructor Documentation

template<int Dim>
FileSetReader< Dim >::FileSetReader ( const char *  filesetname)
template<int Dim>
FileSetReader< Dim >::~FileSetReader ( )

Member Function Documentation

template<int Dim>
bool FileSetReader< Dim >::open ( bool  abortOnError = false)
template<int Dim>
template<class T , class ETag >
bool FileSetReader< Dim >::read ( Array< Dim, T, ETag > &  a)
template<int Dim>
template<class Mesh , class T , class ETag >
bool FileSetReader< Dim >::read ( Field< Mesh, T, ETag > &  f)
template<int Dim>
const Domain_t& FileSetReader< Dim >::domain ( ) const [inline]
template<int Dim>
const DiskLayout<Dim>& FileSetReader< Dim >::diskLayout ( ) const [inline]
template<int Dim>
int FileSetReader< Dim >::nextRecord ( ) const [inline]
template<int Dim>
int FileSetReader< Dim >::nextField ( ) const [inline]
template<int Dim>
std::string FileSetReader< Dim >::errorMessage ( ) const [inline]
template<int Dim>
bool FileSetReader< Dim >::bytesReversed ( ) const [inline]
template<int Dim>
const DiskMeta* FileSetReader< Dim >::diskMeta ( ) const [inline]

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