UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SocketSubsystemMac.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "SocketSubsystem.h"
9
13class FSocketSubsystemMac : public FSocketSubsystemBSD
14{
15protected:
16
19
22
24
30
34 static void Destroy();
35
39 virtual class FSocketBSD* InternalBSDSocketFactory(SOCKET Socket, ESocketType SocketType, const FString& SocketDescription, const FName& SocketProtocol);
40
41public:
42
47
49 {
50 }
51
59 virtual bool Init(FString& Error) override;
60
64 virtual void Shutdown() override;
65
69 virtual bool HasNetworkDevice() override;
70
72};
73
77class FSocketMac : public FSocketBSD
78{
79public:
80
92
94 {
95 FSocketMac::Close();
96 }
97
98 virtual bool SetReuseAddr(bool bAllowReuse) override
99 {
100 int Param = bAllowReuse ? 1 : 0;
101 return (setsockopt(Socket,SOL_SOCKET,SO_REUSEADDR,(char*)&Param,sizeof(Param)) == 0) && (setsockopt(Socket,SOL_SOCKET,SO_REUSEPORT,(char*)&Param,sizeof(Param)) == 0);
102 }
103};
#define PACKAGE_SCOPE
Definition CoreOnlinePackage.h:9
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
void Init()
Definition LockFreeList.h:4
int32 SOCKET
Definition SocketSubsystemBSDPrivate.h:47
ESocketType
Definition SocketTypes.h:33
Definition NameTypes.h:617
Definition SocketSubsystemMac.h:78
virtual bool SetReuseAddr(bool bAllowReuse) override
Definition SocketSubsystemMac.h:98
FSocketMac(SOCKET InSocket, ESocketType InSocketType, const FString &InSocketDescription, const FName &InSocketProtocol, ISocketSubsystem *InSubsystem)
Definition SocketSubsystemMac.h:88
~FSocketMac()
Definition SocketSubsystemMac.h:93
Definition SocketSubsystemMac.h:14
virtual bool HasNetworkDevice() override
Definition SocketSubsystemMac.cpp:67
virtual ~FSocketSubsystemMac()
Definition SocketSubsystemMac.h:48
virtual bool GetLocalAdapterAddresses(TArray< TSharedPtr< FInternetAddr > > &OutAddresses) override
Definition SocketSubsystemMac.cpp:85
static FSocketSubsystemMac * SocketSingleton
Definition SocketSubsystemMac.h:18
static void Destroy()
Definition SocketSubsystemMac.cpp:47
FSocketSubsystemMac()
Definition SocketSubsystemMac.h:43
virtual class FSocketBSD * InternalBSDSocketFactory(SOCKET Socket, ESocketType SocketType, const FString &SocketDescription, const FName &SocketProtocol)
Definition SocketSubsystemMac.cpp:72
virtual void Shutdown() override
Definition SocketSubsystemMac.cpp:62
bool bTriedToInit
Definition SocketSubsystemMac.h:21
Definition SocketSubsystem.h:58
Definition Array.h:670
Definition SharedPointer.h:692
@ false
Definition radaudio_common.h:23