moab
mhdf.h
Go to the documentation of this file.
00001 
00016 #ifndef MHDF_H
00017 #define MHDF_H
00018 
00019 #include <H5Ipublic.h>
00020 
00021 #ifdef __cplusplus
00022 extern "C" {
00023 #endif
00024 
00312 
00313 
00318 
00319 #define MHDF_MESSAGE_BUFFER_LEN 160
00320 
00322 typedef struct struct_mhdf_Status { char message[MHDF_MESSAGE_BUFFER_LEN]; } mhdf_Status;
00323 
00325 int 
00326 mhdf_isError( mhdf_Status const* );
00327 
00329 const char*
00330 mhdf_message( mhdf_Status const* );
00331 
00338 
00340 #define mhdf_EDGE_TYPE_NAME        "Edge"
00341 
00342 #define mhdf_TRI_TYPE_NAME         "Tri"     
00343 
00344 #define mhdf_QUAD_TYPE_NAME        "Quad"    
00345 
00346 #define mhdf_POLYGON_TYPE_NAME     "Polygon" 
00347 
00348 #define mhdf_TET_TYPE_NAME         "Tet"     
00349 
00350 #define mhdf_PYRAMID_TYPE_NAME     "Pyramid" 
00351 
00352 #define mhdf_PRISM_TYPE_NAME       "Prism"   
00353 
00354 #define mdhf_KNIFE_TYPE_NAME       "Knife"   
00355 
00356 #define mdhf_HEX_TYPE_NAME         "Hex"     
00357 
00358 #define mhdf_POLYHEDRON_TYPE_NAME  "Polyhedron" 
00359 
00360 #define mhdf_SEPTAHEDRON_TYPE_NAME "Septahedron" 
00361 
00368 enum mhdf_TagDataType {
00369   mhdf_OPAQUE = 0, 
00370   mhdf_INTEGER,    
00371   mhdf_FLOAT,      
00372   mhdf_BITFIELD,   
00373   mhdf_BOOLEAN,    
00374   mhdf_ENTITY_ID   
00375 };
00376 
00382 typedef long mhdf_index_t;
00383 #define MHDF_INDEX_TYPE H5T_NATIVE_LONG
00384 
00389 
00390 
00396 const char*
00397 mhdf_node_type_handle(void);
00398 
00399 
00405 const char*
00406 mhdf_set_type_handle(void);
00407 
00414 
00416 typedef void* mhdf_FileHandle;
00417 
00418 
00419 
00420 /* Top level file operations */
00421 
00448 mhdf_FileHandle
00449 mhdf_createFile( const char* filename,
00450                  int overwrite,
00451                  const char** elem_type_list,
00452                  size_t elem_type_list_len,
00453                  hid_t id_type,
00454                  mhdf_Status* status );
00455 
00471 mhdf_FileHandle
00472 mhdf_openFile( const char* filename,
00473                int writable,
00474                unsigned long* max_id,
00475                hid_t id_type,
00476                mhdf_Status* status );
00477 
00500 mhdf_FileHandle
00501 mhdf_openFileWithOpt( const char* filename,
00502                       int writable,
00503                       unsigned long* max_id,
00504                       hid_t id_type,
00505                       hid_t options,
00506                       mhdf_Status* status );
00507 
00509 int
00510 mhdf_countOpenHandles( mhdf_FileHandle h );
00511 
00513 struct mhdf_EntDesc {
00514   long start_id;           
00515   long count;              
00516   int vals_per_ent;        
00517   int* dense_tag_indices;  
00518   int num_dense_tags;      
00519 };
00521 struct mhdf_TagDesc {
00522   const char* name;           
00523   enum mhdf_TagDataType type; 
00524   int size;                   
00525   int bytes;                  
00526   int storage;                
00527   int have_sparse;            
00528   void* default_value;        
00529   int default_value_size; 
00530   void* global_value;         
00531   int global_value_size;
00532   int* dense_elem_indices;    
00534   int num_dense_indices;
00535 };
00536 struct mhdf_ElemDesc {
00537   const char* handle;       
00538   const char* type;         
00539   int have_adj;             
00540   struct mhdf_EntDesc desc;
00541 };
00542 struct mhdf_FileDesc {
00543   struct mhdf_EntDesc nodes;
00544   struct mhdf_EntDesc sets;
00545   int have_set_contents;
00546   int have_set_children;
00547   int have_set_parents;
00548   struct mhdf_ElemDesc* elems; 
00549   int num_elem_desc;
00550   struct mhdf_TagDesc* tags;   
00551   int num_tag_desc;
00552   size_t total_size;           
00553   unsigned char* offset;       
00554 };
00555   
00566 struct mhdf_FileDesc*
00567 mhdf_getFileSummary( mhdf_FileHandle file_handle, 
00568                      hid_t file_id_type,
00569                      mhdf_Status* status );
00570 
00583 void
00584 mhdf_fixFileDesc( struct mhdf_FileDesc* copy_ptr, const struct mhdf_FileDesc* orig_addr );
00585 
00595 void
00596 mhdf_getElemName( mhdf_FileHandle file_handle,
00597                   unsigned int type_index,
00598                   char* buffer, size_t buffer_size, 
00599                   mhdf_Status* status );
00600 
00605 void
00606 mhdf_closeFile( mhdf_FileHandle handle,
00607                 mhdf_Status* status );
00608 
00611 int
00612 mhdf_checkOpenHandles( mhdf_FileHandle handle, mhdf_Status* status );
00613 
00625 void
00626 mhdf_closeData( mhdf_FileHandle file,
00627                 hid_t handle,
00628                 mhdf_Status* status );
00629 
00636 void
00637 mhdf_getNextStartId( mhdf_FileHandle file,
00638                      mhdf_index_t* start_id_out,
00639                      mhdf_Status* status );
00640 
00651 void
00652 mhdf_writeHistory( mhdf_FileHandle file, 
00653                    const char** strings, 
00654                    int num_strings, 
00655                    mhdf_Status* status );
00656 
00670 char**
00671 mhdf_readHistory( mhdf_FileHandle file,
00672                   int* num_records_out, 
00673                   mhdf_Status* status );
00679 
00680 /* Node Coordinates */
00681 
00682 int
00683 mhdf_haveNodes( mhdf_FileHandle file_handle, mhdf_Status* status );
00684                 
00685 
00697 hid_t
00698 mhdf_createNodeCoords( mhdf_FileHandle file_handle,
00699                        int dimension,
00700                        long num_nodes,
00701                        long* first_node_id_out,
00702                        mhdf_Status* status );
00703 
00715 hid_t
00716 mhdf_openNodeCoords( mhdf_FileHandle file_handle,
00717                      long* num_nodes_out,
00718                      int* dimension_out,
00719                      long* first_node_id_out,
00720                      mhdf_Status* status );
00721 
00722 hid_t
00723 mhdf_openNodeCoordsSimple( mhdf_FileHandle file_handle, mhdf_Status* status );
00724 
00736 void
00737 mhdf_writeNodeCoords( hid_t data_handle,
00738                       long offset,
00739                       long count,
00740                       const double* coords,
00741                       mhdf_Status* status );
00742 void
00743 mhdf_writeNodeCoordsWithOpt( hid_t data_handle,
00744                       long offset,
00745                       long count,
00746                       const double* coords,
00747                       hid_t write_prop,
00748                       mhdf_Status* status );
00749 
00763 void
00764 mhdf_writeNodeCoord( hid_t data_handle,
00765                      long offset,
00766                      long count,
00767                      int dimension,
00768                      const double* coords,
00769                      mhdf_Status* status );
00770 void
00771 mhdf_writeNodeCoordWithOpt( hid_t data_handle,
00772                      long offset,
00773                      long count,
00774                      int dimension,
00775                      const double* coords,
00776                      hid_t write_prop,
00777                      mhdf_Status* status );
00778 
00790 void
00791 mhdf_readNodeCoords( hid_t data_handle,
00792                      long offset,
00793                      long count,
00794                      double* coordinates,
00795                      mhdf_Status* status );
00796 void
00797 mhdf_readNodeCoordsWithOpt( hid_t data_handle,
00798                      long offset,
00799                      long count,
00800                      double* coordinates,
00801                      hid_t read_prop,
00802                      mhdf_Status* status );
00803 
00804 
00818 void
00819 mhdf_readNodeCoord( hid_t data_handle,
00820                     long offset,
00821                     long count,
00822                     int dimension,
00823                     double* coords,
00824                     mhdf_Status* status );
00825 void
00826 mhdf_readNodeCoordWithOpt( hid_t data_handle,
00827                     long offset,
00828                     long count,
00829                     int dimension,
00830                     double* coords,
00831                     hid_t read_prop,
00832                     mhdf_Status* status );
00833 
00839 
00840 /* Element Connectivity */
00841 
00865 void
00866 mhdf_addElement( mhdf_FileHandle file_handle,
00867                  const char* elem_handle,
00868                  unsigned int named_elem_type,
00869                  mhdf_Status* status );
00870 
00891 char**
00892 mhdf_getElemHandles( mhdf_FileHandle file_handle,
00893                      unsigned int* count_out,
00894                      mhdf_Status* status );
00895 
00908 void
00909 mhdf_getElemTypeName( mhdf_FileHandle file_handle,
00910                       const char* elem_handle,
00911                       char* buffer, size_t buf_len,
00912                       mhdf_Status* status );
00913 
00925 int
00926 mhdf_isPolyElement( mhdf_FileHandle file_handle,
00927                     const char* elem_handle,
00928                     mhdf_Status* status );
00929 
00952 hid_t 
00953 mhdf_createConnectivity( mhdf_FileHandle file_handle,
00954                          const char* elem_handle,
00955                          int num_nodes_per_elem,
00956                          long num_elements,
00957                          long* first_elem_id_out,
00958                          mhdf_Status* status );
00959 
00960 
00986 hid_t
00987 mhdf_openConnectivity( mhdf_FileHandle file_handle,
00988                        const char* elem_handle,
00989                        int* num_nodes_per_elem_out,
00990                        long* num_elements_out,
00991                        long* first_elem_id_out,
00992                        mhdf_Status* status );
00993 
00994 hid_t
00995 mhdf_openConnectivitySimple( mhdf_FileHandle file_handle, 
00996                              const char* elem_handle,
00997                              mhdf_Status* status );
00998                              
00999 
01016 void
01017 mhdf_writeConnectivity( hid_t data_handle,
01018                         long offset,
01019                         long count,
01020                         hid_t hdf_integer_type,
01021                         const void* node_id_list,
01022                         mhdf_Status* status );
01023 void
01024 mhdf_writeConnectivityWithOpt( hid_t data_handle,
01025                         long offset,
01026                         long count,
01027                         hid_t hdf_integer_type,
01028                         const void* node_id_list,
01029                         hid_t write_prop,
01030                         mhdf_Status* status );
01031 
01049 void 
01050 mhdf_readConnectivity( hid_t data_handle,
01051                        long offset,
01052                        long count,
01053                        hid_t hdf_integer_type,
01054                        void* node_id_list,
01055                        mhdf_Status* status );
01056 void 
01057 mhdf_readConnectivityWithOpt( hid_t data_handle,
01058                        long offset,
01059                        long count,
01060                        hid_t hdf_integer_type,
01061                        void* node_id_list,
01062                        hid_t read_prop,
01063                        mhdf_Status* status );
01064 
01065 /* Poly(gon|hedra) */
01066 
01067 
01099 void
01100 mhdf_createPolyConnectivity( mhdf_FileHandle file_handle,
01101                              const char* elem_handle,
01102                              long num_poly,
01103                              long data_list_length,
01104                              long* first_id_out,
01105                              hid_t idx_and_id_handles_out[2],
01106                              mhdf_Status* status );
01107 
01139 void
01140 mhdf_openPolyConnectivity( mhdf_FileHandle file_handle,
01141                            const char* elem_handle,
01142                            long* num_poly_out,
01143                            long* data_list_length_out,
01144                            long* first_id_out,
01145                            hid_t idx_and_id_handles_out[2],
01146                            mhdf_Status* status );
01147 
01175 void
01176 mhdf_writePolyConnIndices( hid_t poly_handle,
01177                            long offset,
01178                            long count,
01179                            hid_t hdf_integer_type,
01180                            const void* index_list,
01181                            mhdf_Status* status );
01182 void
01183 mhdf_writePolyConnIndicesWithOpt( hid_t poly_handle,
01184                            long offset,
01185                            long count,
01186                            hid_t hdf_integer_type,
01187                            const void* index_list,
01188                            hid_t write_prop,
01189                            mhdf_Status* status );
01190 
01219 void
01220 mhdf_writePolyConnIDs( hid_t poly_handle,
01221                        long offset,
01222                        long count,
01223                        hid_t hdf_integer_type,
01224                        const void* id_list,
01225                        mhdf_Status* status );
01226 void
01227 mhdf_writePolyConnIDsWithOpt( hid_t poly_handle,
01228                        long offset,
01229                        long count,
01230                        hid_t hdf_integer_type,
01231                        const void* id_list,
01232                        hid_t write_prop,
01233                        mhdf_Status* status );
01234 
01260 void 
01261 mhdf_readPolyConnIndices( hid_t poly_handle,
01262                           long offset,
01263                           long count,
01264                           hid_t hdf_integer_type,
01265                           void* index_list,
01266                           mhdf_Status* status );
01267 void 
01268 mhdf_readPolyConnIndicesWithOpt( hid_t poly_handle,
01269                           long offset,
01270                           long count,
01271                           hid_t hdf_integer_type,
01272                           void* index_list,
01273                           hid_t read_prop,
01274                           mhdf_Status* status );
01275 
01301 void 
01302 mhdf_readPolyConnIDs( hid_t poly_handle,
01303                       long offset,
01304                       long count,
01305                       hid_t hdf_integer_type,
01306                       void* id_list,
01307                       mhdf_Status* status );
01308 void 
01309 mhdf_readPolyConnIDsWithOpt( hid_t poly_handle,
01310                       long offset,
01311                       long count,
01312                       hid_t hdf_integer_type,
01313                       void* id_list,
01314                       hid_t read_prop,
01315                       mhdf_Status* status );
01327                      
01328 
01349 hid_t
01350 mhdf_createAdjacency( mhdf_FileHandle file_handle,
01351                       const char* elem_handle,
01352                       long adj_list_size,
01353                       mhdf_Status* status );
01354 
01362 int
01363 mhdf_haveAdjacency( mhdf_FileHandle file,
01364                     const char* elem_handle,
01365                     mhdf_Status* status );
01366 
01387 hid_t
01388 mhdf_openAdjacency( mhdf_FileHandle file_handle,
01389                     const char* elem_handle,
01390                     long* adj_list_size,
01391                     mhdf_Status* status );
01392 
01417 void
01418 mhdf_writeAdjacency( hid_t data_handle,
01419                      long offset,
01420                      long count,
01421                      hid_t hdf_integer_type,
01422                      const void* adj_list_data,
01423                      mhdf_Status* status );
01424 void
01425 mhdf_writeAdjacencyWithOpt( hid_t data_handle,
01426                      long offset,
01427                      long count,
01428                      hid_t hdf_integer_type,
01429                      const void* adj_list_data,
01430                      hid_t write_prop,
01431                      mhdf_Status* status );
01432 
01457 void
01458 mhdf_readAdjacency( hid_t data_handle,
01459                     long offset,
01460                     long count,
01461                     hid_t hdf_integer_type,
01462                     void* adj_list_data_out,
01463                     mhdf_Status* status );
01464 void
01465 mhdf_readAdjacencyWithOpt( hid_t data_handle,
01466                     long offset,
01467                     long count,
01468                     hid_t hdf_integer_type,
01469                     void* adj_list_data_out,
01470                     hid_t read_prop,
01471                     mhdf_Status* status );
01472 
01509 
01510 
01515 
01517 #define mhdf_SET_OWNER_BIT 0x1  
01518 
01519 #define mhdf_SET_UNIQUE_BIT 0x2  
01520 
01521 #define mhdf_SET_ORDER_BIT 0x4  
01522 
01532 #define mhdf_SET_RANGE_BIT 0x8
01533 
01563 hid_t
01564 mhdf_createSetMeta( mhdf_FileHandle file_handle,
01565                     long num_sets,
01566                     long* first_set_id_out,
01567                     mhdf_Status* status );
01568 
01581 int
01582 mhdf_haveSets( mhdf_FileHandle file,
01583                int* have_set_data_out,
01584                int* have_set_child_out,
01585                int* have_set_parents_out,
01586                mhdf_Status* status );
01587 
01601 hid_t
01602 mhdf_openSetMeta( mhdf_FileHandle file_handle,
01603                   long* num_sets_out,
01604                   long* first_set_id_out,
01605                   mhdf_Status* status );
01606 
01607 hid_t
01608 mhdf_openSetMetaSimple( mhdf_FileHandle file_handle, mhdf_Status* status );
01609 
01626 void
01627 mhdf_readSetMeta( hid_t data_handle,
01628                   long offset,
01629                   long count,
01630                   hid_t hdf_integer_type,
01631                   void* set_desc_data,  
01632                   mhdf_Status* status );
01633 void
01634 mhdf_readSetMetaWithOpt( hid_t data_handle,
01635                   long offset,
01636                   long count,
01637                   hid_t hdf_integer_type,
01638                   void* set_desc_data,  
01639                   hid_t read_prop,
01640                   mhdf_Status* status );
01641 
01653 void
01654 mhdf_readSetFlags( hid_t data_handle,
01655                    long offset,
01656                    long count,
01657                    hid_t hdf_integer_type,
01658                    void* set_flag_data,
01659                    mhdf_Status* status );
01660 void
01661 mhdf_readSetFlagsWithOpt( hid_t data_handle,
01662                    long offset,
01663                    long count,
01664                    hid_t hdf_integer_type,
01665                    void* set_flag_data,
01666                    hid_t read_prop,
01667                    mhdf_Status* status );
01668 
01669 
01685 void
01686 mhdf_readSetContentEndIndices( hid_t data_handle,
01687                                long offset,
01688                                long count,
01689                                hid_t hdf_integer_type,
01690                                void* end_indices_out,
01691                                mhdf_Status* status );
01692 void
01693 mhdf_readSetContentEndIndicesWithOpt( hid_t data_handle,
01694                                long offset,
01695                                long count,
01696                                hid_t hdf_integer_type,
01697                                void* end_indices_out,
01698                                hid_t read_prop,
01699                                mhdf_Status* status );
01700 
01716 void
01717 mhdf_readSetChildEndIndices( hid_t data_handle,
01718                              long offset,
01719                              long count,
01720                              hid_t hdf_integer_type,
01721                              void* end_indices_out,
01722                              mhdf_Status* status );
01723 void
01724 mhdf_readSetChildEndIndicesWithOpt( hid_t data_handle,
01725                              long offset,
01726                              long count,
01727                              hid_t hdf_integer_type,
01728                              void* end_indices_out,
01729                              hid_t read_prop,
01730                              mhdf_Status* status );
01731 
01747 void
01748 mhdf_readSetParentEndIndices( hid_t data_handle,
01749                               long offset,
01750                               long count,
01751                               hid_t hdf_integer_type,
01752                               void* end_indices_out,
01753                               mhdf_Status* status );
01754 void
01755 mhdf_readSetParentEndIndicesWithOpt( hid_t data_handle,
01756                               long offset,
01757                               long count,
01758                               hid_t hdf_integer_type,
01759                               void* end_indices_out,
01760                               hid_t read_prop,
01761                               mhdf_Status* status );
01762 
01763 
01780 void
01781 mhdf_writeSetMeta( hid_t data_handle,
01782                    long offset,
01783                    long count,
01784                    hid_t hdf_integer_type,
01785                    const void* set_desc_data,  
01786                    mhdf_Status* status );
01787 void
01788 mhdf_writeSetMetaWithOpt( hid_t data_handle,
01789                    long offset,
01790                    long count,
01791                    hid_t hdf_integer_type,
01792                    const void* set_desc_data,  
01793                    hid_t write_prop,
01794                    mhdf_Status* status );
01795 
01811 hid_t
01812 mhdf_createSetData( mhdf_FileHandle file_handle,
01813                     long data_list_size,
01814                     mhdf_Status* status );
01815 
01830 hid_t
01831 mhdf_openSetData( mhdf_FileHandle file_handle,
01832                   long* data_list_size_out,
01833                   mhdf_Status* status );
01834 
01855 void
01856 mhdf_writeSetData( hid_t set_handle,
01857                    long offset,
01858                    long count,
01859                    hid_t hdf_integer_type,
01860                    const void* set_data,
01861                    mhdf_Status* status );
01862 void
01863 mhdf_writeSetDataWithOpt( hid_t set_handle,
01864                    long offset,
01865                    long count,
01866                    hid_t hdf_integer_type,
01867                    const void* set_data,
01868                    hid_t write_prop,
01869                    mhdf_Status* status );
01870 
01891 void
01892 mhdf_readSetData( hid_t set_handle,
01893                   long offset,
01894                   long count,
01895                   hid_t hdf_integer_type,
01896                   void* set_data,
01897                   mhdf_Status* status );
01898 void
01899 mhdf_readSetDataWithOpt( hid_t set_handle,
01900                   long offset,
01901                   long count,
01902                   hid_t hdf_integer_type,
01903                   void* set_data,
01904                   hid_t read_prop,
01905                   mhdf_Status* status );
01906 
01921 hid_t
01922 mhdf_createSetChildren( mhdf_FileHandle file_handle,
01923                         long child_list_size,
01924                         mhdf_Status* status );
01925 
01938 hid_t
01939 mhdf_openSetChildren( mhdf_FileHandle file_handle,
01940                       long* child_list_size,
01941                       mhdf_Status* status );
01942 
01957 hid_t
01958 mhdf_createSetParents( mhdf_FileHandle file_handle,
01959                        long parent_list_size,
01960                        mhdf_Status* status );
01961 
01974 hid_t
01975 mhdf_openSetParents( mhdf_FileHandle file_handle,
01976                      long* parent_list_size,
01977                      mhdf_Status* status );
01978 
01996 void
01997 mhdf_writeSetParentsChildren( hid_t data_handle,
01998                               long offset,
01999                               long count,
02000                               hid_t hdf_integer_type,
02001                               const void* id_list,
02002                               mhdf_Status* status );
02003 void
02004 mhdf_writeSetParentsChildrenWithOpt( hid_t data_handle,
02005                               long offset,
02006                               long count,
02007                               hid_t hdf_integer_type,
02008                               const void* id_list,
02009                               hid_t write_prop,
02010                               mhdf_Status* status );
02011 
02029 void
02030 mhdf_readSetParentsChildren( hid_t data_handle,
02031                              long offset,
02032                              long count,
02033                              hid_t hdf_integer_type,
02034                              void* id_list,
02035                              mhdf_Status* status );
02036 void
02037 mhdf_readSetParentsChildrenWithOpt( hid_t data_handle,
02038                              long offset,
02039                              long count,
02040                              hid_t hdf_integer_type,
02041                              void* id_list,
02042                              hid_t read_prop,
02043                              mhdf_Status* status );
02044 
02066 
02067 
02072 
02074 #define mhdf_DENSE_TYPE   2 
02075 
02076 #define mhdf_SPARSE_TYPE  1 
02077 
02078 #define mhdf_BIT_TYPE     0 
02079 
02080 #define mhdf_MESH_TYPE    3 
02081 
02103 hid_t
02104 mhdf_getNativeType( hid_t input_type,
02105                     int size,
02106                     mhdf_Status* status );
02107 
02135 void
02136 mhdf_createTag( mhdf_FileHandle file_handle,
02137                 const char* tag_name,
02138                 enum mhdf_TagDataType tag_type,
02139                 int size,
02140                 int storage,
02141                 const void* default_value,
02142                 const void* global_value,
02143                 hid_t hdf_type,
02144                 hid_t mhdf_base_type,
02145                 mhdf_Status* status );
02146 
02148 hid_t
02149 mhdf_getTagDataType( mhdf_FileHandle file_handle, 
02150                      const char* tag_name, 
02151                      mhdf_Status* status );
02152 
02153 
02179 void
02180 mhdf_createVarLenTag( mhdf_FileHandle file_handle,
02181                       const char* tag_name,
02182                       enum mhdf_TagDataType tag_type,
02183                       int storage,
02184                       const void* default_value,
02185                       int default_value_length,
02186                       const void* global_value,
02187                       int global_value_length,
02188                       hid_t hdf_type,
02189                       hid_t hdf_base_type,
02190                       mhdf_Status* status );
02191                 
02192 
02199 int
02200 mhdf_getNumberTags( mhdf_FileHandle file_handle,
02201                     mhdf_Status* status );
02202 
02213 char**
02214 mhdf_getTagNames( mhdf_FileHandle file_handle,
02215                   int* num_names_out,
02216                   mhdf_Status* status );
02217 
02237 void
02238 mhdf_getTagInfo( mhdf_FileHandle file_handle,
02239                  const char* tag_name,
02240                  enum mhdf_TagDataType* class_out,
02241                  int* size_out,
02242                  int* tstt_storage_out,
02243                  int* have_default_out,
02244                  int* have_global_out,
02245                  int* have_sparse_out,
02246                  mhdf_Status* status );
02247                  
02248 
02249 
02263 void
02264 mhdf_getTagValues( mhdf_FileHandle file_handle,
02265                    const char* tag_name,
02266                    hid_t output_data_type,
02267                    void* default_value,
02268                    void* global_value,
02269                    mhdf_Status* status );
02270 
02284 int
02285 mhdf_haveDenseTag( mhdf_FileHandle file_handle,
02286                    const char* tag_name,
02287                    const char* elem_group,
02288                    mhdf_Status* status );
02289 
02304 hid_t
02305 mhdf_createDenseTagData( mhdf_FileHandle file_handle,
02306                          const char* tag_name,
02307                          const char* elem_group,
02308                          long num_values,
02309                          mhdf_Status* status );
02310 
02323 hid_t
02324 mhdf_openDenseTagData( mhdf_FileHandle file_handle,
02325                        const char* tag_name,
02326                        const char* elem_group,
02327                        long* num_values_out,
02328                        mhdf_Status* status );
02329 
02345 void
02346 mhdf_createSparseTagData( mhdf_FileHandle file_handle,
02347                           const char* tag_name,
02348                           long num_values,
02349                           hid_t entities_and_values_out[2],
02350                           mhdf_Status* status );
02351 
02371 void
02372 mhdf_createVarLenTagData( mhdf_FileHandle file_handle,
02373                           const char* tag_name,
02374                           long num_entities,
02375                           long num_values,
02376                           hid_t entities_and_values_out[3],
02377                           mhdf_Status* status );
02378 
02403 void
02404 mhdf_openSparseTagData( mhdf_FileHandle file_handle,
02405                         const char* tag_name,
02406                         long* num_entity_out,
02407                         long* num_values_out,
02408                         hid_t entities_and_values_out[3],
02409                         mhdf_Status* status );
02410 
02425 void
02426 mhdf_writeSparseTagEntities( hid_t id_handle,
02427                              long offset,
02428                              long count,
02429                              hid_t hdf_integer_type,
02430                              const void* id_list,
02431                              mhdf_Status* status );
02432 void
02433 mhdf_writeSparseTagEntitiesWithOpt( hid_t id_handle,
02434                              long offset,
02435                              long count,
02436                              hid_t hdf_integer_type,
02437                              const void* id_list,
02438                              hid_t write_prop,
02439                              mhdf_Status* status );
02440 
02441 
02442 
02459 void
02460 mhdf_writeTagValues( hid_t value_handle,
02461                      long offset,
02462                      long count,
02463                      hid_t hdf_tag_data_type,
02464                      const void* tag_data,
02465                      mhdf_Status* status );
02466 void
02467 mhdf_writeTagValuesWithOpt( hid_t value_handle,
02468                      long offset,
02469                      long count,
02470                      hid_t hdf_tag_data_type,
02471                      const void* tag_data,
02472                      hid_t write_prop,
02473                      mhdf_Status* status );
02474 
02489 void 
02490 mhdf_writeSparseTagIndices( hid_t tag_handle,
02491                             long offset,
02492                             long count,
02493                             hid_t hdf_integer_type,
02494                             const void* end_indices,
02495                             mhdf_Status* status );
02496 void 
02497 mhdf_writeSparseTagIndicesWithOpt( hid_t tag_handle,
02498                             long offset,
02499                             long count,
02500                             hid_t hdf_integer_type,
02501                             const void* end_indices,
02502                             hid_t write_prop,
02503                             mhdf_Status* status );
02504 
02519 void
02520 mhdf_readSparseTagEntities( hid_t id_handle,
02521                             long offset,
02522                             long count,
02523                             hid_t hdf_integer_type,
02524                             void* id_list,
02525                             mhdf_Status* status );
02526 void
02527 mhdf_readSparseTagEntitiesWithOpt( hid_t id_handle,
02528                             long offset,
02529                             long count,
02530                             hid_t hdf_integer_type,
02531                             void* id_list,
02532                             hid_t read_prop,
02533                             mhdf_Status* status );
02534 
02551 void
02552 mhdf_readTagValues( hid_t value_handle,
02553                     long offset,
02554                     long count,
02555                     hid_t hdf_type,
02556                     void* memory,
02557                     mhdf_Status* status );
02558 void
02559 mhdf_readTagValuesWithOpt( hid_t value_handle,
02560                     long offset,
02561                     long count,
02562                     hid_t hdf_type,
02563                     void* memory,
02564                     hid_t read_prop,
02565                     mhdf_Status* status );
02566 
02567 
02582 void 
02583 mhdf_readSparseTagIndices( hid_t tag_handle,
02584                            long offset,
02585                            long count,
02586                            hid_t hdf_integer_type,
02587                            void* end_indices,
02588                            mhdf_Status* status );
02589 void 
02590 mhdf_readSparseTagIndicesWithOpt( hid_t tag_handle,
02591                            long offset,
02592                            long count,
02593                            hid_t hdf_integer_type,
02594                            void* end_indices,
02595                            hid_t read_prop,
02596                            mhdf_Status* status );
02597 
02602 
02603 
02604 #ifdef __cplusplus
02605 } /* extern "C" */
02606 #endif
02607 
02608 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines