Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages   Examples  

rf_backend_interface Class Reference

Basic interface for both readers and result object implementations. More...

#include <rf_backend_interface.h>

Inheritance diagram for rf_backend_interface:

base_interface List of all members.

Public Methods

 rf_backend_interface (rf_backend_impl *i=0)
 Wrap a valid implentation with an interface. More...

 rf_backend_interface (const rf_backend_handle& i)
 Initialize implementation from handle. More...

 rf_backend_interface (const rf_backend_interface &i)
 Copy constructor and equality operator. More...

rf_backend_interface& operator= (const rf_backend_interface &i)
 Copy constructor and equality operator. More...

 ~rf_backend_interface ()
 Just free the implementation.

int close_internal_reader ()
 Internal readers should invoke this in their destructor. More...

const rf_backend_implgetImpl () const
 Return the current managed implementation. More...

rf_backend_implgetImpl ()
 Return the current managed implementation. More...

void setImpl (rf_backend_impl *imp)
 Set the current implementation managed by the interface.

const rfobj_implgetResults_obj () const
 Return the underlying result object. More...

rfobj_implgetResults_obj ()
 Return the underlying result object. More...

rf_mesh_handle getMeshimpl () const
 Return interface to the mesh implementation. More...

int setMeshimpl (const rf_mesh_handle& mih)
 Set the mesh implementation to be used by the result object. More...

void* getLocal_data ()
 Return the local data stored by application or reader. More...

const void* getLocal_data () const
 Return the local data stored by application or reader. More...

int setLocal_data (void *data)
 Set the local data by application or reader. More...

int delete_local_data ()
 Free rf_backend_impl::local_data. More...

int write_to_pipe ()
 Cause an external backend to write it's information to an I/O pipe. More...

int send_line (const char* buf, int flush)
 Send a command line to external reader executable. More...

int recv_line (char* buf, int maxchar)
 Recieve a line (terminated by
) from external reader executable.
More...


int recv_bytes (void* buf, int bytes, int block)
 Recieve a specified number of bytes from external reader executable. More...

rf_backend_implopen (const char *be, size_t nf, const char **files, int np, const char **pars)
 Open specified result file and return result interface object representing specified backend. More...

int parseFileSpecification (const char *filelist)
 Parse file specification. More...

RFFileSetList determineFileSpecification (const char *filelist)
 Parse file specification and return RFFileSetList. More...

size_t nFileSets () const
 Return the number of file sets managed by the implementation. More...

size_t getFileStyle () const
 Return file line specification style. More...

RFFileSetList getAllFiles () const
 Return entire file list. More...

RFFileSetList getFileSet (int fset, const char *ext=0) const
 Return file set list for specified file set and specified extension. More...

StorageBuffer completeFileSpecification ()
 Inverse operation of parsing line. More...

int setAllFiles (const RFFileSetList& fileSets)
 Set the file list specification from external source. More...

int setFileSpec (const StorageBuffer& fspec)
 Set the file specification. More...

int write_domain (const char *file, int n_res_given, rf_result_func get_res_func, int tstep, void *auxdata)
 Write the current mesh and results managed by info into a domain file. More...

int write_domain_results_from (rfobj_impl *results_from, const char *file, int tstep)
 Write the mesh with results managed results_from into a domain file. More...

int is_big_endian (void)
 Determine Endian-ness of current machine. More...

int byte_swap (unsigned char *bytes, size_t el_size, size_t n_el)
 Byte swapping routine for buffer of arbitrary number of Elements. More...

int byte_swap_int (int *i)
 Endian swap bytes of input integer. More...

int byte_swap_float (float *f)
 Endian swap bytes of input float. More...

int byte_swap_double (double *d)
 Endian swap bytes of input double. More...

int read_bytes (void *buf, size_t el_size, size_t n, FILE *fp, int swap_bytes, int fb)
 Read arbitrary bytes into a buffer. More...

RFFileList multi_tstep (const RFFileList& files) const
 Break given file list into list of timestep files suitable for user_external_load. More...

int user_parse_inputinit (const char *buf, int j, const char *file, const char *format, const char *zonemask, int *nfiles, const char **files)
 This method parses the inputinit command line from front end and returns the set of files to be opened. More...

int user_external_load (int nfiles, const char **files, int *d_tstep, RFPrecType *d_prec, size_t *nnodes)
 
Deprecated:
code user_fileset_load instead.
More...


int user_fileset_load (size_t nsets, int *d_tstep, RFPrecType *d_prec, size_t *nnodes)
 This method to open (or internally note) the nfiles requested. More...

int user_external_close ()
 This method closes the open files in the reader. More...

int user_free_local (void *data)
 Method to delete user created anonymous data. More...

int user_file_descriptor (size_t nnodes, int tstep)
 Method to simply determine and specify the number of nodes, elements, and define results. More...

int user_external_grid (int tstep)
 Method to read and define nodes in mesh. More...

int user_external_elements (int tstep)
 Method to read and define unstructured elements in the mesh. More...

int user_external_groups (int tstep)
 Method to group elements into families. More...

int user_external_postmesh (int tstep)
 Method to carry out any other post mesh definition functions. More...

