bench4q/Bench4Q-Monitor/WindowsMonitor/Monitor/NetworkInterface.h

34 lines
1.9 KiB
C++

#pragma once
#include "Monitor.h"
#include <list>
#include <string>
using namespace std;
class MONITOR_API NetworkInterface
{
public:
static list<wstring> GetInstances();
static list<wstring> GetCounterList();
static double GetBytesTotalPerSecond(const wchar_t * instanceName, int idleTime);
static double GetPacketsPerSecond(const wchar_t * instanceName, int idleTime);
static double GetPacketsReceivedPerSecond(const wchar_t * instanceName, int idleTime);
static double GetPacketsSentPerSecond(const wchar_t * instanceName, int idleTime);
static double GetCurrentBandwidth(const wchar_t * instanceName);
static double GetBytesReceivedPerSecond(const wchar_t * instanceName, int idleTime);
static double GetPacketsReceivedUnicastPerSecond(const wchar_t * instanceName, int idleTime);
static double GetPacketsReceivedNonUnicastPerSecond(const wchar_t * instanceName, int idleTime);
static double GetPacketsReceivedDiscarded(const wchar_t * instanceName);
static double GetPacketsReceivedErrors(const wchar_t * instanceName);
static double GetPacketsReceivedUnknown(const wchar_t * instanceName);
static double GetBytesSentPerSecond(const wchar_t * instanceName, int idleTime);
static double GetPacketsSentUnicastPerSecond(const wchar_t * instanceName, int idleTime);
static double GetPacketsSentNonUnicastPerSecond(const wchar_t * instanceName, int idleTime);
static double GetPacketsOutboundDiscarded(const wchar_t * instanceName);
static double GetPacketsOutboundErrors(const wchar_t * instanceName);
static double GetOutputQueueLength(const wchar_t * instanceName);
static double GetOffloadedConnections(const wchar_t * instanceName);
static double GetTcpActiveRscConnections(const wchar_t * instanceName);
static double GetTcpRscCoalescedPacketsPerSecond(const wchar_t * instanceName, int idleTime);
static double GetTcpRscExceptionsPerSecond(const wchar_t * instanceName, int idleTime);
static double GetTcpRscAveragePacketSize(const wchar_t * instanceName);
};