/*************************************************************************** dev.h ------------------- begin : Wed Aug 1 2001 copyright : (C) 2001 - 20003 by Roland Riegel email : feedback@roland-riegel.de ***************************************************************************/ /*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #ifndef DEV_H #define DEV_H #include #include #include "proc.h" #include "status.h" class Status; class Graph; class Window; class OptionBool; class OptionInt; class OptionLong; class OptionStatusFormat; const bool STANDARD_HIDE_GRAPHS = false; const int STANDARD_SLEEP_INTERVAL = 500; const Status::status_format STANDARD_TRAFFIC_FORMAT = Status::kilobit; const Status::status_format STANDARD_DATA_FORMAT = Status::megabyte; #ifdef HAVE_LINUX char* const STANDARD_NETWORK_DEVICE = "eth0"; #endif #ifdef HAVE_BSD char* const STANDARD_NETWORK_DEVICE = "fxp0"; #endif #ifdef HAVE_SOLARIS char* const STANDARD_NETWORK_DEVICE = "hme0"; #endif #ifdef HAVE_HPUX char* const STANDARD_NETWORK_DEVICE = "lan0"; #endif class Dev : public Proc { public: Dev(); ~Dev(); void update(); void print( Window& ); void setDeviceNumber( int ); void setTotalNumberOfDevices( int ); void setAverageSmoothness( OptionInt* ); void setHideGraphs( OptionBool* ); void setTrafficWithMaxDeflectionOfGraphs( OptionLong*, OptionLong* ); void setStatusFormat( OptionStatusFormat*, OptionStatusFormat* ); private: bool hideGraphs(); Status::status_format trafficFormat(); Status::status_format dataFormat(); int m_devicenumber; int m_totalnumberofdevices; OptionBool* m_hidegraphs; OptionStatusFormat* m_trafficformat; OptionStatusFormat* m_dataformat; Status *device_status[2]; Graph *traffic_graph[2]; }; #endif