diff -r 52a005ffd011 -r ee305a780a02 tool/globals.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tool/globals.h Mon Jul 21 22:20:23 2008 +0000 @@ -0,0 +1,89 @@ +/***************************************************************************** + * + * $Id$ + * + ****************************************************************************/ + +#include + +#include +#include +#include +using namespace std; + +#include "MasterDevice.h" + +/*****************************************************************************/ + +enum Verbosity { + Quiet, + Normal, + Verbose +}; + +extern string command; +extern int slavePosition; +extern int domainIndex; +extern vector commandArgs; +extern Verbosity verbosity; +extern string dataTypeStr; +extern bool force; + +extern MasterDevice masterDev; + +/****************************************************************************/ + +class InvalidUsageException: + public runtime_error +{ + public: + /** Constructor with std::string parameter. */ + InvalidUsageException( + const stringstream &s /**< Message. */ + ): runtime_error(s.str()) {} +}; + +/****************************************************************************/ + +class ExecutionFailureException: + public runtime_error +{ + public: + /** Constructor with std::string parameter. */ + ExecutionFailureException( + const stringstream &s /**< Message. */ + ): runtime_error(s.str()) {} +}; + +/*****************************************************************************/ + +#define swap16(x) \ + ((uint16_t)( \ + (((uint16_t)(x) & 0x00ffU) << 8) | \ + (((uint16_t)(x) & 0xff00U) >> 8) )) +#define swap32(x) \ + ((uint32_t)( \ + (((uint32_t)(x) & 0x000000ffUL) << 24) | \ + (((uint32_t)(x) & 0x0000ff00UL) << 8) | \ + (((uint32_t)(x) & 0x00ff0000UL) >> 8) | \ + (((uint32_t)(x) & 0xff000000UL) >> 24) )) + +#if __BYTE_ORDER == __LITTLE_ENDIAN + +#define le16tocpu(x) x +#define le32tocpu(x) x + +#define cputole16(x) x +#define cputole32(x) x + +#elif __BYTE_ORDER == __BIG_ENDIAN + +#define le16tocpu(x) swap16(x) +#define le32tocpu(x) swap32(x) + +#define cputole16(x) swap16(x) +#define cputole32(x) swap32(x) + +#endif + +/****************************************************************************/