00001 #ifndef __EH_NDGRID_H__
00002 #define __EH_NDGRID_H__
00003
00004 #include <glib.h>
00005 #include <utils/eh_types.h>
00006 #include <utils/eh_grid.h>
00007
00008 #if !defined( OLD_NDGRID )
00009
00010 new_handle( Eh_ndgrid );
00011
00012 double* eh_ndgrid_x ( Eh_ndgrid g , gssize dim );
00013 gssize eh_ndgrid_n ( Eh_ndgrid g , gssize dim );
00014
00015 Eh_ndgrid eh_ndgrid_malloc ( gssize n_dim , gssize el_size , ... );
00016 void eh_ndgrid_free_data ( Eh_ndgrid g );
00017 double eh_ndgrid_ind ( Eh_ndgrid g , ... );
00018 Eh_ndgrid eh_ndgrid_reshape ( Eh_ndgrid g ,
00019 gssize *new_size ,
00020 gssize new_n_dim );
00021 gssize eh_ndgrid_sub_to_id ( gssize *size ,
00022 gssize *sub ,
00023 gssize n_dim );
00024 gssize* eh_ndgrid_id_to_sub ( gssize *size ,
00025 gssize id ,
00026 gssize n_dim );
00027 void eh_ndgrid_destroy ( Eh_ndgrid g );
00028 Eh_dbl_grid eh_ndgrid_to_grid ( Eh_ndgrid g );
00029 Eh_ndgrid eh_grid_to_ndgrid ( Eh_grid g );
00030 gssize eh_ndgrid_write ( FILE *fp , Eh_ndgrid g );
00031
00032 #endif
00033
00034 #endif
00035