int user_external_scalar (int idnum, const char *name, int nvals, RFEntityType type, void *values, int skip, RFPrecType prec, int tstep)
 Method to return requested results to caller. More...

int user_external_iblank (int *iblank, int tstep)
 Method to define blanking data structure for structured meshes. More...

int getRunpars (RFRunPars& pars) const
 Get user run parameters. More...

char getTris_as_quads () const
 Get if tris are being read as quads. More...

const char* version () const
 Return information about version. More...

const char* backend () const
 Return the name of the backend. More...

const char* format () const
 Return the format name for reader. More...

const char* title () const
 Return title string in result file. More...

const char* date () const
 Return the date in the result file. More...

const char* error_string () const
 Return the current error string. More...

const char* getWrite_file () const
 Return the file name used if we write a domain file. More...

int getMax_cache () const
 Return the result cache depth. More...

int is_v3_frontend () const
 Return if this is a V3 or pV3 application. More...

int is_v3 () const
 Return if this is a V3 application. More...

int is_pv3 () const
 Return if this is a pV3 application. More...

int is_debug () const
 Return if debug flag set. More...

RFBackendOrder getNode_style () const
 Return the node style for the mesh. More...

RF_SIGNED_LONG getNode_offset () const
 Return the node offset for the mesh. More...

char getNeeds_node_dims () const
 Return whether or not the mesh implementation knows about node dimensions. More...

RFBackendOrder getCell_style () const
 Return the cell style for the mesh. More...

size_t n_results () const
 Return number of defined results. More...

char is_cell_result (int can_be_intrin) const
 Return if any result is a cell result. More...

int getResult_info (int num, const char **name, int *idnum, const char **srcn, RFEntityType *type, RFResultSource *source, int *is_vec, int *mnmx_giv, double *mnv, double *mxv) const
 Get information about this result at specified index (0 to nresults-1). More...

int getResult_info (int idnum, int *num, const char **name, const char **srcn, RFEntityType *type, RFResultSource *source, int *is_vec, int *mnmx_giv, double *mnv, double *mxv) const
 Lookup result by backend identification number as opposed to index. More...

int getResult_info (const char *name, int *num, int *idnum, const char **srcn, RFEntityType *type, RFResultSource *source, int *is_vec, int *mnmx_giv, double *mnv, double *mxv) const
 Lookup result by name as opposed to index. More...

int getResult_info_full (int num, const char **name, int *idnum, const char **srcn, RFEntityType *type, RFResultSource *source, size_t *ndoms, const int **iRind, int *is_vec, int *mnmx_giv, double *mnv, double *mxv) const
 Get all available information about this result at specified index 0 to nresults-1. More...

int getResult_info_full (int idnum, int *num, const char **name, const char **srcn, RFEntityType *type, RFResultSource *source, size_t *ndoms, const int **iRind, int *is_vec, int *mnmx_giv, double *mnv, double *mxv) const
 Lookup result by backend identification number instead of index. More...

int getResult_info_full (const char *name, int *num, int *idnum, const char **srcn, RFEntityType *type, RFResultSource *source, size_t *ndoms, const int **iRind, int *is_vec, int *mnmx_giv, double *mnv, double *mxv) const
 Lookup result by name instead of index. More...

size_t n_bocos () const
 Return number of families. More...

size_t n_domains () const
 Return number of structured domains. More...

char nodes_are_read () const
 Return if the nodes have been read. More...

char cells_are_read () const
 Return if the cells have been read. More...

char elements_are_read () const
 
Deprecated:
Synonym for cells_are_read().
More...


size_t v3_nunodes () const
 Return the number of unstructured nodes in the mesh from the application's point of view. More...

size_t v3_nsnodes (size_t ndoms=0, const int *iRind=0) const
 Return the number of structured nodes in the mesh from the application's point of view. More...

size_t v3_nsnodes_dom (size_t dom, const int *iRind=0) const
 Return the number of structured nodes in specified domain. More...

size_t v3_nscells_dom (size_t dom, const int *iRind=0) const
 Return the number of cells in specified structured domain from the application view. More...

size_t v3_offsetnodes_to_dom (size_t dom, const int *iRind=0) const
 Return the number of structured nodes in mesh before the specified domain. More...

size_t v3_offsetcells_to_dom (size_t dom, const int *iRind=0) const
 Return the number of structured cells in mesh before the specified domain. More...

size_t v3_nelements (int eltype) const
 Return the number of unstructured elements of specified type in the mesh from the application's point of view. More...

size_t v3_nelements_literal (int eltype) const
 Return the number of unstructured elements of specified type in the mesh from the application's point of view. More...

RF_SIGNED_LONG v3_elementstart (int eltype) const
 Return first element number of specified type from application's point of view. More...

size_t v3_ntot_unstrvolele () const
 Return the total number of unstructured volume elements in the mesh from the application view. More...

size_t v3_ntot_unstrfaceele () const
 Return the total number of unstructured face elements in the mesh from the application view. More...

size_t v3_ntot_unstrele () const
 Return the total number of unstructured elements in the mesh from the application view. More...

size_t v3_ntot_strvolele (size_t ndoms=0, const int *iRind=0) const
 Return the total number of structured cells in the mesh from the application view. More...

size_t v3_ntot_strfaceele () const
 Return the total number of structured faces in the mesh from the application view. More...

