Chombo + EB + MF  3.2
Classes | Macros | Enumerations | Functions | Variables
EBInterface.H File Reference
#include <hdf5.h>
#include <math.h>
#include "NamespaceHeader.H"
#include "NamespaceFooter.H"
Include dependency graph for EBInterface.H:

Go to the source code of this file.

Classes

struct  intvect2d
 
struct  intvect3d
 
struct  box2d
 
struct  box3d
 
union  box
 
struct  regvof
 
struct  irregface
 
struct  irregvof
 
struct  Attribute
 
struct  HDF5attributes
 

Macros

#define _EBINTERFACE_H_
 
#define ChTYPES   8
 
#define ADD_ATTRIBUTE(attrib, Ttype, ChType, Sname, value)
 
#define ADD_CHAR_ATTRIBUTE(attrib,Sname, value)
 
#define CFINITE(X)   !isnan(X) && (X) < HUGE_VAL && (X) > -HUGE_VAL
 

Enumerations

enum  ChPrecision { Float, Double }
 
enum  ChattributeType {
  INTEGER, FLOAT, DOUBLE, CHAR,
  INTVECT2D, INTVECT3D, BOX2D, BOX3D
}
 

Functions

void initializeHDF5datatypes ()
 
int writeEBChomboFile (const char *filename, box3d domain, int length, box3d *boxes, long *regoffset, long *irregoffset, long numreg, long numirreg, regvof *regularVofs, irregvof *irregularVofs)
 
int isEmpty (const box2d *)
 
int numPnts2 (const box2d *)
 
int numPnts3 (const box3d *)
 
void grow2 (box2d *, intvect2d *)
 
void grow3 (box3d *, intvect3d *)
 
void refine2 (box2d *, int refinement)
 
void refine3 (box3d *, int refinement)
 
int cut (const box3d *box, int dir, int index)
 
box2dcrossSection (const box3d *box, int dir, box2d *box2)
 
int Handleopen (HDF5Handle *handle, const char *filename, hid_t accessMode)
 
int HandlesetGroup (HDF5Handle *handle, const char *group)
 
int Handleclose (HDF5Handle handle)
 
int HandleCreateGroup (HDF5Handle *handle, const char *group)
 
void freeHDF5attributes (HDF5attributes *attributes)
 
void printAttributes (HDF5attributes *attributes)
 
int readHDF5attributes (HDF5attributes *attr, HDF5Handle handle)
 
int readBoxes (box **boxes, int *length, HDF5Handle handle)
 
int writeHDF5attributes (HDF5attributes *attr, HDF5Handle handle)
 
int writeBoxes (box *boxes, int length, HDF5Handle handle)
 

Variables

static hid_t intvect2d_id
 
static hid_t intvect3d_id
 
static hid_t box2d_id
 
static hid_t box3d_id
 
struct {
   hid_t   file_ID
 
   hid_t   group_ID
 
   int   dim
 
   ChPrecision   precision
 
HDF5Handle
 
static const char * TYPE_NAMES [ChTYPES]
 
AttributeADD_tmp
 
AttributeADD_at
 

Macro Definition Documentation

#define _EBINTERFACE_H_
#define ChTYPES   8
#define ADD_ATTRIBUTE (   attrib,
  Ttype,
  ChType,
  Sname,
  value 
)
Value:
ADD_tmp = attrib.accessByType[ChType] ; \
ADD_at = (Attribute*) malloc(sizeof(Attribute)); \
attrib.accessByType[ChType] = ADD_at; \
ADD_at->name = malloc(strlen(Sname)+1); \
sprintf(ADD_at->name, Sname); \
ADD_at->data = malloc(sizeof(Ttype)); \
ADD_at->attributeType = ChType; \
*((Ttype *)ADD_at->data) = value; \
attrib.numByType[ChType]++; \
void * next
Definition: EBInterface.H:180
int attributeType
Definition: EBInterface.H:179
Attribute * ADD_tmp
Definition: EBInterface.H:175
void * data
Definition: EBInterface.H:177
char * name
Definition: EBInterface.H:178
Attribute * ADD_at
#define ADD_CHAR_ATTRIBUTE (   attrib,
  Sname,
  value 
)
Value:
ADD_tmp = attrib.accessByType[CHAR] ; \
ADD_at = (Attribute*) malloc(sizeof(Attribute)); \
attrib.accessByType[CHAR] = ADD_at; \
ADD_at->name = malloc(strlen(Sname)); \
sprintf(ADD_at->name, Sname); \
ADD_at->data = malloc(strlen(value)); \
sprintf((char*)ADD_at->data, value); \
attrib.numByType[CHAR]++; \
void * next
Definition: EBInterface.H:180
int attributeType
Definition: EBInterface.H:179
Attribute * ADD_tmp
Definition: EBInterface.H:175
void * data
Definition: EBInterface.H:177
char * name
Definition: EBInterface.H:178
Attribute * ADD_at
Definition: EBInterface.H:167
#define CFINITE (   X)    !isnan(X) && (X) < HUGE_VAL && (X) > -HUGE_VAL

