diff -r 52a005ffd011 -r ee305a780a02 tool/Master.h --- a/tool/Master.h Mon Jul 21 22:06:33 2008 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,121 +0,0 @@ -/***************************************************************************** - * - * $Id$ - * - ****************************************************************************/ - -#ifndef __EC_MASTER_H__ -#define __EC_MASTER_H__ - -#include -#include -#include -#include -using namespace std; - -#include "../include/ecrt.h" -#include "../master/ioctl.h" - -/****************************************************************************/ - -class MasterException: - public runtime_error -{ - public: - /** Constructor with std::string parameter. */ - MasterException( - const string &s /**< Message. */ - ): runtime_error(s) {} - - /** Constructor with const char pointer parameter. */ - MasterException( - const char *s /**< Message. */ - ): runtime_error(s) {} -}; - -/****************************************************************************/ - -class Master -{ - public: - Master(); - ~Master(); - - void setIndex(unsigned int); - - enum Verbosity { - Quiet, - Normal, - Verbose - }; - void setVerbosity(Verbosity); - - void writeAlias(int, bool, const vector &); - void showConfigs(); - void outputData(int); - void setDebug(const vector &); - void showDomains(int); - void showMaster(); - void listPdos(int); - void listSdos(int); - void sdoDownload(int, const string &, const vector &); - void sdoUpload(int, const string &, const vector &); - void showSlaves(int); - void siiRead(int); - void siiWrite(int, bool, const vector &); - void requestStates(int, const vector &); - void generateXml(int); - - protected: - enum Permissions {Read, ReadWrite}; - void open(Permissions); - void close(); - - void writeSlaveAlias(uint16_t, uint16_t); - typedef list ConfigList; - void showDetailedConfigs(const ConfigList &); - void listConfigs(const ConfigList &); - void outputDomainData(unsigned int); - enum {BreakAfterBytes = 16}; - void showDomain(unsigned int); - void listSlavePdos(uint16_t, bool = false); - void listSlaveSdos(uint16_t, bool = false); - void listSlaves(int); - void showSlave(uint16_t); - void generateSlaveXml(uint16_t); - unsigned int slaveCount(); - void getMaster(ec_ioctl_master_t *); - void getConfig(ec_ioctl_config_t *, unsigned int); - void getConfigPdo(ec_ioctl_config_pdo_t *, unsigned int, uint8_t, - uint16_t); - void getConfigPdoEntry(ec_ioctl_config_pdo_entry_t *, unsigned int, - uint8_t, uint16_t, uint8_t); - void getConfigSdo(ec_ioctl_config_sdo_t *, unsigned int, unsigned int); - void getDomain(ec_ioctl_domain_t *, unsigned int); - void getFmmu(ec_ioctl_domain_fmmu_t *, unsigned int, unsigned int); - void getData(ec_ioctl_domain_data_t *, unsigned int, unsigned int, - unsigned char *); - void getSlave(ec_ioctl_slave_t *, uint16_t); - void getSync(ec_ioctl_slave_sync_t *, uint16_t, uint8_t); - void getPdo(ec_ioctl_slave_sync_pdo_t *, uint16_t, uint8_t, uint8_t); - void getPdoEntry(ec_ioctl_slave_sync_pdo_entry_t *, uint16_t, uint8_t, - uint8_t, uint8_t); - void getSdo(ec_ioctl_slave_sdo_t *, uint16_t, uint16_t); - void getSdoEntry(ec_ioctl_slave_sdo_entry_t *, uint16_t, int, uint8_t); - void requestState(uint16_t, uint8_t); - - static string slaveState(uint8_t); - static void printRawData(const uint8_t *, unsigned int); - static uint8_t calcSiiCrc(const uint8_t *, unsigned int); - - private: - enum {DefaultBufferSize = 1024}; - - unsigned int index; - Verbosity verbosity; - int fd; -}; - -/****************************************************************************/ - -#endif