size_t v3_ntot_strele (size_t ndoms=0, const int *iRind=0) const
 Return the total number of structured cells + faces in the mesh from the application view. More...

size_t be_nunodes () const
 Return the number of unstructured nodes in the mesh from the backend's point of view. More...

size_t be_nsnodes (size_t ndoms=0, const int *iRind=0) const
 Return the number of structured nodes in the mesh in file. More...

size_t be_nsnodes_dom (size_t dom, const int *iRind=0) const
 Return the number of structured nodes in specified domain in file. More...

size_t be_nscells_dom (size_t dom, const int *iRind=0) const
 Return the number of cells in specified structured domain in the result file. More...

size_t be_offsetnodes_to_dom (size_t dom, const int *iRind=0) const
 Return the number of structured nodes in mesh before the specified domain. More...

size_t be_offsetcells_to_dom (size_t dom, const int *iRind=0) const
 Return the number of structured cells in mesh before the specified domain. More...

size_t be_nelements (int eltype) const
 Return the number of unstructured elements of specified type from the backend's point of view. More...

size_t be_nelements_literal (int eltype) const
 Return the literal number of unstructured elements of specified type from the backend's point of view. More...

RF_SIGNED_LONG be_elementstart (int eltype) const
 Return first element number of specified type in the result file. More...

size_t be_ntot_unstrvolele () const
 Return the total number of unstructured volume elements in the mesh from the result file. More...

size_t be_ntot_unstrfaceele () const
 Return the total number of unstructured face elements in the mesh from the result file. More...

size_t be_ntot_unstrele () const
 Return the total number of unstructured elements in the mesh from the result file. More...

size_t be_ntot_strvolele (size_t ndoms=0, const int *iRind=0) const
 Return the total number of structured cells in the mesh from the result file. More...

size_t be_ntot_strfaceele () const
 Return the total number of structured faces in the mesh from the result file. More...

size_t be_ntot_strele (size_t ndoms=0, const int *iRind=0) const
 Return the total number of structured cells + faces in the mesh from the result file. More...

size_t num_results (RFEntityType type, RFMapResultType mr=RFMapResult, size_t ndoms=0, const int *iRind=0) const
 Number of results in mesh for specified result entity type. More...

StorageBuffer tclMesh (const StorageBuffer& tclprefix, RFPrecType prec, int tstep, int nresults, const RFIdList& resultlist)
 Return an entire mesh as a tcl script. More...

StorageBuffer returnInfo (const char *key, int index, RFPrecType prec, int tstep)
 ASCII information returns. More...

StorageBuffer returnGrid (int index, RFPrecType prec, int tstep)
 Return list of Grid coordinates. More...

StorageBuffer returnElements (int eltype, int index, RFPrecType prec, int tstep)
 Return elements of type. More...

StorageBuffer returnFamily (int famid, RFPrecType prec, int tstep)
 Return connectivity for elements in specified family. More...

StorageBuffer returnListResults (int index, RFPrecType prec, int tstep, int nresults, const RFIdList& resultlist)
 Return list of results lists of results. More...

StorageBuffer returnResults (int rIdx, int index, RFPrecType prec, int tstep)
 Return results as ASCII string. More...

int setRunpars (const RFRunPars& pars)
 Set user run parameters. More...

int setTris_as_quads (char v)
 
Deprecated:
No longer required.
More...


int set_construct_runpars (int nfps, int fat, int infl=0, int conf=0, int msf=1, int mintrin=0, int ufd=1, int nwf=0, int nwm=0, int zm=0, int mnv=1, int mtav=0, int rsm=0, int mc=0, int nointc=0)
 Set the current run parameters from argument list. More...

int setBackend (const char *b)
 Set the backend name. More...

int setFormat (const char *f)
 Set for result format. More...

int setTitle (const char *t)
 Set the result title. More...

int setDate (const char *d)
 Set the result date. More...

int setError_string (const char *es)
 Set the current error string. More...

int setWrite_file (const char *fn)
 Set the default file name if file is written. More...

int setMax_cache (int v)
 Set the maximum result cache depth. More...

int set_v3 (int f)
 Set the Visual3 application flag. More...

int set_pv3 (int f)
 Set the pV3 application flag. More...

int set_debug (int f)
 Set the debug flag. More...

int setNode_style (RFBackendOrder ns)
 Set the node style for this mesh. More...

int setNode_offset (RF_SIGNED_LONG offset)
 If the node numbers start at a non-zero number, specify the offset with this call. More...

int setNeeds_node_dims (char v)
 If reader has node dimensions available, they should invoke this method with a 0. More...

int setCell_style (RFBackendOrder cs)
 Set the element style for this mesh. More...

int setV3_block_done (char v)
 Set the flag that marks that the application order for reading out the cells is set and known. More...

size_t getValid_element_types (int *vtypes) const
 Retrieve order of element types. More...

int setValid_element_types (size_t nvalid, const int *vtypes)
 Make list of valid cell types for frontend application in order application expects the types. More...

int set_nunodes (size_t nunodes)
 Set number of unstructured nodes in mesh. More...

int set_nsnodes (size_t nsnodes)
 Set number of structured nodes in mesh. More...

