Imports the current Win32 source for the pod-racing game 'Red Planet', built on the MUNGA engine and its L4 (Win32/DirectX) platform layer: - MUNGA / MUNGA_L4: cross-platform engine core and Win32 backend - RP / RP_L4: Red Planet game logic and Win32 application - DivLoader, Setup1: asset loader and installer project - lib, MUNGA_L4/openal, MUNGA_L4/sos: third-party audio dependencies Removed stale Subversion metadata and added .gitignore/.gitattributes. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
49 lines
714 B
C++
49 lines
714 B
C++
#pragma once
|
|
|
|
#include "socket.h"
|
|
|
|
class SafeIterator;
|
|
|
|
typedef int IteratorMemo;
|
|
|
|
enum
|
|
{
|
|
PlugAdded = 0,
|
|
PlugRemoved,
|
|
NextSafeSocketMemo
|
|
};
|
|
|
|
class SafeSocket : public Socket
|
|
{
|
|
friend class SafeIterator;
|
|
|
|
public:
|
|
~SafeSocket();
|
|
Logical TestInstance() const;
|
|
|
|
protected:
|
|
SafeSocket(Node *node);
|
|
|
|
void SendIteratorMemo(IteratorMemo memo, void *content);
|
|
|
|
private:
|
|
SafeIterator *iteratorHead;
|
|
};
|
|
|
|
class SafeIterator : public SocketIterator
|
|
{
|
|
friend class SafeSocket;
|
|
|
|
public:
|
|
~SafeIterator();
|
|
Logical TestInstance() const;
|
|
|
|
protected:
|
|
SafeIterator(SafeSocket *safeSocket);
|
|
|
|
private:
|
|
virtual void ReceiveMemo(IteratorMemo memo, void *content);
|
|
|
|
SafeIterator *nextIterator;
|
|
SafeIterator *prevIterator;
|
|
}; |