Seaside/SpyCustom/sdk/inetchannelinfo.h
2021-06-16 18:46:33 +03:00

64 lines
2.1 KiB
C++

#if !defined( INETCHANNELINFO_H )
#define INETCHANNELINFO_H
#ifdef _WIN32
#pragma once
#endif
#define FLOW_OUTGOING 0
#define FLOW_INCOMING 1
#define MAX_FLOWS 2
class INetChannelInfo
{
public:
enum {
GENERIC = 0,
LOCALPLAYER,
OTHERPLAYERS,
ENTITIES,
SOUNDS,
EVENTS,
USERMESSAGES,
ENTMESSAGES,
VOICE,
STRINGTABLE,
MOVE,
STRINGCMD,
SIGNON,
TOTAL,
};
virtual const char* GetName(void) const = 0;
virtual const char* GetAddress(void) const = 0;
virtual float GetTime(void) const = 0;
virtual float GetTimeConnected(void) const = 0;
virtual int GetBufferSize(void) const = 0;
virtual int GetDataRate(void) const = 0;
virtual bool IsLoopback(void) const = 0;
virtual bool IsTimingOut(void) const = 0;
virtual bool IsPlayback(void) const = 0;
virtual float GetLatency(int flow) const = 0;
virtual float GetAvgLatency(int flow) const = 0;
virtual float GetAvgLoss(int flow) const = 0;
virtual float GetAvgChoke(int flow) const = 0;
virtual float GetAvgData(int flow) const = 0;
virtual float GetAvgPackets(int flow) const = 0;
virtual int GetTotalData(int flow) const = 0;
virtual int GetSequenceNr(int flow) const = 0;
virtual bool IsValidPacket(int flow, int frame_number) const = 0;
virtual float GetPacketTime(int flow, int frame_number) const = 0;
virtual int GetPacketBytes(int flow, int frame_number, int group) const = 0;
virtual bool GetStreamProgress(int flow, int* received, int* total) const = 0;
virtual float GetTimeSinceLastReceived(void) const = 0;
virtual float GetCommandInterpolationAmount(int flow, int frame_number) const = 0;
virtual void GetPacketResponseLatency(int flow, int frame_number, int* pnLatencyMsecs, int* pnChoke) const = 0;
virtual void GetRemoteFramerate(float* pflFrameTime, float* pflFrameTimeStdDeviation) const = 0;
virtual float GetTimeoutSeconds() const = 0;
};
#endif