00001 /* 00002 * ===================================================================================== 00003 * 00004 * Filename: processor.h 00005 * 00006 * Description: 00007 * 00008 * Version: 1.0 00009 * Created: 02/19/2010 12:12:04 AM 00010 * Revision: none 00011 * Compiler: gcc 00012 * 00013 * Author: Mitchelle Rasquinha (), mitchelle.rasquinha@gatech.edu 00014 * Company: Georgia Institute of Technology 00015 * 00016 * ===================================================================================== 00017 */ 00018 00019 #ifndef _processor_h_INC 00020 #define _processor_h_INC 00021 00022 #include "networkComponent.h" 00023 #include "../../data_types/impl/irisEvent.h" 00024 #include "interface.h" 00025 00026 /* 00027 * ===================================================================================== 00028 * Class: Processor 00029 * Description: 00030 * ===================================================================================== 00031 */ 00032 class Processor : public NetworkComponent 00033 { 00034 public: 00035 Processor (); /* constructor */ 00036 virtual ~Processor(); 00037 vector < Interface* > interface_connections; 00038 void init(); 00039 virtual string toString() const; 00040 virtual void process_event(IrisEvent* e) = 0; 00041 virtual void setup(uint n, uint v, uint time) = 0; 00042 virtual void set_output_path( string outpath_name ) = 0; 00043 virtual string print_stats() const = 0 ; 00044 bool ni_recv; 00045 protected: 00046 00047 private: 00048 00049 }; /* ----- end of class Processor ----- */ 00050 00051 #endif /* ----- #ifndef _processor_h_INC ----- */ 00052