00001 00008 #ifndef RELAY_H 00009 #define RELAY_H 00010 00011 #include "powerflow.h" 00012 #include "link.h" 00013 00014 class relay : public link 00015 { 00016 private: 00017 TIMESTAMP reclose_time; 00018 public: 00019 double time_to_change; 00020 double recloser_delay; 00021 int16 recloser_tries; 00022 int16 recloser_limit; 00023 bool recloser_event; 00024 00025 public: 00026 static CLASS *oclass; 00027 static CLASS *pclass; 00028 00029 private: 00030 TIMESTAMP recloser_delay_time; 00031 TIMESTAMP recloser_reset_time; 00032 int16 current_recloser_tries; 00033 00034 public: 00035 int create(void); 00036 int init(OBJECT *parent); 00037 TIMESTAMP sync(TIMESTAMP t0); 00038 TIMESTAMP postsync(TIMESTAMP t0); 00039 relay(MODULE *mod); 00040 inline relay(CLASS *cl=oclass):link(cl){}; 00041 int isa(char *classname); 00042 00043 friend class relay_tests; 00044 }; 00045 00046 #endif // RELAY_H 00047