int set_nelements (int eltype, size_t nele)
 Set number of unstructured elements of eltype in mesh. More...

int set_info_from_grid ()
 Set information counters from the current mesh definition. More...

RFPrecType get_hint_prec () const
 Get the default hint precision for the mesh and results. More...

int set_hint_prec (RFPrecType prec)
 Set the default hint precision for the mesh and results. More...

int read_mesh (RFPrecType prec, int tstep)
 Cause the backend to read the mesh if not yet done. More...

int load_mesh (size_t iNF, const char **iFls, int iNP=0, const char **iPars=0)
 Invoke the load_mesh protocol. More...

size_t add_domain (const int ijkmax[3])
 Create a new structured domain with range ijkmax[3]. More...

int v3_ijk_domain (size_t dom, int ijkmax[3]) const
 Return to user the application view of ijk range of the specified domain. More...

int be_ijk_domain (size_t dom, int ijkmax[3]) const
 Return to user the ijk range of the specified domain. More...

int getDegree () const
 Get the degree of structured mesh. More...

int setDegree (int degree)
 Set the degree of structured mesh in reader. More...

int set_strdomain_name (size_t dom, const char *name)
 Set the domain name for given structured domain. More...

int set_strdomain_family (size_t dom, const char *fam)
 Set the family name for given structured domain. More...

int add_svertex (const float *x, const float *y, const float *z, size_t dom)
 Define all structured coordinates for structured domain index dom. More...

int add_svertex (const double *x, const double *y, const double *z, size_t dom)
int add_svertex (const float *loc, size_t dom)
 Define all structured coordinates for structured domain index dom. More...

int add_svertex (const double *loc, size_t dom)
int add_svertex_dma3 (const float (*loc)[3], size_t dom)
int add_svertex_dma3 (const double (*loc)[3], size_t dom)
int add_svertex_at (const float loc[3], size_t dom, const int *ijk, int check_alloc=1)
 Define a single structured node coordinate for structured domain dom. More...

int add_svertex_at (const double loc[3], size_t dom, const int *ijk, int check_alloc=1)
int clear_inflate ()
 Release the memory for 2D to 3D structured mesh inflation.

int add_unsvertex (const float *x, const float *y, const float *z, size_t nnodes, const size_t *map=0, const short *dims=0)
 Define a number of unstructured coordinates in the mesh. More...

int add_unsvertex (const double *x, const double *y, const double *z, size_t nnodes, const size_t *map=0, const short *dims=0)
int add_unsvertex (const float *loc, size_t nnodes, const size_t *map=0, const short *dims=0)
 Define specified number of unstructured coordinates in the mesh. More...

int add_unsvertex (const double *loc, size_t nnodes, const size_t *map=0, const short *dims=0)
int add_unsvertex_dma3 (const float (*loc)[3], size_t nnodes, const size_t *map=0, const short *dims=0)
int add_unsvertex_dma3 (const double (*loc)[3], size_t nnodes, const size_t *map=0, const short *dims=0)
int add_unsvertex_at (const float loc[3], size_t vtx_number, size_t dv=RF_ILLEGAL_COUNT, short dim=3, size_t ptwin=RF_ILLEGAL_COUNT)
 Define an unstructured node coordinate for node number vtx_number. More...

int add_unsvertex_at (const double loc[3], size_t vtx_number, size_t dv=RF_ILLEGAL_COUNT, short dim=3, size_t ptwin=RF_ILLEGAL_COUNT)
int map_ofo_vertices ()
 Actually define delayed vertices caused by random mapping. More...

RF_SIGNED_LONG AddElementsId (int eltype, size_t neles, const int *iConn, RFConnOrder iOrder, int famid, int nodes_app_num, int is_edit=0, int add_boco_hack=1, int add_be_hack=0)
 Creates new unstructured elements of specified type. More...

RF_SIGNED_LONG AddElementsId_l (int eltype, size_t neles, const RF_SIGNED_LONG *iConn, RFConnOrder iOrder, int famid, int nodes_app_num, int is_edit=0, int add_boco_hack=1, int add_be_hack=0)
RF_SIGNED_LONG AddElements (int eltype, size_t neles, const int *iConn, RFConnOrder iOrder, int family_given, int nodes_app_num, int is_edit=0, int add_boco_hack=1, int add_be_hack=0)
 Family may be given in the connectivity data. More...

RF_SIGNED_LONG AddElements_l (int eltype, size_t neles, const RF_SIGNED_LONG *iConn, RFConnOrder iOrder, int family_given, int nodes_app_num, int is_edit=0, int add_boco_hack=1, int add_be_hack=0)
RF_SIGNED_LONG AddElementsEleids (int eltype, size_t neles, const int *iConn, RFConnOrder iOrder, int family_given, const unsigned int *eleIds, int nodes_app_num, int is_edit=0, int add_boco_hack=1, int add_be_hack=0)
 Specify external element id numbers that will be mapped to internal id numbers. More...

RF_SIGNED_LONG AddElementsEleids_l (int eltype, size_t neles, const RF_SIGNED_LONG *iConn, RFConnOrder iOrder, int family_given, const unsigned int *eleIds, int nodes_app_num, int is_edit=0, int add_boco_hack=1, int add_be_hack=0)
RF_SIGNED_LONG add_elements_id (int eltype, size_t neles, const int *iConn, int mesh_order, int famid, int nodes_app_num, int is_edit=0, int add_boco_hack=1, int add_be_hack=0)
 
