diff --git a/public/networksystem/inetworksystem.h b/public/networksystem/inetworksystem.h index 1587fa52..1872365e 100644 --- a/public/networksystem/inetworksystem.h +++ b/public/networksystem/inetworksystem.h @@ -73,73 +73,73 @@ abstract_class INetworkSystem : public IAppSystem public: virtual void InitGameServer() = 0; virtual void ShutdownGameServer() = 0; + virtual int CreateSocket( int, int, int, int, int, const char * ) = 0; virtual void OpenSocket( int sock ) = 0; - virtual bool IsOpen ( int sock ) = 0; + virtual void ConnectSocket( int sock, const netadr_t &adr ) = 0; + virtual bool IsSocketOpen( int sock ) = 0; virtual void CloseSocket( int sock ) = 0; - virtual void ForceReopenSocket( int sock, int ) = 0; - virtual void SetRemoteStreamChannel( int, int ) = 0; - virtual void AddExtraSocket( int, const char * ) = 0; - virtual void RemoveAllExtraSockets() = 0; - - virtual int InitPeerToPeerNetworking( IPeerToPeerCallbacks * ) = 0; - virtual void ShutdownPeerToPeerNetworking( int sock ) = 0; - virtual void TerminatePeerToPeerSockets( int sock ) = 0; - virtual void P2PAcceptableConnectionsChanged( ESteamP2PConnectionOwner owner ) = 0; - - virtual void EnableLoopbackBetweenSockets( int, int ) = 0; + virtual void EnableLoopbackBetweenSockets( int sock1, int sock2 ) = 0; virtual void SetDefaultBroadcastPort( int port ) = 0; - virtual void RunFrame( double ) = 0; - virtual void SendQueuedPackets() = 0; - virtual void FlushPeerToPeerChannels( int sock ) = 0; - virtual void SleepUntilMessages( int, int ) = 0; - virtual void InitPostFork() = 0; - virtual void SetSubProcess( bool ) = 0; - virtual void SendPacket( INetChannel *netchan, int, const ns_address &adr, const unsigned char *, int, bf_write *, bool, unsigned int ) = 0; - virtual void ProcessSocket( int sock, IConnectionlessPacketHandler *handler ) = 0; - virtual void ProcessIncomingP2PRequests( ESteamP2PConnectionOwner, ISteamP2PAllowConnection * ) = 0; - virtual void PollSocket( int, IConnectionlessPacketHandler * ) = 0; - virtual void ProcessSocketMessages( int ) = 0; - virtual INetChannel *CreateNetChannel( int, const ns_address *adr, const char *, uint32, uint32 ) = 0; - virtual INetChannel *CreateNetChannel( int, const CPeerToPeerAddress &, const char * ) = 0; + virtual void PollSocket( int sock, IConnectionlessPacketHandler * ) = 0; + + virtual void unk001() = 0; + + virtual INetChannel *CreateNetChannel( int sock, const ns_address *adr, uint32 steam_handle, const char *, uint32, uint32 ) = 0; virtual void RemoveNetChannel( INetChannel *netchan, bool ) = 0; - virtual void RemoveNetChannelByAddress(int, const CPeerToPeerAddress &) = 0; - virtual void ListenSocket( int sock, bool ) = 0; - virtual void ConnectSocket( int sock , const netadr_t &adr ) = 0; - virtual void CloseNetworkSocket( int sock, int ) = 0; - virtual void OutOfBandPrintf( int sock, const ns_address &adr, const char *format, ...) = 0; - virtual void OutOfBandDelayedPrintf( int sock, const ns_address &adr, unsigned int delay, const char *format, ...) = 0; - virtual void SetTime( double time ) = 0; - virtual void SetTimeScale( float timeScale ) = 0; - virtual double GetNetTime() const = 0; - virtual void DescribeSocket( int sock ) = 0; - virtual void BufferToBufferCompress( char *, unsigned int *, const char *, unsigned int ) = 0; - virtual void BufferToBufferDecompress( char *, unsigned int *, char const *, unsigned int ) = 0; - virtual netadr_t& GetPublicAdr() = 0; - virtual netadr_t& GetLocalAdr() = 0; - virtual float GetFakeLag() = 0; - virtual uint16 GetUDPPort( int ) = 0; - virtual bool IsSafeFileToDownload( const char *file ) = 0; - virtual bool IsValidFileTransferExtension( const char *extension ) = 0; - virtual bool CanRedownloadFile( const char *file ) = 0; - virtual void AddNetworkConfigChangedCallback( INetworkConfigChanged *callback ) = 0; - virtual void RemoveNetworkConfigChangedCallback( INetworkConfigChanged *callback ) = 0; - virtual void AddNetworkPacketFilterCallback( INetworkPacketFilter *callback ) = 0; - virtual void RemoveNetworkPacketFilterCallback( INetworkPacketFilter *callback ) = 0; - virtual void AddNetworkFileDownloadFilter( INetworkFileDownloadFilter *callback ) = 0; - virtual void RemoveNetworkFileDownloadFilter( INetworkFileDownloadFilter *callback ) = 0; - virtual void AddNetworkFileSendCompletedCallback( INetworkFileSendCompleted *callback ) = 0; - virtual void RemoveNetworkFileSendCompletedCallback( INetworkFileSendCompleted *callback ) = 0; - virtual void AddNetworkPrepareStartupParamsCallback( INetworkPrepareStartupParams *callback ) = 0; - virtual void RemoveNetworkPrepareStartupParamsCallback( INetworkPrepareStartupParams *callback ) = 0; - virtual void AddNetworkChannelNotifyCallback( INetworkChannelNotify *callback ) = 0; - virtual void RemoveNetworkChannelNotifyCallback( INetworkChannelNotify *callback ) = 0; + virtual bool RemoveNetChannelByAddress( int, const ns_address *adr ) = 0; + + virtual void PrintNetworkStats() = 0; + + virtual void unk101() = 0; + virtual void unk102() = 0; + + virtual const char *DescribeSocket( int sock ) = 0; + virtual bool IsValidSocket( int sock ) = 0; + + virtual void BufferToBufferCompress( uint8 *pDest, int &nDestSize, uint8 *pIn, unsigned int nInSize ) = 0; + virtual void BufferToBufferDecompress( uint8 *pDest, int &nDestSize, uint8 *pIn, unsigned int nInSize ) = 0; + + virtual netadr_t &GetPublicAdr() = 0; + virtual netadr_t &GetLocalAdr() = 0; + virtual float GetFakeLag( int sock ) = 0; + virtual uint16 GetUDPPort( int sock ) = 0; + + virtual void unk201() = 0; + virtual void unk202() = 0; + virtual void CloseAllSockets() = 0; - virtual int FindSocket( const CUtlStringToken & ) = 0; + virtual NetScratchBuffer_t *GetScratchBuffer( void ) = 0; virtual void PutScratchBuffer( NetScratchBuffer_t * ) = 0; - virtual void ReceivedSteamDatagramTicket( const CMsgSteamDatagramGameServerAuthTicket & ) = 0; - virtual void *GetSteamDatagramClient( void ) = 0; + + // Returns SteamNetworkingUtils004 interface + virtual void *GetSteamNetworkUtils() = 0; + + // Returns SteamApi SteamNetworkingSockets012 interface + virtual void *GetSteamUserNetworkingSockets() = 0; + + // Returns GameServer SteamNetworkingSockets012 interface + virtual void *GetSteamGameServerNetworkingSockets() = 0; + + // Returns either User or GameServer SteamNetworkingSockets012 interface + virtual void *GetSteamNetworkingSockets() = 0; + + // Returns SteamNetworkingMessages002 interface + virtual void *GetSteamNetworkingMessages() = 0; + + virtual void unk301() = 0; + virtual void unk302() = 0; + virtual void unk303() = 0; + virtual void unk304() = 0; + virtual void unk305() = 0; + + virtual void InitNetworkSystem() = 0; + + virtual void unk401() = 0; + virtual void unk402() = 0; + + virtual ~INetworkSystem() = 0; }; DECLARE_TIER2_INTERFACE( INetworkSystem, g_pNetworkSystem );