00001 #ifndef _emitter_bird_H_ 00002 #define _emitter_bird_H_ 00003 00004 #include "dev/emitter.H" 00005 #include "dev/polled.H" 00006 #include "tty/tty.H" 00007 00008 // 00009 // An Ascension Flock of Birds, directly accessed through the 00010 // serial port 00011 // 00012 class DEVemitter_Bird : public DEVemitter, public TTYfd { 00013 protected: 00014 int _num; // number of cached bytes read in 00015 char _buf[4096]; 00016 str_ptr _serialport; 00017 int _baud; 00018 bool _has_erc; 00019 double _sleep_duration; 00020 bool _use_sync; 00021 00022 void decode_record(char *buf, int tracker); 00023 public: 00024 DEVemitter_Bird(Cstr_ptr &name); 00025 virtual ~DEVemitter_Bird(); 00026 00027 virtual bool initialize(); 00028 virtual bool activate(); 00029 virtual bool deactivate(); 00030 virtual void sample(); 00031 }; 00032 00033 #endif