Deprecated:
Use AddElementsId() instead.


RF_SIGNED_LONG add_elements_id (int eltype, size_t neles, const RF_SIGNED_LONG *iConn, int mesh_order, int famid, int nodes_app_num, int is_edit=0, int add_boco_hack=1, int add_be_hack=0)
 
Deprecated:
Use AddElementsId_l() instead.


RF_SIGNED_LONG add_elements (int eltype, size_t neles, const int *iConn, int mesh_order, int family_given, int nodes_app_num, int is_edit=0, int add_boco_hack=1, int add_be_hack=0)
 
Deprecated:
Use AddElements() instead.


RF_SIGNED_LONG add_elements (int eltype, size_t neles, const RF_SIGNED_LONG *iConn, int mesh_order, int family_given, int nodes_app_num, int is_edit=0, int add_boco_hack=1, int add_be_hack=0)
 
Deprecated:
Use AddElements_l() instead.


RF_SIGNED_LONG add_elements_eleids (int eltype, size_t neles, const int *iConn, int mesh_order, int family_given, const unsigned int *eleIds, int nodes_app_num, int is_edit=0, int add_boco_hack=1, int add_be_hack=0)
 
Deprecated:
Use AddElementsEleids() instead.


RF_SIGNED_LONG add_elements_eleids (int eltype, size_t neles, const RF_SIGNED_LONG *iConn, int mesh_order, int family_given, const unsigned int *eleIds, int nodes_app_num, int is_edit=0, int add_boco_hack=1, int add_be_hack=0)
 
Deprecated:
Use AddElementsEleids_l() instead.


RF_SIGNED_LONG internal_node_id (RF_SIGNED_LONG iExtId) const
 Return the internal node number given the external node (backend) node number. More...

size_t node_backend_to_mesh_map (const RF_SIGNED_LONG *& oMap) const
 Returns map of external node numbers to internal node numbers. More...

vertex_handle lookup_vertex (RF_SIGNED_LONG iExtVtxId) const
 Returns node at given external node number. More...

RF_SIGNED_LONG internal_element_id (RF_SIGNED_LONG iExtId) const
 Return the internal element number given the external element (backend) element number. More...

size_t element_backend_to_mesh_map (const RF_SIGNED_LONG *& oMap) const
 Returns map of external element numbers to internal element numbers. More...

element_handle lookup_element (RF_SIGNED_LONG iExtEleId) const
 Returns element at given external element number. More...

int allocate_vertex_memory (size_t nverts, RFPrecType prec=RFPrecNone)
 Allocate node memory for nverts. More...

int allocate_strvertex_memory (size_t dom)
 Allocate structured node coordinate memory once a structured domain. More...

void* allocate_nodes (RFPrecType prec)
 Return the block of memory required to hold the node coordinates of precision prec. More...

int allocate_element_memory (const size_t *nele)
 Allocate memory for elements based on hint values for the number of each kind of element. More...

int* allocate_element_type (int eltype, int inc_pid=0)
 Return the block of memory required to hold the connectivity information for unstructured element type eltype. More...

const void* coordinate_data (RFPrecType *prec) const
 Get pointer to the coordinate data of the mesh if it is available to the application. More...

int nodes (void *crds, void *bbmin, void *bbmax, int prec, int tstep)
 Load in the nodes into crds buffer. More...

int nodes_local (void *crds, void *bbmin, void *bbmax, int prec, int tstep)
 Subclasses of rf_backend_impl should override this method as opposed to nodes(). More...

int node_xyz (RFPrecType* prec, void **crds)
 Fills the crds buffer with node coordinates for current time step. More...

int requires_node_map () const
 If any nodes have been deleted, the result library will construct a node map. More...

int translate_to_v3 (RFEntityType type, RFConnOrder iOrd, int nent, int *nums) const
 Translate external entities given type to visual3 node numbering. More...

int determine_bounding_box (RFPrecType prec, void *bbmin, void *bbmax, const void *crds)
 Determines bounding box from given coordinate data. More...

int set_conn_order (RFConnOrder order)
 Set the connection order for application. More...

int set_vtxconn_offset (RF_SIGNED_LONG vtx_offset)
 Set the vertex offset for application. More...

const int* connectivity_data (int eltype, RFConnOrder *order, int *vtx_offset) const
 Get pointer to the connectivity data of the mesh if it is available to the application. More...

RFConnOrder get_conn_order () const
 Get connection order. More...

RF_SIGNED_LONG get_vtxconn_offset () const
 Get vertex offset . More...

int cells (int eltype, int *elements, int tstep)
 Load the buffer elements with the connectivity of the mesh for specified type. More...

int cells_order (int eltype, int *elements, int tstep, RF_SIGNED_LONG dvoff, RFConnOrder desired_ord)
 Same as cells() except that return elements in user specified vertex offset and connection order. More...

int cells_local (int eltype, int *elements, int tstep, RFConnOrder desired_ord)
 Subclasses of rf_backend_impl should override this method as opposed to cells(). More...

int face_cells (int *faces, int tstep)
 Report QUAD_4 and TRI_3 faces in mesh. More...

