/* * Title: Control.h * Author: M.Thomas BEAM Ltd * Date: 2007-02-13 * * Contents: All GUI access to the Tms server is routed through this class. * * Mod Rec: * */ #ifndef CONTROL_H #define CONTROL_H 1 #include #include #include #include #include /// The main system control class class Control : public QObject { Q_OBJECT public: Control(); ~Control(); void setHost(BString name); BError init(); ///< Initialise the system BError connect(); ///< Connect to both Control and Process BError reconfigure(Tms::ConfigInfo i); ///< Reconfigure the system BError getConfiguration(Tms::ConfigInfo& i); ///< Get current configuration BError runTest(BList& l); ///< Run the server selftest BError getData(Tms::DataInfo info,Tms::Data& data); BError getStatus(BList& l); ///< Get Status BError getStatistics(BList& l); ///< Get Statistics BError setControlInfo(Tms::CycleParam params); ///< Setup Cycle parameters BError getPuChannel (UInt32 puChannel, Tms::PuChannel &puPhysChannel); ///< Get a handle for vitrual channel BError getCycleNumber(UInt32& cycleNumber ); ///< Get current cycle number BError setTestData(Tms::PuChannel puChannel,Int32 on, BArray data); ///< Set pupe test data BError getTestData(Tms::PuChannel puPhysChannel, Tms::TestCaptureInfo captureInfo, BArray< UInt64 > &data); ///< Fetch pupe test data signals: void newConnection(); ///< Signals a new connection made private: BString ohostName; Tms::TmsControl otmsControl; Tms::TmsProcess otmsProcess; }; #endif