CommonLibSSE (powerof3)
SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase Class Reference

#include <RegistrationMapUnique.h>

Inheritance diagram for SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase:
SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUnique< std::enable_if_t< std::conjunction_v< RE::BSScript::is_return_convertible< Args >... > >, Args... > SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUnique< void >

Public Member Functions

 RegistrationMapUniqueBase ()=delete
 
 RegistrationMapUniqueBase (const std::string_view &a_eventName)
 
 RegistrationMapUniqueBase (const RegistrationMapUniqueBase &a_rhs)
 
 RegistrationMapUniqueBase (RegistrationMapUniqueBase &&a_rhs) noexcept
 
 ~RegistrationMapUniqueBase ()
 
RegistrationMapUniqueBaseoperator= (const RegistrationMapUniqueBase &a_rhs)
 
RegistrationMapUniqueBaseoperator= (RegistrationMapUniqueBase &&a_rhs) noexcept
 
bool Register (RE::TESForm *a_form, const Filter &a_filter, bool a_matchFilter)
 
bool Register (RE::ActiveEffect *a_activeEffect, const Filter &a_filter, bool a_matchFilter)
 
bool Register (RE::BGSRefAlias *a_alias, const Filter &a_filter, bool a_matchFilter)
 
bool Unregister (RE::TESForm *a_form, const Filter &a_filter, bool a_matchFilter)
 
bool Unregister (RE::ActiveEffect *a_activeEffect, const Filter &a_filter, bool a_matchFilter)
 
bool Unregister (RE::BGSRefAlias *a_alias, const Filter &a_filter, bool a_matchFilter)
 
void UnregisterAll (const RE::TESForm *a_form)
 
void UnregisterAll (RE::ActiveEffect *a_activeEffect)
 
void UnregisterAll (RE::BGSRefAlias *a_alias)
 
void UnregisterAll (RE::VMHandle a_handle)
 
void UnregisterAll (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, EventFilter a_filter, RE::VMTypeID a_typeID)
 
bool Unregister (const void *a_object, RE::FormID a_formID, EventFilter a_filter, RE::VMTypeID a_typeID)
 
void UnregisterAll (const void *a_object, RE::FormID a_formID, RE::VMTypeID a_typeID)
 

Protected Attributes

std::map< RE::FormID, EventFilterHandleMap_regs
 
std::string _eventName
 
Lock _lock
 

Member Typedef Documentation

◆ Lock

template<class Filter >
using SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Lock = std::recursive_mutex
protected

◆ Locker

template<class Filter >
using SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Locker = std::lock_guard<Lock>
protected

Constructor & Destructor Documentation

◆ RegistrationMapUniqueBase() [1/4]

template<class Filter >
SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::RegistrationMapUniqueBase ( )
delete

◆ RegistrationMapUniqueBase() [2/4]

template<class Filter >
SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::RegistrationMapUniqueBase ( const std::string_view &  a_eventName)

◆ RegistrationMapUniqueBase() [3/4]

template<class Filter >
SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::RegistrationMapUniqueBase ( const RegistrationMapUniqueBase a_rhs)

◆ RegistrationMapUniqueBase() [4/4]

template<class Filter >
SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::RegistrationMapUniqueBase ( RegistrationMapUniqueBase &&  a_rhs)
noexcept

◆ ~RegistrationMapUniqueBase()

template<class Filter >
SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::~RegistrationMapUniqueBase

Member Function Documentation

◆ Clear()

template<class Filter >
void SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Clear

◆ Load()

template<class Filter >
bool SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Load ( SerializationInterface a_intfc)

◆ operator=() [1/2]

template<class Filter >
EventFilterUnique< Filter >::RegistrationMapUniqueBase & SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::operator= ( const RegistrationMapUniqueBase a_rhs)

◆ operator=() [2/2]

template<class Filter >
EventFilterUnique< Filter >::RegistrationMapUniqueBase & SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::operator= ( RegistrationMapUniqueBase &&  a_rhs)
noexcept

◆ Register() [1/4]

template<class Filter >
bool SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Register ( const void *  a_object,
RE::FormID  a_formID,
EventFilter  a_filter,
RE::VMTypeID  a_typeID 
)
protected

◆ Register() [2/4]

template<class Filter >
bool SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Register ( RE::ActiveEffect a_activeEffect,
const Filter &  a_filter,
bool  a_matchFilter 
)

◆ Register() [3/4]

template<class Filter >
bool SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Register ( RE::BGSRefAlias a_alias,
const Filter &  a_filter,
bool  a_matchFilter 
)

◆ Register() [4/4]

template<class Filter >
bool SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Register ( RE::TESForm a_form,
const Filter &  a_filter,
bool  a_matchFilter 
)

◆ Revert()

template<class Filter >
void SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Revert ( SerializationInterface )

◆ Save() [1/2]

template<class Filter >
bool SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Save ( SerializationInterface a_intfc)

◆ Save() [2/2]

template<class Filter >
bool SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Save ( SerializationInterface a_intfc,
std::uint32_t  a_type,
std::uint32_t  a_version 
)

◆ Unregister() [1/4]

template<class Filter >
bool SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Unregister ( const void *  a_object,
RE::FormID  a_formID,
EventFilter  a_filter,
RE::VMTypeID  a_typeID 
)
protected

◆ Unregister() [2/4]

template<class Filter >
bool SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Unregister ( RE::ActiveEffect a_activeEffect,
const Filter &  a_filter,
bool  a_matchFilter 
)

◆ Unregister() [3/4]

template<class Filter >
bool SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Unregister ( RE::BGSRefAlias a_alias,
const Filter &  a_filter,
bool  a_matchFilter 
)

◆ Unregister() [4/4]

template<class Filter >
bool SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::Unregister ( RE::TESForm a_form,
const Filter &  a_filter,
bool  a_matchFilter 
)

◆ UnregisterAll() [1/6]

template<class Filter >
void SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::UnregisterAll ( const RE::TESForm a_form)

◆ UnregisterAll() [2/6]

template<class Filter >
void SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::UnregisterAll ( const void *  a_object,
RE::FormID  a_formID,
RE::VMTypeID  a_typeID 
)
protected

◆ UnregisterAll() [3/6]

template<class Filter >
void SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::UnregisterAll ( RE::ActiveEffect a_activeEffect)

◆ UnregisterAll() [4/6]

template<class Filter >
void SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::UnregisterAll ( RE::BGSRefAlias a_alias)

◆ UnregisterAll() [5/6]

template<class Filter >
void SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::UnregisterAll ( RE::FormID  a_uniqueID)

◆ UnregisterAll() [6/6]

template<class Filter >
void SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::UnregisterAll ( RE::VMHandle  a_handle)

Member Data Documentation

◆ _eventName

template<class Filter >
std::string SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::_eventName
protected

◆ _lock

template<class Filter >
Lock SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::_lock
mutableprotected

◆ _regs

template<class Filter >
std::map<RE::FormID, EventFilterHandleMap> SKSE::Impl::EventFilterUnique< Filter >::RegistrationMapUniqueBase::_regs
protected

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