00001 00017 // =================================================================== 00018 // Avoid multiple inclusion. 00019 #if !defined (_INSTRUCTION_REDUCED_READER_HH) 00020 #define _INSTRUCTION_REDUCED_READER_HH 00021 // =================================================================== 00022 00023 00024 00025 // =================================================================== 00026 // INCLUDES 00027 00028 #include <stdio.h> 00029 #include "Reference_Reader.hh" 00030 // =================================================================== 00031 00032 00033 00034 // =================================================================== 00035 // CLASS DEFINITION 00036 00044 class Instruction_Reduced_Reader : public Reference_Reader { 00045 00046 public: // CONSTRUCTOR & DESTRUCTOR 00047 00057 Instruction_Reduced_Reader (const char* const reference_trace_pathname); 00058 00065 virtual ~Instruction_Reduced_Reader (); 00066 00067 public: // VIRTUAL METHODS 00068 00080 virtual void read (reference_record_s* const reference_record); 00081 00082 protected: // DATA 00083 00085 timestamp_t reference_time; 00086 00088 timestamp_t instruction_time; 00089 00092 timestamp_t previous_cycle_timestamp; 00093 00096 context_ID_t previous_context_ID; 00097 00100 virtual_address_t* previous_address_table; 00101 00102 }; // class Reference_Reader 00103 // =================================================================== 00104 00105 00106 00107 // =================================================================== 00108 #endif // _INSTRUCTION_REDUCED_READER_HH 00109 // ===================================================================