Files
TeslaRel410/CODE/RP/MUNGA/SFESKT.HPP
T
CydandClaude Fable 5 fdd9ac9d97 Initial import: Tesla Release 4.10 (Tesla:BattleTech & Tesla:Red Planet)
Archival snapshot of the Virtual World Entertainment Tesla cockpit
software, 1994-1996: MUNGA engine and L4 pod layer source (Borland
C++ 5.0), BT/RP game code, and game content (models, audio, maps,
gauges, Division renderer data). Includes third-party libraries:
Division dVS/DPL graphics, HMI SOS audio, WATTCP networking.

Files are preserved byte-for-byte (.gitattributes disables all
line-ending conversion). README.md documents the layout, target
hardware, and toolchain.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 13:21:58 -05:00

87 lines
2.2 KiB
C++

//===========================================================================//
// File: sfeskt.hh //
// Project: MUNGA Brick: Connection Engine //
// Contents: Interface definition for safe socket class //
//---------------------------------------------------------------------------//
// Date Who Modification //
// -------- --- ---------------------------------------------------------- //
// 09/29/94 ECH Initial coding. //
// 10/28/94 JMA Made compatible with SGI CC and merged with iterator //
// 11/03/94 ECH Made compatible with BC4.0 //
// 12/12/94 ECH Changed release mechanism //
//---------------------------------------------------------------------------//
// Copyright (C) 1994-1995, Virtual World Entertainment, Inc. //
// PROPRIETARY AND CONFIDENTIAL //
//===========================================================================//
#if !defined(SFESKT_HPP)
# define SFESKT_HPP
# if !defined(SOCKET_HPP)
# include <socket.hpp>
# endif
class SafeIterator;
typedef int IteratorMemo;
enum
{
PlugAdded = 0,
PlugRemoved,
NextSafeSocketMemo
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~ SafeSocket ~~~~~~~~~~~~~~~~~~~~~~~~~~~
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;
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~ SafeIterator ~~~~~~~~~~~~~~~~~~~~~~~~~~~
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;
};
#endif