int face_cells_order (int *faces, int tstep, RF_SIGNED_LONG dvoff, RFConnOrder desired_ord)
 Return elements in user specified vertex offset and connection order. More...

int domain_cells (int eltype, int *elements, int tstep)
 Element array contains family id of each element. More...

int domain_cells_order (int eltype, int *elements, int tstep, RF_SIGNED_LONG dvoff, RFConnOrder desired_ord, int iIncEleNumber=0)
 Return elements in user specified vertex offset and connection order. More...

int literal_cells_order (int eltype, int *elements, int inc_pid, int tstep, RF_SIGNED_LONG dvoff, RFConnOrder desired_ord, int iIncEleNumber=0)
 Returns literal elements specified in user specified vertex offset and connection order. More...

int create_group (const char *name, int bid)
 Create a new family. More...

int create_group_by_pid (const char *name, int famid)
 Create a new family. More...

int create_family (int bid, int famid, int only_faces)
 Counts all entities in specified family specified family id. More...

int add_group (const char *name, int bid)
 Similar to create_group() except that that all boundary condition counters will be reset if the family name already exists. More...

int rename_group (const char *name, int famid)
 Rename the group at specified family id to the specified name. More...

int boco_infobynum (int num, const char **name, int *bid, int *famid, int *nnodes, int *nnodeele, int *nbars, int *nquads, int *ntris, int *ncells, int *nsubfaces, int *nstrfaces, RFSurfaceType *surfaceType, const struct RFSubface **subfaces, const int **cached_faces, int *n_cached_faces) const
 Return information recorded for this family given the family index. More...

int boco_infobypid (int famid, int *num, const char **name, int *bid, int *nnodes, int *nnodeele, int *nbars, int *nquads, int *ntris, int *ncells, int *nsubfaces, int *nstrfaces, RFSurfaceType *surfaceType, const struct RFSubface **subfaces, const int **cached_faces, int *n_cached_faces) const
 Return information recorded for this family given the family id. More...

int boco_infobyname (const char *name, int *num, int *bid, int *famid, int *nnodes, int *nnodeele, int *nbars, int *nquads, int *ntris, int *ncells, int *nsubfaces, int *nstrfaces, RFSurfaceType *surfaceType, const struct RFSubface **subfaces, const int **cached_faces, int *n_cached_faces) const
 Return information recorded for this family given the family name. More...

int boco_dimensionbynum (int num, unsigned char *dim_mask) const
 Return the dimension of elements in family by family number. More...

int boco_dimensionbypid (int famid, unsigned char *dim_mask) const
 Return the dimension of elements in family by family id number. More...

int boco_dimensionbyname (const char *name, unsigned char *dim_mask) const
 Return the dimension of elements in family by family name. More...

int add_element_to_group (RF_SIGNED_LONG elnum, const char *name)
 Put element into group specified by name. More...

int add_element_to_group_bybid (RF_SIGNED_LONG elnum, int bid)
 Put element into group specified by backend id. More...

int add_element_to_group_bypid (RF_SIGNED_LONG elnum, int famid)
 Put element into group specified by family id. More...

int groups_are_done ()
 If user used add_element_to_group(), add_element_to_group_bybid(), or add_element_to_group_bypid(), then they need to call this method to actually assign the family ids to the elements. More...

int AddFacesToGroup (int iNfaces, const int *iFaces, RFConnOrder iOrder, const char *iName, int iNodeAppNum=0)
 Add a set of faces to family of specified name. More...

int AddFacesToGroupBybid (int iNfaces, const int *iFaces, RFConnOrder iOrder, int iBID, int iNodeAppNum=0)
 Specifiy the backend id number instead of family (group) name. More...

int AddFacesToGroupBypid (int iNfaces, const int *iFaces, RFConnOrder iOrder, int iFamid, int iNodeAppNum=0)
 Specifiy the family (group) id number instead of family (group) name. More...

int add_faces_to_group (int nfaces, const int *faces, int mesh_order, const char *name, int nodes_app_num=0)
 
Deprecated:
Use AddElementsId() (suggested) or AddFacesToGroup() instead.


int add_faces_to_group_bybid (int nfaces, const int *faces, int mesh_order, int bid, int nodes_app_num=0)
 
Deprecated:
Use AddElementsId() (suggested) or AddFacesToGroupBybid() instead.


int add_faces_to_group_bypid (int nfaces, const int *faces, int mesh_order, int famid, int nodes_app_num=0)
 
Deprecated:
Use AddElementsId() (suggested) or AddFacesToGroupBypid() instead.


int add_subface_to_group (int dom, const int ijkmin[3], const int ijkmax[3], const char *name)
 Add specified subface as a family of specified name. More...

int add_subface_to_group_bybid (int dom, const int ijkmin[3], const int ijkmax[3], int bid)
 Add specified subface as a family of specified backend id number. More...

int add_subface_to_group_bypid (int dom, const int ijkmin[3], const int ijkmax[3], int famid)
 Add specified subface as a family of specified family id number. More...

int max_family () const
 Return the maximum family id. More...

int bocos_get_entities (RFEntityType type, RFConnOrder iOrd, int **nums, int v3v)
 Return an array of array of numbers for requested entities This method extracts the information out of defined a defined mesh. More...

