Muster SDK  8.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
MDispatcherStatistics.h
Go to the documentation of this file.
1 /*****************************************************************************
2  **
3  ** Header file for Muster API Dispatcher Statistics object
4  **
5  ** Name : MDispatcherStatistics.h
6  ** Author : Leonardo Bernardini
7  ** Version : 1.0, Sat Mar 2nd 2013
8  **
9  ** Copyright 2000-2014, Virtual Vertex
10  ** All Rights Reserved.
11  **
12  ** This file contains UNPUBLISHED PROPRIETARY SOURCE CODE.
13  ** The contents of this file may not be disclosed to third parties, copied
14  ** or duplicated in any form, in whole or in part, without the prior written
15  ** permission of the author.
16  **
17  *****************************************************************************/
18 #ifndef MDISPATCHERSTATISTICS_H
19 #define MDISPATCHERSTATISTICS_H
20 
21 
22 #ifdef WIN32
23 // Windows definitions
24 #ifdef MCLIENTLIB_EXPORTS
25 #define MCLIENTLIB_API __declspec(dllexport)
26 #else
27 #define MCLIENTLIB_API __declspec(dllimport)
28 #endif
29 #else
30 
31 #ifndef MCLIENTLIB_EXPORTS
32 #ifdef LINUX
33 #define MCLIENTLIB_API
34 #else
35 #define MCLIENTLIB_API
36 #endif
37 #else
38 #define MCLIENTLIB_API
39 #endif
40 
41 #endif
42 
43 #include <string>
44 #include <vector>
45 
46 namespace MClientLib {
48 
52  private:
53  long long int lastStatisticsUpdate;
54  unsigned long long controlInBytes;
55  unsigned long long controlOutBytes;
56  unsigned long long nodesInBytes;
57  unsigned long long nodesOutBytes;
58  unsigned long long notificatorInBytes;
59  unsigned long long notificatorOutBytes;
60  unsigned long long webInBytes;
61  unsigned long long webOutBytes;
62 
63  float controlInKbs;
64  float controlOutKbs;
65  float nodesInKbs;
66  float nodesOutKbs;
67  float notificatorInKbs;
68  float notificatorOutKbs;
69  float webInKbs;
70  float webOutKbs;
71 
72  int numberOfNodes;
73  int numberOfManagements;
74  int numberOfNotificators;
75  int numberOfWebSessions;
76  int numberOfWebClients;
77  int numberOfWebClientsHttps;
78 
79  int userNodes;
80  int pausedNodes;
81  int idleNodes;
82  int unavailableNodes;
83  public:
85 
86  long long int getLastStatisticsUpdate();
87  unsigned long long getTotalInBytes();
88  unsigned long long getTotalOutBytes();
89  unsigned long long getControlInBytes();
90  unsigned long long getControlOutBytes();
91  unsigned long long getNodesInBytes();
92  unsigned long long getNodesOutBytes();
93  unsigned long long getNotificatorInBytes();
94  unsigned long long getNotificatorOutBytes();
95  unsigned long long getWebInBytes();
96  unsigned long long getWebOutBytes();
97  float getTotalInKbs();
98  float getTotalOutKbs();
99  float getControlInKbs();
100  float getControlOutKbs();
101  float getNodesInKbs();
102  float getNodesOutKbs();
103  float getNotificatorInKbs();
104  float getNotificatorOutKbs();
105  float getWebInKbs();
106  float getWebOutKbs();
107  int getNumberOfNodes();
108  int getNumberOfManagements();
109  int getNumberOfNotificators();
110  int getNumberOfWebSessions();
111  int getNumberOfWebClients();
112  int getNumberOfWebClientsHttps();
113  int getUserNodes();
114  int getPausedNodes();
115  int getIdleNodes();
116  int getUnavailableNodes();
117 
118  void setLastStatisticsUpdate(long long int _lastStatisticsUpdate);
119  void setControlInBytes(unsigned long long _controlInBytes);
120  void setControlOutBytes(unsigned long long _controlOutBytes);
121  void setNodesInBytes(unsigned long long _nodesInBytes);
122  void setNodesOutBytes(unsigned long long _nodesOutBytes);
123  void setNotificatorInBytes(unsigned long long _notificatorInBytes);
124  void setNotificatorOutBytes(unsigned long long _notificatorOutBytes);
125  void setWebInBytes(unsigned long long _webInBytes);
126  void setWebOutBytes(unsigned long long _webOutBytes);
127  void setControlInKbs(float _controlInKbs);
128  void setControlOutKbs(float _controlOutKbs);
129  void setNodesInKbs(float _nodesInKbs);
130  void setNodesOutKbs(float _nodesOutKbs);
131  void setNotificatorInKbs(float _notificatorInKbs);
132  void setNotificatorOutKbs(float _notificatorOutKbs);
133  void setWebInKbs(float _webInKbs);
134  void setWebOutKbs(float _webOutKbs);
135  void setNumberOfNodes(int _numberOfNodes);
136  void setNumberOfManagements(int _numberOfManagements);
137  void setNumberOfNotificators(int _numberOfNotificators);
138  void setNumberOfWebSessions(int _numberOfWebSessions);
139  void setNumberOfWebClients(int _numberOfWebClients);
140  void setNumberOfWebClientsHttps(int _numberOfWebClientsHttps);
141  void setUserNodes(int _userNodes);
142  void setPausedNodes(int _pausedNodes);
143  void setIdleNodes(int _idleNodes);
144  void setUnavailableNodes(int _unavailableNodes);
145 
146  bool Unmarshall(std::vector<std::string>& items);
147  };
148 }
149 
150 #endif