imagery.h 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. #ifndef GRASS_IMAGEDEFS_H
  2. #define GRASS_IMAGEDEFS_H
  3. /* alloc.c */
  4. void *I_malloc(size_t);
  5. void *I_realloc(void *, size_t);
  6. int I_free(void *);
  7. double **I_alloc_double2(int, int);
  8. int *I_alloc_int(int);
  9. int **I_alloc_int2(int, int);
  10. int I_free_int2(int **);
  11. int I_free_double2(double **);
  12. double ***I_alloc_double3(int, int, int);
  13. int I_free_double3(double ***);
  14. /* eol.c */
  15. int I_get_to_eol(char *, int, FILE *);
  16. /* find.c */
  17. int I_find_group(const char *);
  18. int I_find_group_file(const char *, const char *);
  19. int I_find_subgroup(const char *, const char *);
  20. int I_find_subgroup_file(const char *, const char *, const char *);
  21. /* fopen.c */
  22. FILE *I_fopen_group_file_new(const char *, const char *);
  23. FILE *I_fopen_group_file_append(const char *, const char *);
  24. FILE *I_fopen_group_file_old(const char *, const char *);
  25. FILE *I_fopen_subgroup_file_new(const char *, const char *, const char *);
  26. FILE *I_fopen_subgroup_file_append(const char *, const char *, const char *);
  27. FILE *I_fopen_subgroup_file_old(const char *, const char *, const char *);
  28. /* georef.c */
  29. int I_compute_georef_equations(struct Control_Points *, double *, double *,
  30. double *, double *, int);
  31. int I_georef(double, double, double *, double *, double *, double *, int);
  32. /* group.c */
  33. int I_get_group(char *);
  34. int I_put_group(const char *);
  35. int I_get_subgroup(const char *, char *);
  36. int I_put_subgroup(const char *, const char *);
  37. int I_get_group_ref(const char *, struct Ref *);
  38. int I_get_subgroup_ref(const char *, const char *, struct Ref *);
  39. int I_init_ref_color_nums(struct Ref *);
  40. int I_put_group_ref(const char *, const struct Ref *);
  41. int I_put_subgroup_ref(const char *, const char *, const struct Ref *);
  42. int I_add_file_to_group_ref(const char *, const char *, struct Ref *);
  43. int I_transfer_group_ref_file(const struct Ref *, int, struct Ref *);
  44. int I_init_group_ref(struct Ref *);
  45. int I_free_group_ref(struct Ref *);
  46. /* iclass.c */
  47. struct Map_info;
  48. int I_iclass_analysis(IClass_statistics *, struct Ref *, struct Map_info *, const char *, const char *, const char *);
  49. int I_iclass_init_group(const char *, struct Ref *);
  50. void I_iclass_create_raster(IClass_statistics *, struct Ref *, const char *);
  51. /* iclass_statistics.c */
  52. void I_iclass_statistics_get_nbands(IClass_statistics *, int *);
  53. void I_iclass_statistics_get_cat(IClass_statistics *, int *);
  54. void I_iclass_statistics_get_name(IClass_statistics *, const char **);
  55. void I_iclass_statistics_get_color(IClass_statistics *, const char **);
  56. void I_iclass_statistics_get_ncells(IClass_statistics *, int *);
  57. int I_iclass_statistics_get_max(IClass_statistics *, int, int *);
  58. int I_iclass_statistics_get_range_max(IClass_statistics *, int, int *);
  59. int I_iclass_statistics_get_min(IClass_statistics *, int, int *);
  60. int I_iclass_statistics_get_range_min(IClass_statistics *, int, int *);
  61. int I_iclass_statistics_get_sum(IClass_statistics *, int, float *);
  62. int I_iclass_statistics_get_mean(IClass_statistics *, int, float *);
  63. int I_iclass_statistics_get_stddev(IClass_statistics *, int, float *);
  64. void I_iclass_statistics_get_nstd(IClass_statistics *, float *);
  65. void I_iclass_statistics_set_nstd(IClass_statistics *, float);
  66. int I_iclass_statistics_get_histo(IClass_statistics *, int, int, int *);
  67. int I_iclass_statistics_get_product(IClass_statistics *, int, int, float *);
  68. void I_iclass_init_statistics(IClass_statistics *, int, const char *, const char *, float);
  69. void I_iclass_free_statistics(IClass_statistics *);
  70. /* iclass_signatures.c */
  71. int I_iclass_init_signatures(struct Signature *, struct Ref *);
  72. void I_iclass_add_signature(struct Signature *, IClass_statistics *);
  73. int I_iclass_write_signatures(struct Signature *, const char *, const char *, const char *);
  74. /* list_gp.c */
  75. int I_list_group(const char *, const struct Ref *, FILE *);
  76. int I_list_group_simple(const struct Ref *, FILE *);
  77. /* list_subgp.c */
  78. int I_list_subgroup(const char *, const char *, const struct Ref *, FILE *);
  79. int I_list_subgroup_simple(const struct Ref *, FILE *);
  80. /* loc_info.c */
  81. char *I_location_info(const char *);
  82. /* points.c */
  83. int I_new_control_point(struct Control_Points *, double, double, double,
  84. double, int);
  85. int I_get_control_points(const char *, struct Control_Points *);
  86. int I_put_control_points(const char *, const struct Control_Points *);
  87. /* ref.c */
  88. FILE *I_fopen_group_ref_new(const char *);
  89. FILE *I_fopen_group_ref_old(const char *);
  90. FILE *I_fopen_subgroup_ref_new(const char *, const char *);
  91. FILE *I_fopen_subgroup_ref_old(const char *, const char *);
  92. /* sig.c */
  93. int I_init_signatures(struct Signature *, int);
  94. int I_new_signature(struct Signature *);
  95. int I_free_signatures(struct Signature *);
  96. int I_read_one_signature(FILE *, struct Signature *);
  97. int I_read_signatures(FILE *, struct Signature *);
  98. int I_write_signatures(FILE *, struct Signature *);
  99. /* sigfile.c */
  100. FILE *I_fopen_signature_file_new(const char *, const char *, const char *);
  101. FILE *I_fopen_signature_file_old(const char *, const char *, const char *);
  102. /* sigset.c */
  103. int I_SigSetNClasses(struct SigSet *);
  104. struct ClassData *I_AllocClassData(struct SigSet *, struct ClassSig *, int);
  105. int I_InitSigSet(struct SigSet *);
  106. int I_SigSetNBands(struct SigSet *, int);
  107. struct ClassSig *I_NewClassSig(struct SigSet *);
  108. struct SubSig *I_NewSubSig(struct SigSet *, struct ClassSig *);
  109. int I_ReadSigSet(FILE *, struct SigSet *);
  110. int I_SetSigTitle(struct SigSet *, const char *);
  111. const char *I_GetSigTitle(const struct SigSet *);
  112. int I_SetClassTitle(struct ClassSig *, const char *);
  113. const char *I_GetClassTitle(const struct ClassSig *);
  114. int I_WriteSigSet(FILE *, const struct SigSet *);
  115. /* sigsetfile.c */
  116. FILE *I_fopen_sigset_file_new(const char *, const char *, const char *);
  117. FILE *I_fopen_sigset_file_old(const char *, const char *, const char *);
  118. /* target.c */
  119. int I_get_target(const char *, char *, char *);
  120. int I_put_target(const char *, const char *, const char *);
  121. /* title.c */
  122. int I_get_group_title(const char *, char *, int);
  123. int I_put_group_title(const char *, const char *);
  124. /* var.c */
  125. double I_variance(double, double, int);
  126. double I_stddev(double, double, int);
  127. #endif