int boco_byindex (int num, RFEntityType type, RFConnOrder iOrd, int *nums, int v3v)
 Specify the BC index number. More...

int boco_bypid (int famid, RFEntityType type, RFConnOrder iOrd, int *nums, int v3v)
 Specify family (group) id number instead of BC index. More...

int group (int num, RFEntityType type, RFConnOrder iOrd, int *nums, int ext, int v3v)
 Return in array numbers the requested entities of specified family index. More...

int group_local (int num, RFEntityType type, RFConnOrder iOrd, int *nums, int ext)
 Subclasses of rf_backend_impl override this method to differentiate group definition. More...

int struct_subfaces (char* topo, char* boco)
 Read the structured subfaces specified by the topo file with families in the family boco file. More...

int struct_subfaces_local (char* topo, char* boco)
 Subclasses of rf_backend_impl should override this method to differentiate how they handle topo/boco files. More...

int add_result (const char *name, RFEntityType type, int idnum, int is_vec)
 Invokes add_result_full() with floating point precision, source of RFBackendSource, and no rind. More...

int add_result_full (const char *name, RFEntityType type, int idnum, RFPrecType prec, RFResultSource source, int is_vec, const char *sname, RF_SIGNED_LONG ndoms, const int *iRind)
 Add a new result for backend of specified name, entity types the result is valid on, an assigned id number to be used to used to retrieve a requested result, a precision for the result, the source of the result (backend, intrinsic, computed, etc), whether or not the result is a vector result, the source name for a cell to node converted result, and if the result is a structured result, the optional rind layer specification. More...

int add_unique_result (const char *name, RFEntityType type, int idnum, RFPrecType prec, RFResultSource source, int is_vec, const char *sname, RF_SIGNED_LONG ndoms, const int *iRind)
 Add a new result for backend of specified name, entity types the result is valid on, an assigned id number to be used to used to retrieve a requested result, a precision for the result, the source of the result (backend, intrinsic, computed, etc), whether or not the result is a vector result, the source name for a cell to node converted result, and if the result is a structured result, the optional rind layer specification. More...

int modify_result (const char *name, RFEntityType type=RFEntityNone, int idnum=-1, RFPrecType prec=RFPrecNone, RFResultSource source=RFSourceNone, int is_vec=-1, const char *sname=0, RF_SIGNED_LONG ndoms=-1, const int *iRind=0)
 Modify information for a defined result. More...

int find_result (const char *name, int *idnum, RFEntityType *type, RFResultSource *source, int *is_vec, int *minmax_given, double *minval, double *maxval)
 Retrieve the information on result of specified name. More...

int find_result (int num, int *idnum, const char **name, RFEntityType *type, RFResultSource *source, int *is_vec, int *minmax_given, double *minval, double *maxval)
 Lookup result by result index as opposed to name. More...

int find_result_byidnum (int idnum, const char **name, RFEntityType *type, RFResultSource *source, int *is_vec, int *minmax_given, double *minval, double *maxval)
 Lookup result by backend identification number as opposed to name. More...

int rename_result (const char *oldName, const char *newName)
 Rename the specified result to a new name. More...

int offsetto_rftype (RFEntityType rftype, RFEntityType availtypes, int isstruct, size_t ndoms, const int *iRind, size_t *offset, size_t *length)
 Routine to compute the offset to and length of data. More...

int rename_result (int id, const char *newName)
 Rename the specified result to a new name. More...

int load_dat (RFPrecType to_prec, void *to_p, int tidx, RFPrecType from_prec, void *from_p, int fidx)
 Synonym for load_datum. More...

RFEvaluatorcreate_evaluator (RFEntityType type=RFNodeType, int skip=0, RFPrecType prec=RFPrecDouble, int tstep=0, RFMethodType am=RFCellAvgWeight)
 Create a visual3 evaluator. More...

size_t results_by_name (char* name, RFEntityType type, void* values, int skip, RFPrecType prec, int tstep, RFMethodType meth, int is_vec)
 Fill the array values with result of interpretation of name. More...

size_t results_to_node (const char* name, void* values, int skip, RFPrecType prec, int tstep, RFMethodType meth, int is_vec)
 Same as results_by_name() except that at the end it converts the result to a node result. More...

size_t results (int num, RFEntityType type, void *values, int skip, RFPrecType prec, int tstep, RFMethodType meth, RFMapResultType map_res)
 Read scalar result specified by index num. More...

size_t results (const char *name, RFEntityType type, void *values, int skip, RFPrecType prec, int tstep, RFMethodType meth, RFMapResultType map_res)
 Return result values by name as opposed to index. More...

size_t results_by_idnum (int idnum, RFEntityType type, void *values, int skip, RFPrecType prec, int tstep, RFMethodType meth, RFMapResultType map_res)
 Return result values by backend identification number as opposed to index. More...

size_t cell_to_node_result (int num, size_t n, void* values, int skip, RFPrecType prec, int tstep, RFMethodType meth)
 Fill array values with result of cell to node conversion of specified cell to node converted result. More...