create our own platform independent form that spans a lot of IEEE goofiness.

Enumeration Type Documentation

Enumerator
Float 
Double 
Enumerator
INTEGER 
FLOAT 
DOUBLE 
CHAR 
INTVECT2D 
INTVECT3D 
BOX2D 
BOX3D 

Function Documentation

void initializeHDF5datatypes ( )
int writeEBChomboFile ( const char *  filename,
box3d  domain,
int  length,
box3d boxes,
long *  regoffset,
long *  irregoffset,
long  numreg,
long  numirreg,
regvof regularVofs,
irregvof irregularVofs 
)
int isEmpty ( const box2d )
int numPnts2 ( const box2d )
int numPnts3 ( const box3d )
void grow2 ( box2d ,
intvect2d  
)
void grow3 ( box3d ,
intvect3d  
)
void refine2 ( box2d ,
int  refinement 
)
void refine3 ( box3d ,
int  refinement 
)
int cut ( const box3d box,
int  dir,
int  index 
)
box2d* crossSection ( const box3d box,
int  dir,
box2d box2 
)
int Handleopen ( HDF5Handle handle,
const char *  filename,
hid_t  accessMode 
)
int HandlesetGroup ( HDF5Handle handle,
const char *  group 
)
int Handleclose ( HDF5Handle  handle)
int HandleCreateGroup ( HDF5Handle handle,
const char *  group 
)
void freeHDF5attributes ( HDF5attributes attributes)
void printAttributes ( HDF5attributes attributes)
int readHDF5attributes ( HDF5attributes attr,
HDF5Handle  handle 
)
int readBoxes ( box **  boxes,
int *  length,
HDF5Handle  handle 
)
int writeHDF5attributes ( HDF5attributes attr,
HDF5Handle  handle 
)
int writeBoxes ( box boxes,
int  length,
HDF5Handle  handle 
)

Variable Documentation

hid_t intvect2d_id
static
hid_t intvect3d_id
static
hid_t box2d_id
static
hid_t box3d_id
static
hid_t file_ID
hid_t group_ID
int dim

Referenced by CutCellMoments< dim >::addBdMoments(), NormalDerivativeNew< dim >::addLDeriv(), ComputeCutCellMoments< dim >::addMomentMaps(), NormalDerivativeNew< dim >::addNDeriv(), DivNormalRefinement< dim >::approximateDivNormal(), NormalDerivativeNew< dim >::calculateAll(), NormalDerivativeNew< dim >::calculatePhiDerivs(), CutCellMoments< dim >::changeMomentCoordinates(), LSProblem< dim >::computeBounds(), ComputeCutCellMoments< dim >::ComputeCutCellMoments(), ComputeCutCellMoments< dim >::computeMoments(), MinimalCCCM< dim >::computeMomentsRecursively(), ComputeCutCellMoments< dim >::computeResiduals(), MinimalCCCM< dim >::computeRhs(), ComputeCutCellMoments< dim >::computeRhs(), CoordinateSystem< dim >::convert(), CoordinateSystem< dim >::CoordinateSystem(), CutCellMoments< dim >::CutCellMoments(), IFData< dim >::defineLocalCoords(), LSProblem< dim >::differentiate(), NoRefinement< dim >::doRefine(), FixedRefinement< dim >::doRefine(), ParticleData< P >::enforcePeriodic(), NormalDerivative< dim >::evaluate(), NormalDerivative< dim >::expand(), MinimalCCCM< dim >::factorial(), ComputeCutCellMoments< dim >::factorial(), CutCellMoments< dim >::fullCellQuadrature(), generateMultiIndices(), CutCellMoments< dim >::getCentroid(), IFData< dim >::IFData(), CutCellMoments< dim >::initialize(), LSProblem< dim >::invertNormalEq(), IFData< dim >::isConnected(), LSProblem< dim >::LSProblem(), IFData< dim >::makeCornerSigns(), IFData< dim >::makeEdgeKey(), MinimalCCCM< dim >::MinimalCCCM(), LSProblem< dim >::momentBounds(), LSProblem< dim >::monoMaxMin(), NormalDerivativeNew< dim >::nChoosek(), NormalDerivativeNew< dim >::normal(), LSProblem< dim >::numMonomials(), LSProblem< dim >::outputMatrix(), IFSlicer< dim >::print(), LSProblem< dim >::print(), CutCellMoments< dim >::print(), IFData< dim >::print(), ComputeCutCellMoments< dim >::refine(), IFData< dim >::rootFinder(), LSProblem< dim >::setMatrix(), IFData< dim >::setNormalDerivatives(), ArSp::sizeOfDim(), ArSp::sizeOfDim< CHRange >(), CutCellMoments< dim >::sliceResidual(), IFSlicer< dim >::value(), and LSProblem< dim >::~LSProblem().

ChPrecision precision
struct { ... } HDF5Handle
const char* TYPE_NAMES[ChTYPES]
static
Attribute* ADD_tmp
Attribute* ADD_at