No, THIS is the major overhaul of DebugPrint
This commit is contained in:
52
Source/Integration/LuprexSockets.h
Normal file
52
Source/Integration/LuprexSockets.h
Normal file
@@ -0,0 +1,52 @@
|
||||
#pragma once
|
||||
|
||||
#include "CoreMinimal.h"
|
||||
#include "LockedWrapper.h"
|
||||
#include <string>
|
||||
|
||||
// Class FLpxSockets
|
||||
//
|
||||
// This class is responsible for creating outgoing and incoming
|
||||
// sockets for the Luprex engine. It then relays data into and out
|
||||
// of the Luprex engine.
|
||||
//
|
||||
// It only has one interesting method: Update(). This one method
|
||||
// does all the communication for the Luprex engine. Note that
|
||||
// there aren't any methods where Unreal can query the state
|
||||
// of the FLpxSockets. That's because this class is for
|
||||
// communication between Luprex and outside servers and clients,
|
||||
// NOT for communication with Unreal.
|
||||
//
|
||||
// The FLpxSockets keeps a pointer to the EngineWrapper.
|
||||
// The EngineWrapper must outlive the FLpxSockets.
|
||||
//
|
||||
// This class is an abstract base class. A derived class
|
||||
// implements all the behavior.
|
||||
//
|
||||
|
||||
class FLpxSockets;
|
||||
struct EngineWrapper;
|
||||
|
||||
class FLpxSockets
|
||||
{
|
||||
protected:
|
||||
FLpxSockets() {}
|
||||
|
||||
public:
|
||||
// Create the Luprex socket system.
|
||||
static FLpxSockets* Create(FLockedWrapper &w);
|
||||
|
||||
// Close all sockets.
|
||||
virtual void ForceCloseEverything(FLockedWrapper& w) = 0;
|
||||
|
||||
// The update routine relays data into and out of
|
||||
// luprex via TCP/IP sockets.
|
||||
virtual void Update(FLockedWrapper& w) = 0;
|
||||
|
||||
// Delete the luprex socket system.
|
||||
// You must call ForceCloseEverything first.
|
||||
virtual ~FLpxSockets() {}
|
||||
|
||||
// Obtain any error status report.
|
||||
virtual std::string GetError() = 0;
|
||||
};
|
||||
Reference in New Issue
Block a user