int make_node_result (RFMethodType meth, void* celldata_v, void* facedata_v, void* nodedata_v, int skip, RFPrecType prec, int urlay=0, size_t ndoms=0, const int *iRind=0)
 Fill array nodedata_v with the node conversion given data on volume cells celldata_v and data on face elements facedata_v. More...

int make_node_weights (RFMethodType meth)
 Build the internal cell/face to node conversion weight table. More...

int clear_node_weights ()
 Clear the internal cell/face to node conversion weight table. More...

int make_nodeneighbor_weights (RFMethodType meth, rf_node_neighborhood& neighborhood, rf_node_weights& weightList, int nlayers=1, int nodes_in_class=1, int n_allowed_eles=0, const int *allowed_eles=0)
 Create a node neighbor weight table. More...

int addresult_to_cache (const void *token, int cton, RFEntityType type, RFPrecType prec, int tstep, int must_map_res, void *values)
 Add results to result library cache. More...

int copyresult_from_cache (const void *token, RFEntityType type, void *values, size_t n, int skip, RFPrecType prec, int tstep, int must_map_res)
 Copy the results from the cache if a cache entry matches the result cache key. More...

int flush_result_cache ()
 Remove all elements from the cache. More...

int flush_result_cache (int maxentries)
 Resize and/or flush the result cache. More...

int flush_celltonode_incache ()
 Flush the entries marked cell to node currently in the cache. More...

size_t n_parameters () const
 Return number of parameters defined in result interface. More...

int define_parameter (const char *name, const char *value)
 Define a new parameter ((name, value) pair). More...

int parse_parameters (int argc, const char **argv)
 Parse all parameters in argv array. More...

RFMethodType parse_weight_method (const char *meth)
 Convert a cell to node conversion method name to method number. More...

int get_n_times () const
 Return number of time steps available in result file. More...

int get_time_step (int idx, int *step, float *tval) const
 Get information for time step idx. More...

int get_cur_timestep () const
 Get the value of the current time step. More...

char grid_timestep_valid (int tstep) const
 Is the grid valid for the specified time step? This will return true (1) in two cases: 1) If the time_step specified is the current time step in the result object, or 2) the grid is steady. More...

int allocate_times (int n_times)
 Before user can add timesteps, user must specify the number of timesteps available in this result file. More...

int add_timestep (size_t idx, int tstep, float tval)
 Add definition of time step idx. More...

int set_cur_timestep (int v)
 Set the value of the current time step. More...

int determine_tstep (int next_tstep)
 Return the actual value of time step if we tried to set to next_tstep. More...

int copy_mesh_from (const rf_backend_interface *frominfo, RFLongestSignedList& mapVerts, RFLongestSignedList& mapEles)
 Copy the mesh representation from representation held by frominfo to current mesh representation. More...

int copy_auxinfo_from (const rf_backend_interface *frominfo)
 Copy the auxillary information such as time steps, parameters, and result names from result implementation referenced by frominfo to current representation. More...

int clear_grid ()
 Free the mesh representation for the application. More...

int clear_mesh_done ()
 Signal about to start loading mesh. More...

int clear_block ()
 Signal about to start loading all cells. More...

int set_mesh_done ()
 Put result object into the 'editing' state by setting both rfinfo_base::nodes_read and rfinfo_base::cells_read flags. More...

int cells_done ()
 Mark that the order for reading out of the cells into your application is now set. More...

int mark_mesh_fromrep (int tstep)
 Signal that mesh is completely held within mesh representation. More...

int mark_mesh_read (int tstep)
 Signal that loading of all mesh is complete. More...

int mark_cells_read (int tstep)
 Signal that loading of all elements is complete. More...

int compress_mesh ()
 Compress out of external representation all deleted elements. More...

int merge_unstr_famnodes (int famsrc, int famdst)
 Merge the nodes in famsource to those in famdest. More...

int merge_unstr_nodes (const RFMergeVtxList& unslist)
 Merge the nodes given by association list. More...

const int* get_face_order (int type) const
 Return face definition for specified element type. More...

const int* get_edge_order (int type) const
 Return edge definition for specified element type. More...

int set_face_order (int type, va_list ap)
 Set face definition for specified element type. More...

int set_face_order (int type, ...)
int set_edge_order (int type, va_list ap)
 Set edge definition for specified element type. More...

int set_edge_order (int type, ...)
int delete_family (int famid, int notvol)
 Delete all elements in the specified family. More...

int v3_edit (RFEdits edit_what)
 Carry out edits specified by the mask of possible edits. More...

int release_connectivity_info ()
 Release connectivity information no longer required by mesh. More...

int volume_orient (int fix)
 Check and fix volume orientation problems in the mesh. More...

int noORFNpid ()
 Put elements currently in ORFN into a specific family name. More...

int reconcile_pids (rf_mesh_interface *mi, int noORFN)
 Reconcile the family names and ids in mesh mi with those in current mesh. More...

int reconcile_extpids (int n, const int *famids, const char **fnms)
 Reconcile the family names and ids passed externally with current mesh. More...

int after_edit_update (int nb, int upd_nodes, int upd_cells)
 Update various counters in the mesh represntation after a number of edits have been completed. More...

int compare (rf_backend_interface *operand, RFCompareType compareFlag, int tstep, int nresults, const RFIdList& resultlist, double distTol=RFFloatEpsilon, double resultTol=