00001 00027 // =================================================================== 00028 // Avoid multiple inclusion. 00029 #if !defined (_BASIC_CONSUMER_HH) 00030 #define _BASIC_CONSUMER_HH 00031 // =================================================================== 00032 00033 00034 00035 // =================================================================== 00036 // INCLUDES 00037 00038 #include "Consumer.hh" 00039 // =================================================================== 00040 00041 00042 00043 // =================================================================== 00044 // CLASS DEFINITION 00045 00054 class Basic_Consumer : public Consumer { 00055 00056 public: // CONSTRUCTOR 00057 00067 Basic_Consumer (Reference_Reader* const reference_reader, 00068 const char* const kernel_pathname, 00069 const char* const output_file_pathname); 00070 00076 virtual ~Basic_Consumer (); 00077 00078 protected: // VIRTUAL METHODS 00079 00081 virtual void initialize () {} 00082 00084 virtual void clean_up () {} 00085 00093 virtual void act_on_reference_record (); 00094 00097 virtual void act_on_kernel_record () {} 00098 00099 protected: // DATA MEMBERS 00100 00102 FILE* output_stream; 00103 00104 }; // class Basic_Consumer 00105 // =================================================================== 00106 00107 00108 00109 // =================================================================== 00110 #endif // _BASIC_CONSUMER_HH 00111 // ===================================================================