dapodom.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. /*********************************************************************
  2. * Copyright 1993, UCAR/Unidata
  3. * See netcdf/COPYRIGHT file for copying and redistribution conditions.
  4. * $Header$
  5. *********************************************************************/
  6. #ifndef DAPODOM_H
  7. #define DAPODOM_H 1
  8. typedef struct Dapodometer {
  9. int rank;
  10. DCEslice slices[NC_MAX_VAR_DIMS];
  11. size_t index[NC_MAX_VAR_DIMS];
  12. } Dapodometer;
  13. /* Odometer operators*/
  14. extern Dapodometer* newdapodometer(DCEslice* slices, unsigned int first, unsigned int count);
  15. extern Dapodometer* newsimpledapodometer(struct DCEsegment*,unsigned int);
  16. extern Dapodometer* newdapodometer1(unsigned int count);
  17. extern Dapodometer* newdapodometer2(const size_t*, const size_t*,
  18. const ptrdiff_t*, unsigned int, unsigned int);
  19. extern Dapodometer* newdapodometer3(int, size_t*);
  20. extern void freedapodometer(Dapodometer*);
  21. extern char* dapodometerprint(Dapodometer* odom);
  22. extern int dapodometermore(Dapodometer* odom);
  23. extern int dapodometerincr(Dapodometer* odo);
  24. extern int dapodometerincrith(Dapodometer* odo,int);
  25. extern size_t dapodometercount(Dapodometer* odo);
  26. extern void dapodometerreset(Dapodometer*);
  27. extern Dapodometer* dapodometersplit(Dapodometer* odom, int tail);
  28. extern size_t dapodometerspace(Dapodometer* odom, unsigned int wheel);
  29. extern size_t dapodometerpoints(Dapodometer*);
  30. extern size_t* dapodometerindices(Dapodometer*);
  31. extern int dapodometervarmcount(Dapodometer*, const ptrdiff_t*, const size_t*);
  32. #endif /*DAPODOM_H*/