CommonLibVR
SKSE::Impl::RegistrationSetUniqueBase Class Reference

#include <RegistrationSetUnique.h>

Inheritance diagram for SKSE::Impl::RegistrationSetUniqueBase:
SKSE::Impl::RegistrationSetUnique< std::enable_if_t< std::conjunction_v< RE::BSScript::is_return_convertible< Args >... > >, Args... > SKSE::Impl::RegistrationSetUnique< void >

Public Member Functions

 RegistrationSetUniqueBase ()=delete
 
 RegistrationSetUniqueBase (const std::string_view &a_eventName)
 
 RegistrationSetUniqueBase (const RegistrationSetUniqueBase &a_rhs)
 
 RegistrationSetUniqueBase (RegistrationSetUniqueBase &&a_rhs)
 
 ~RegistrationSetUniqueBase ()
 
RegistrationSetUniqueBaseoperator= (const RegistrationSetUniqueBase &a_rhs)
 
RegistrationSetUniqueBaseoperator= (RegistrationSetUniqueBase &&a_rhs)
 
bool Register (RE::TESForm *a_form)
 
bool Register (RE::BGSRefAlias *a_alias)
 
bool Register (RE::ActiveEffect *a_activeEffect)
 
bool Unregister (RE::TESForm *a_form)
 
bool Unregister (RE::BGSRefAlias *a_alias)
 
bool Unregister (RE::ActiveEffect *a_activeEffect)
 
bool Unregister (RE::VMHandle a_handle)
 
bool Unregister (RE::FormID a_uniqueID)
 
void Clear ()
 
bool Save (SerializationInterface *a_intfc, std::uint32_t a_type, std::uint32_t a_version)
 
bool Save (SerializationInterface *a_intfc)
 
bool Load (SerializationInterface *a_intfc)
 
void Revert (SerializationInterface *)
 

Protected Types

using Lock = std::recursive_mutex
 
using Locker = std::lock_guard< Lock >
 

Protected Member Functions

bool Register (const void *a_object, RE::FormID a_formID, RE::VMTypeID a_typeID)
 
bool Unregister (const void *a_object, RE::FormID a_formID, RE::VMTypeID a_typeID)
 

Protected Attributes

std::map< RE::FormID, std::set< RE::VMHandle > > _regs
 
std::string _eventName
 
Lock _lock
 

Member Typedef Documentation

◆ Lock

using SKSE::Impl::RegistrationSetUniqueBase::Lock = std::recursive_mutex
protected

◆ Locker

using SKSE::Impl::RegistrationSetUniqueBase::Locker = std::lock_guard<Lock>
protected

Constructor & Destructor Documentation

◆ RegistrationSetUniqueBase() [1/4]

SKSE::Impl::RegistrationSetUniqueBase::RegistrationSetUniqueBase ( )
delete

◆ RegistrationSetUniqueBase() [2/4]

SKSE::Impl::RegistrationSetUniqueBase::RegistrationSetUniqueBase ( const std::string_view &  a_eventName)

◆ RegistrationSetUniqueBase() [3/4]

SKSE::Impl::RegistrationSetUniqueBase::RegistrationSetUniqueBase ( const RegistrationSetUniqueBase a_rhs)

◆ RegistrationSetUniqueBase() [4/4]

SKSE::Impl::RegistrationSetUniqueBase::RegistrationSetUniqueBase ( RegistrationSetUniqueBase &&  a_rhs)

◆ ~RegistrationSetUniqueBase()

SKSE::Impl::RegistrationSetUniqueBase::~RegistrationSetUniqueBase ( )

Member Function Documentation

◆ Clear()

void SKSE::Impl::RegistrationSetUniqueBase::Clear ( )

◆ Load()

bool SKSE::Impl::RegistrationSetUniqueBase::Load ( SerializationInterface a_intfc)

◆ operator=() [1/2]

RegistrationSetUniqueBase& SKSE::Impl::RegistrationSetUniqueBase::operator= ( const RegistrationSetUniqueBase a_rhs)

◆ operator=() [2/2]

RegistrationSetUniqueBase& SKSE::Impl::RegistrationSetUniqueBase::operator= ( RegistrationSetUniqueBase &&  a_rhs)

◆ Register() [1/4]

bool SKSE::Impl::RegistrationSetUniqueBase::Register ( const void *  a_object,
RE::FormID  a_formID,
RE::VMTypeID  a_typeID 
)
protected

◆ Register() [2/4]

bool SKSE::Impl::RegistrationSetUniqueBase::Register ( RE::ActiveEffect a_activeEffect)

◆ Register() [3/4]

bool SKSE::Impl::RegistrationSetUniqueBase::Register ( RE::BGSRefAlias a_alias)

◆ Register() [4/4]

bool SKSE::Impl::RegistrationSetUniqueBase::Register ( RE::TESForm a_form)

◆ Revert()

void SKSE::Impl::RegistrationSetUniqueBase::Revert ( SerializationInterface )

◆ Save() [1/2]

bool SKSE::Impl::RegistrationSetUniqueBase::Save ( SerializationInterface a_intfc)

◆ Save() [2/2]

bool SKSE::Impl::RegistrationSetUniqueBase::Save ( SerializationInterface a_intfc,
std::uint32_t  a_type,
std::uint32_t  a_version 
)

◆ Unregister() [1/6]

bool SKSE::Impl::RegistrationSetUniqueBase::Unregister ( const void *  a_object,
RE::FormID  a_formID,
RE::VMTypeID  a_typeID 
)
protected

◆ Unregister() [2/6]

bool SKSE::Impl::RegistrationSetUniqueBase::Unregister ( RE::ActiveEffect a_activeEffect)

◆ Unregister() [3/6]

bool SKSE::Impl::RegistrationSetUniqueBase::Unregister ( RE::BGSRefAlias a_alias)

◆ Unregister() [4/6]

bool SKSE::Impl::RegistrationSetUniqueBase::Unregister ( RE::FormID  a_uniqueID)

◆ Unregister() [5/6]

bool SKSE::Impl::RegistrationSetUniqueBase::Unregister ( RE::TESForm a_form)

◆ Unregister() [6/6]

bool SKSE::Impl::RegistrationSetUniqueBase::Unregister ( RE::VMHandle  a_handle)

Member Data Documentation

◆ _eventName

std::string SKSE::Impl::RegistrationSetUniqueBase::_eventName
protected

◆ _lock

Lock SKSE::Impl::RegistrationSetUniqueBase::_lock
mutableprotected

◆ _regs

std::map<RE::FormID, std::set<RE::VMHandle> > SKSE::Impl::RegistrationSetUniqueBase::_regs
protected

The documentation for this class was generated from the following file: