00001 /* 00002 * Copyright (C) 2004-2005 by David J. Hardy. All rights reserved. 00003 */ 00004 00021 #ifndef MDIO_BINCOORD_H 00022 #define MDIO_BINCOORD_H 00023 00024 #include "adt/array.h" 00025 #include "mdio/file.h" 00026 #include "mdapi/mdtypes.h" 00027 00028 #ifdef __cplusplus 00029 extern "C" { 00030 #endif 00031 00036 typedef struct mdio_Bincoord_t { 00037 mdio_File file; 00038 adt_Array dvec; 00039 } mdio_Bincoord; 00040 00041 00042 /* constructor and destructor */ 00043 00051 mdio_Bincoord *mdio_createBincoord(void); 00052 00053 00062 void mdio_destroyBincoord(mdio_Bincoord *); 00063 00064 00065 /* reading file and obtaining data */ 00066 00081 int mdio_readBincoord(mdio_Bincoord *, const char *name, int n_expect); 00082 00083 00093 MD_Dvec *mdio_getBincoord(mdio_Bincoord *, int *nelems); 00094 00095 00096 /* providing data and writing file */ 00097 00109 int mdio_setBincoord(mdio_Bincoord *, MD_Dvec *dvec, int nelems); 00110 00111 00123 int mdio_writeBincoord(mdio_Bincoord *, const char *name); 00124 00125 00126 /* constructor and destructor for pre-allocated mdio_Bincoord object */ 00127 00133 int mdio_initializeBincoord(mdio_Bincoord *); 00134 00135 00141 void mdio_cleanupBincoord(mdio_Bincoord *); 00142 00143 #ifdef __cplusplus 00144 } 00145 #endif 00146 00147 #endif /* MDIO_BINCOORD_H */