00001 #ifndef MARHW_H 00002 #define MARHW_H 00003 00004 #include "marnet.h" 00005 00006 class MarHW : public MarNet { 00007 Q_OBJECT; 00008 00009 public: 00010 MarHW(QObject *parent=0); 00011 typedef MarNet inherited; 00012 00013 public: 00014 static void mar_abort(int m); 00015 int mar_command(); 00016 void mar_quit(int m); 00017 int mar_change_mode(); 00018 int mar_erase(); 00019 int marTask(int task, float val ); 00020 int get_status(); 00021 int process_status( char *buf ); 00022 int mar_progress(int task, int active, int error); 00023 int mar_lock(); 00024 int mar_servo(); 00025 void mar_initial_status(); 00026 void marError( int err_no, int idata ); 00027 void print_msg(char *s); 00028 int mar_start_expo(); 00029 static MarHW* mar_hw(); 00030 00031 void restart(); 00032 00033 private: 00034 int mar_move_phi(double d); 00035 int NotEnoughDiskSpace(); 00036 int StartScan(); 00037 int Modulo360(); 00038 int get_error(int mode); 00039 00040 private: 00041 int p_counter; 00042 }; 00043 00044 #endif