diff --git a/src/ebusd/bushandler.cpp b/src/ebusd/bushandler.cpp index 76d90434..d8881e24 100644 --- a/src/ebusd/bushandler.cpp +++ b/src/ebusd/bushandler.cpp @@ -34,7 +34,12 @@ #include "symbol.h" #include "log.h" -using namespace std; +namespace ebusd { + +using std::dec; +using std::hex; +using std::setfill; +using std::setw; // the string used for answering to a scan request (07h 04h) #define SCAN_ANSWER ("ebusd.eu;" PACKAGE_NAME ";" SCAN_VERSION ";100") @@ -1141,3 +1146,5 @@ void BusHandler::setScanConfigLoaded(unsigned char address, string file) { m_messages->addLoadedFile(address, file, ""); } } + +} // namespace ebusd diff --git a/src/ebusd/bushandler.h b/src/ebusd/bushandler.h index 9c33f24e..6765b951 100644 --- a/src/ebusd/bushandler.h +++ b/src/ebusd/bushandler.h @@ -40,7 +40,9 @@ * @image html states.png "ebusd BusHandler states" */ -using namespace std; +namespace ebusd { + +using std::string; /** the default time [us] for retrieving a symbol from an addressed slave. */ #define SLAVE_RECV_TIMEOUT 15000 @@ -650,4 +652,6 @@ class BusHandler : public WaitThread { map m_grabbedMessages; }; +} // namespace ebusd + #endif // EBUSD_BUSHANDLER_H_ diff --git a/src/ebusd/datahandler.cpp b/src/ebusd/datahandler.cpp index f9b24be5..7d5fa679 100644 --- a/src/ebusd/datahandler.cpp +++ b/src/ebusd/datahandler.cpp @@ -26,7 +26,9 @@ # include "mqtthandler.h" #endif -using namespace std; +namespace ebusd { + +using std::string; /** the final @a argp_child structure. */ static const struct argp_child g_last_argp_child = {NULL, 0, NULL, 0}; @@ -67,3 +69,5 @@ bool datahandler_register(BusHandler* busHandler, MessageMap* messages, list &args, bool& connected) { connected = false; return result.str(); } + +} // namespace ebusd diff --git a/src/ebusd/mainloop.h b/src/ebusd/mainloop.h index 0420195b..237ac0e3 100644 --- a/src/ebusd/mainloop.h +++ b/src/ebusd/mainloop.h @@ -30,7 +30,7 @@ /** \file mainloop.h */ -using namespace std; +namespace ebusd { /** * The main loop handling requests from connected clients. @@ -252,4 +252,6 @@ class MainLoop : public Thread, DeviceListener { list m_dataHandlers; }; +} // namespace ebusd + #endif // EBUSD_MAINLOOP_H_ diff --git a/src/ebusd/mqtthandler.cpp b/src/ebusd/mqtthandler.cpp index 39967060..62dc70e1 100644 --- a/src/ebusd/mqtthandler.cpp +++ b/src/ebusd/mqtthandler.cpp @@ -23,7 +23,9 @@ #include "mqtthandler.h" #include "log.h" -using namespace std; +namespace ebusd { + +using std::dec; /** the definition of the MQTT arguments. */ static const struct argp_option g_mqtt_argp_options[] = { @@ -455,3 +457,5 @@ void MqttHandler::publishTopic(string topic, string data, bool retain) { logOtherDebug("mqtt", "publish %s %s", topic.c_str(), data.c_str()); mosquitto_publish(m_mosquitto, NULL, topic.c_str(), (uint32_t)data.size(), (uint8_t*)(data.c_str()), 0, retain); } + +} // namespace ebusd diff --git a/src/ebusd/mqtthandler.h b/src/ebusd/mqtthandler.h index 65e35ccb..3e26d73b 100644 --- a/src/ebusd/mqtthandler.h +++ b/src/ebusd/mqtthandler.h @@ -20,9 +20,9 @@ #define EBUSD_MQTTHANDLER_H_ #include +#include #include #include -#include #include "datahandler.h" #include "bushandler.h" #include "message.h" @@ -31,7 +31,11 @@ * A data handler enabling MQTT support via mosquitto. */ -using namespace std; +namespace ebusd { + +using std::map; +using std::string; +using std::vector; /** * Helper function for getting the argp definition for MQTT. @@ -128,4 +132,6 @@ class MqttHandler : public DataSink, public DataSource, public Thread { struct mosquitto* m_mosquitto; }; +} // namespace ebusd + #endif // EBUSD_MQTTHANDLER_H_ diff --git a/src/ebusd/network.cpp b/src/ebusd/network.cpp index b21097c1..9dd66995 100644 --- a/src/ebusd/network.cpp +++ b/src/ebusd/network.cpp @@ -27,7 +27,7 @@ #include #include "log.h" -using namespace std; +namespace ebusd { int Connection::m_ids = 0; @@ -299,3 +299,4 @@ void Network::cleanConnections() { } } +} // namespace ebusd diff --git a/src/ebusd/network.h b/src/ebusd/network.h index 8071ad64..b79654fb 100644 --- a/src/ebusd/network.h +++ b/src/ebusd/network.h @@ -30,7 +30,7 @@ /** \file network.h */ -using namespace std; +namespace ebusd { /** Forward declaration for @a Connection. */ class Connection; @@ -306,5 +306,6 @@ class Network : public Thread { void cleanConnections(); }; -#endif // EBUSD_NETWORK_H_ +} // namespace ebusd +#endif // EBUSD_NETWORK_H_ diff --git a/src/lib/ebus/contrib/contrib.cpp b/src/lib/ebus/contrib/contrib.cpp index b79c654e..0af485d1 100644 --- a/src/lib/ebus/contrib/contrib.cpp +++ b/src/lib/ebus/contrib/contrib.cpp @@ -19,9 +19,11 @@ #include "contrib.h" #include "tem.h" -using namespace std; +namespace ebusd { bool libebus_contrib_register() { contrib_tem_register(); return true; } + +} // namespace ebusd diff --git a/src/lib/ebus/contrib/contrib.h b/src/lib/ebus/contrib/contrib.h index 08986a00..8bb0ca2a 100644 --- a/src/lib/ebus/contrib/contrib.h +++ b/src/lib/ebus/contrib/contrib.h @@ -24,7 +24,7 @@ * configure switch: --without-contrib */ -using namespace std; +namespace ebusd { /** * Registration function that is called once during initialization. @@ -32,4 +32,6 @@ using namespace std; */ bool libebus_contrib_register(); +} // namespace ebusd + #endif // LIB_EBUS_CONTRIB_CONTRIB_H_ diff --git a/src/lib/ebus/contrib/tem.cpp b/src/lib/ebus/contrib/tem.cpp index 2f9aed0f..adec6d55 100644 --- a/src/lib/ebus/contrib/tem.cpp +++ b/src/lib/ebus/contrib/tem.cpp @@ -29,7 +29,11 @@ #include #include "datatype.h" -using namespace std; +namespace ebusd { + +using std::setfill; +using std::setw; +using std::dec; void contrib_tem_register() { DataTypeList::getInstance()->add(new TemParamDataType("TEM_P")); @@ -135,3 +139,5 @@ result_t TemParamDataType::writeSymbols(istringstream& input, } return writeRawValue(value, offset, length, output, usedLength); } + +} // namespace ebusd diff --git a/src/lib/ebus/contrib/tem.h b/src/lib/ebus/contrib/tem.h index 2f0bafb9..5f412cfe 100644 --- a/src/lib/ebus/contrib/tem.h +++ b/src/lib/ebus/contrib/tem.h @@ -34,7 +34,7 @@ * Contributed data types for TEM devices not part of regular releases. */ -using namespace std; +namespace ebusd { /** * A special variant of @a NumberDataType for TEM/Dungs ParamID in master/slave @@ -68,4 +68,6 @@ class TemParamDataType : public NumberDataType { */ void contrib_tem_register(); +} // namespace ebusd + #endif // LIB_EBUS_CONTRIB_TEM_H_ diff --git a/src/lib/ebus/contrib/test/test_tem.cpp b/src/lib/ebus/contrib/test/test_tem.cpp index 3e08063a..12216b46 100644 --- a/src/lib/ebus/contrib/test/test_tem.cpp +++ b/src/lib/ebus/contrib/test/test_tem.cpp @@ -23,7 +23,7 @@ #include "tem.h" #include "data.h" -using namespace std; +using namespace ebusd; static bool error = false; diff --git a/src/lib/ebus/data.cpp b/src/lib/ebus/data.cpp index ecf55a20..44380ebf 100644 --- a/src/lib/ebus/data.cpp +++ b/src/lib/ebus/data.cpp @@ -29,7 +29,11 @@ #include #include -using namespace std; +namespace ebusd { + +using std::dec; +using std::hex; +using std::setw; /** the week day names. */ static const char* dayNames[] = {"Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"}; @@ -1057,3 +1061,5 @@ DataField* DataFieldTemplates::get(const string name) { } return ref->second; } + +} // namespace ebusd diff --git a/src/lib/ebus/data.h b/src/lib/ebus/data.h index 0469a1cd..d3dd09dd 100644 --- a/src/lib/ebus/data.h +++ b/src/lib/ebus/data.h @@ -45,7 +45,8 @@ * instances from configuration files by inheriting the @a FileReader template * class. */ -using namespace std; + +namespace ebusd { class DataFieldTemplates; class SingleDataField; @@ -656,4 +657,6 @@ class DataFieldTemplates : public FileReader { map m_fieldsByName; }; +} // namespace ebusd + #endif // LIB_EBUS_DATA_H_ diff --git a/src/lib/ebus/datatype.cpp b/src/lib/ebus/datatype.cpp index 21870f2d..7f73856a 100644 --- a/src/lib/ebus/datatype.cpp +++ b/src/lib/ebus/datatype.cpp @@ -31,7 +31,14 @@ # include "contrib/contrib.h" #endif -using namespace std; +namespace ebusd { + +using std::dec; +using std::hex; +using std::fixed; +using std::setfill; +using std::setprecision; +using std::setw; unsigned int parseInt(const char* str, int base, const unsigned int minValue, const unsigned int maxValue, result_t& result, unsigned int* length) { char* strEnd = NULL; @@ -1073,3 +1080,5 @@ DataType* DataTypeList::get(const string id, const unsigned char length) { } return dataType; } + +} // namespace ebusd diff --git a/src/lib/ebus/datatype.h b/src/lib/ebus/datatype.h index 202c6f38..ed083b0f 100644 --- a/src/lib/ebus/datatype.h +++ b/src/lib/ebus/datatype.h @@ -46,7 +46,10 @@ * an @a istringstream to a @a SymbolString (see @a DataType#writeSymbols()). */ -using namespace std; +namespace ebusd { + +using std::map; +using std::list; /** the separator character used between base type name and length (in CSV only). */ #define LENGTH_SEPARATOR ':' @@ -584,4 +587,6 @@ class DataTypeList { #endif }; +} // namespace ebusd + #endif // LIB_EBUS_DATATYPE_H_ diff --git a/src/lib/ebus/device.cpp b/src/lib/ebus/device.cpp index a135661e..e721a8ce 100644 --- a/src/lib/ebus/device.cpp +++ b/src/lib/ebus/device.cpp @@ -36,7 +36,7 @@ #include #include "data.h" -using namespace std; +namespace ebusd { Device::~Device() { close(); @@ -323,3 +323,5 @@ ssize_t NetworkDevice::read(unsigned char& value) { } return Device::read(value); } + +} // namespace ebusd diff --git a/src/lib/ebus/device.h b/src/lib/ebus/device.h index f6b18ca7..9381f3c1 100644 --- a/src/lib/ebus/device.h +++ b/src/lib/ebus/device.h @@ -36,7 +36,7 @@ * to a file and/or forwarding it to a logging function. */ -using namespace std; +namespace ebusd { /** * Interface for listening to data received on/sent to a device. @@ -284,4 +284,6 @@ class NetworkDevice : public Device { unsigned char m_bufPos; }; +} // namespace ebusd + #endif // LIB_EBUS_DEVICE_H_ diff --git a/src/lib/ebus/filereader.h b/src/lib/ebus/filereader.h index 843e0e9a..ae31255d 100644 --- a/src/lib/ebus/filereader.h +++ b/src/lib/ebus/filereader.h @@ -39,7 +39,16 @@ * with a "*" symbol. */ -using namespace std; +namespace ebusd { + +using std::string; +using std::ostream; +using std::ostringstream; +using std::istream; +using std::istringstream; +using std::ifstream; +using std::cout; +using std::endl; /** the separator character used between fields. */ #define FIELD_SEPARATOR ',' @@ -376,4 +385,6 @@ class FileReader { string m_lastError; }; +} // namespace ebusd + #endif // LIB_EBUS_FILEREADER_H_ diff --git a/src/lib/ebus/message.cpp b/src/lib/ebus/message.cpp index e41f008c..eb4ad0ec 100644 --- a/src/lib/ebus/message.cpp +++ b/src/lib/ebus/message.cpp @@ -27,7 +27,13 @@ #include "result.h" #include "symbol.h" -using namespace std; +namespace ebusd { + +using std::dec; +using std::hex; +using std::nouppercase; +using std::setfill; +using std::setw; /** the maximum length of the command ID bytes (in addition to PB/SB) for which the key is distinct. */ #define MAX_ID_KEYLEN 4 @@ -2197,3 +2203,5 @@ void MessageMap::dump(ostream& output, bool withConditions) { output << endl; } } + +} // namespace ebusd diff --git a/src/lib/ebus/message.h b/src/lib/ebus/message.h index 6363bb98..4f373cc0 100644 --- a/src/lib/ebus/message.h +++ b/src/lib/ebus/message.h @@ -56,7 +56,11 @@ * template class. */ -using namespace std; +namespace ebusd { + +using std::binary_function; +using std::priority_queue; +using std::deque; class Condition; class SimpleCondition; @@ -702,7 +706,7 @@ class ChainedMessage : public Message { /** * A function that compares the weighted poll priority of two @a Message instances. */ -struct compareMessagePriority : binary_function { +struct compareMessagePriority : binary_function { /** * Compare the weighted poll priority of the two @a Message instances. * @param x the first @a Message. @@ -1377,4 +1381,6 @@ class MessageMap : public FileReader { map > m_instructions; }; +} // namespace ebusd + #endif // LIB_EBUS_MESSAGE_H_ diff --git a/src/lib/ebus/result.cpp b/src/lib/ebus/result.cpp index 7530198a..c2e8bc1e 100644 --- a/src/lib/ebus/result.cpp +++ b/src/lib/ebus/result.cpp @@ -19,7 +19,7 @@ #include "result.h" #include -using namespace std; +namespace ebusd { const char* getResultCode(result_t resultCode) { switch (resultCode) { @@ -58,3 +58,4 @@ const char* getResultCode(result_t resultCode) { } } +} // namespace ebusd diff --git a/src/lib/ebus/result.h b/src/lib/ebus/result.h index 3daa050b..4ca373a7 100644 --- a/src/lib/ebus/result.h +++ b/src/lib/ebus/result.h @@ -27,6 +27,8 @@ * whereas negative values indicate failure. */ +namespace ebusd { + /** type for result code. */ enum result_t { RESULT_OK = 0, //!< success @@ -70,4 +72,6 @@ enum result_t { */ const char* getResultCode(result_t resultCode); +} // namespace ebusd + #endif // LIB_EBUS_RESULT_H_ diff --git a/src/lib/ebus/symbol.cpp b/src/lib/ebus/symbol.cpp index 0dc7933c..f402a9ba 100644 --- a/src/lib/ebus/symbol.cpp +++ b/src/lib/ebus/symbol.cpp @@ -23,7 +23,13 @@ #include #include "result.h" -using namespace std; +namespace ebusd { + +using std::ostringstream; +using std::nouppercase; +using std::setw; +using std::hex; +using std::setfill; /** * CRC8 lookup table for the polynom 0x9b = x^8 + x^7 + x^4 + x^3 + x^1 + 1. @@ -83,7 +89,7 @@ result_t SymbolString::parseHex(const string& str, const bool isEscaped) { } const string SymbolString::getDataStr(const bool unescape, const bool skipLastSymbol) { - stringstream sstr; + ostringstream sstr; bool previousEscape = false; for (size_t i = 0; i < m_data.size(); i++) { @@ -255,3 +261,4 @@ bool isValidAddress(unsigned char addr, bool allowBroadcast) { return addr != SYN && addr != ESC && (allowBroadcast || addr != BROADCAST); } +} // namespace ebusd diff --git a/src/lib/ebus/symbol.h b/src/lib/ebus/symbol.h index d284c99c..c43b6dbf 100644 --- a/src/lib/ebus/symbol.h +++ b/src/lib/ebus/symbol.h @@ -27,8 +27,6 @@ #include #include "result.h" -using namespace std; - /** @file symbol.h * Classes, functions, and constants related to symbols on the eBUS. * @@ -65,6 +63,11 @@ using namespace std; * non-acknowledge, the receiving slave has to repeat its data once. */ +namespace ebusd { + +using std::string; +using std::vector; + static const unsigned char ESC = 0xA9; //!< escape symbol, either followed by 0x00 for the value 0xA9, or 0x01 for the value 0xAA static const unsigned char SYN = 0xAA; //!< synchronization symbol static const unsigned char ACK = 0x00; //!< positive acknowledge @@ -257,4 +260,6 @@ unsigned char getMasterNumber(unsigned char addr); */ bool isValidAddress(unsigned char addr, bool allowBroadcast = true); +} // namespace ebusd + #endif // LIB_EBUS_SYMBOL_H_ diff --git a/src/lib/ebus/test/test_data.cpp b/src/lib/ebus/test/test_data.cpp index ea1eba81..977274ae 100644 --- a/src/lib/ebus/test/test_data.cpp +++ b/src/lib/ebus/test/test_data.cpp @@ -22,7 +22,7 @@ #include #include "data.h" -using namespace std; +using namespace ebusd; static bool error = false; diff --git a/src/lib/ebus/test/test_device.cpp b/src/lib/ebus/test/test_device.cpp index f38bd48c..7c79127f 100644 --- a/src/lib/ebus/test/test_device.cpp +++ b/src/lib/ebus/test/test_device.cpp @@ -20,7 +20,7 @@ #include #include "device.h" -using namespace std; +using namespace ebusd; int main() { Device* device = Device::create("/dev/ttyUSB20", true, false, false); diff --git a/src/lib/ebus/test/test_filereader.cpp b/src/lib/ebus/test/test_filereader.cpp index 462fade2..6f722611 100644 --- a/src/lib/ebus/test/test_filereader.cpp +++ b/src/lib/ebus/test/test_filereader.cpp @@ -23,6 +23,7 @@ #include "filereader.h" using namespace std; +using namespace ebusd; static bool error = false; diff --git a/src/lib/ebus/test/test_message.cpp b/src/lib/ebus/test/test_message.cpp index f1d982fa..880b1c21 100644 --- a/src/lib/ebus/test/test_message.cpp +++ b/src/lib/ebus/test/test_message.cpp @@ -24,7 +24,7 @@ #include #include "message.h" -using namespace std; +using namespace ebusd; void verify(bool expectFailMatch, string type, string input, bool match, string expectStr, string gotStr) { @@ -45,12 +45,14 @@ void verify(bool expectFailMatch, string type, string input, DataFieldTemplates* templates = NULL; +namespace ebusd { DataFieldTemplates* getTemplates(const string filename) { if (filename == "") { // avoid compiler warning return templates; } return templates; } +} int main() { // message: [type],[circuit],name,[comment],[QQ[;QQ]*],[ZZ],[PBSB],[ID],fields... diff --git a/src/lib/ebus/test/test_symbol.cpp b/src/lib/ebus/test/test_symbol.cpp index 78f92cc7..bb191cd0 100644 --- a/src/lib/ebus/test/test_symbol.cpp +++ b/src/lib/ebus/test/test_symbol.cpp @@ -21,7 +21,7 @@ #include #include "symbol.h" -using namespace std; +using namespace ebusd; static bool error = false; diff --git a/src/lib/utils/log.cpp b/src/lib/utils/log.cpp index edc63e01..aecc4f34 100644 --- a/src/lib/utils/log.cpp +++ b/src/lib/utils/log.cpp @@ -25,8 +25,6 @@ #include #include "clock.h" -using namespace std; - /** the name of each @a LogFacility. */ static const char *facilityNames[] = { "main", diff --git a/src/lib/utils/queue.h b/src/lib/utils/queue.h index 1a6d8a85..36d66f0c 100644 --- a/src/lib/utils/queue.h +++ b/src/lib/utils/queue.h @@ -26,7 +26,7 @@ /** \file queue.h */ -using namespace std; +using std::list; /** * Thread safe template class for queuing items. diff --git a/src/lib/utils/rotatefile.cpp b/src/lib/utils/rotatefile.cpp index 527cc0a2..49de8e3f 100644 --- a/src/lib/utils/rotatefile.cpp +++ b/src/lib/utils/rotatefile.cpp @@ -27,7 +27,7 @@ #include #include "clock.h" -using namespace std; +using std::streamsize; RotateFile::~RotateFile() { if (m_stream) { diff --git a/src/lib/utils/rotatefile.h b/src/lib/utils/rotatefile.h index 6a4c6a3d..5abfc38d 100644 --- a/src/lib/utils/rotatefile.h +++ b/src/lib/utils/rotatefile.h @@ -28,7 +28,7 @@ * Helpers for writing to rotating files. */ -using namespace std; +using std::string; /** * Helper class for writing to a rotating file with maximum size. diff --git a/src/lib/utils/tcpsocket.cpp b/src/lib/utils/tcpsocket.cpp index c8f2d321..69a9d045 100644 --- a/src/lib/utils/tcpsocket.cpp +++ b/src/lib/utils/tcpsocket.cpp @@ -23,8 +23,6 @@ #include #include -using namespace std; - TCPSocket::TCPSocket(int sfd, struct sockaddr_in* address) : m_sfd(sfd) { char ip[17]; inet_ntop(AF_INET, (struct in_addr*)&(address->sin_addr.s_addr), ip, (socklen_t)sizeof(ip)-1); diff --git a/src/lib/utils/tcpsocket.h b/src/lib/utils/tcpsocket.h index e16f5eea..b0dc1879 100644 --- a/src/lib/utils/tcpsocket.h +++ b/src/lib/utils/tcpsocket.h @@ -26,7 +26,7 @@ /** \file tcpsocket.h */ -using namespace std; +using std::string; #ifdef __MACH__ #ifndef MSG_NOSIGNAL diff --git a/src/tools/ebusctl.cpp b/src/tools/ebusctl.cpp index 828ee8e1..ebbd5b9c 100644 --- a/src/tools/ebusctl.cpp +++ b/src/tools/ebusctl.cpp @@ -32,8 +32,10 @@ #include #include "tcpsocket.h" - -using namespace std; +using std::ostringstream; +using std::cin; +using std::cout; +using std::endl; /** A structure holding all program options. */ struct options { diff --git a/src/tools/ebusfeed.cpp b/src/tools/ebusfeed.cpp index 48fd6156..4d68e07f 100644 --- a/src/tools/ebusfeed.cpp +++ b/src/tools/ebusfeed.cpp @@ -28,8 +28,17 @@ #include #include #include "device.h" +#include "result.h" -using namespace std; +using std::hex; +using std::fstream; +using std::cout; +using std::endl; +using std::setw; +using std::setfill; +using std::ios; +using ebusd::result_t; +using ebusd::Device; /** A structure holding all program options. */ struct options { @@ -133,7 +142,7 @@ int main(int argc, char* argv[]) { return EINVAL; } result_t result = device->open(); - if (result != RESULT_OK) { + if (result != ebusd::RESULT_OK) { cout << "unable to open " << opt.device << ": " << getResultCode(result) << endl; } if (!device->isValid()) {