home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / misc / volume36 / formes / part01 / report.h < prev    next >
C/C++ Source or Header  |  1993-04-01  |  1KB  |  68 lines

  1.  
  2. /*
  3.  *  Copyright (C) 1992-1993 Jeffrey Chilton
  4.  *
  5.  *  Permission is granted to anyone to make or distribute copies of
  6.  *  this program, in any medium, provided that the copyright notice
  7.  *  and permission notice are preserved, and that the distributor
  8.  *  grants the recipient permission for further redistribution as
  9.  *  permitted by this notice.
  10.  *  
  11.  *  Author's E-mail address:  172-9221@mcimail.com
  12.  *  
  13.  */
  14.  
  15. /* static char *whatstring = "@(#)report.h    2.3 JWC"; */
  16.  
  17. #ifndef REPORT_H
  18. #define REPORT_H
  19.  
  20. /*
  21.  *  ReportCard - Records performace by scoring group
  22.  */
  23.  
  24. typedef struct ReportCard ReportCard;
  25.  
  26. #include "collect.h"
  27.  
  28. #define NBUCKETS 5
  29. #define TRIESPER 3
  30.  
  31. struct oneGrade
  32. {
  33.     int tries[NBUCKETS];
  34.     int hits[NBUCKETS];
  35.     int zone; 
  36.     int class;
  37. };
  38.  
  39. struct ReportCard
  40. {
  41.     char *name;
  42.     Collection *allGrades;
  43.     int zoneTotal;
  44. };
  45.  
  46. #if __STDC__
  47.  
  48. extern ReportCard *ReportCard_new(char *name);
  49. extern ReportCard *ReportCard_loadFromFile(ReportCard *self, FILE *stream);
  50. extern void ReportCard_record(ReportCard *self, int class, int hits, int tries);
  51. extern void ReportCard_printOn(ReportCard *self, FILE *stream);
  52. extern int ReportCard_pickClass(ReportCard *self);
  53. extern void ReportCard_destroy(ReportCard *self);
  54.  
  55. #else
  56.  
  57. extern ReportCard *ReportCard_new();
  58. extern ReportCard *ReportCard_newFromFile();
  59. extern void ReportCard_record();
  60. extern void ReportCard_printOn();
  61. extern int ReportCard_pickClass();
  62. extern void ReportCard_destroy();
  63.  
  64. #endif
  65.  
  66. #endif
  67.  
  68.