CommonLibSSE (powerof3)
SKSE::Impl::EventFilter< Filter >::RegistrationMapBase Class Reference

#include <RegistrationMap.h>

Inheritance diagram for SKSE::Impl::EventFilter< Filter >::RegistrationMapBase:
SKSE::Impl::EventFilter< Filter >::RegistrationMap< std::enable_if_t< std::conjunction_v< RE::BSScript::is_return_convertible< Args >... > >, Args... > SKSE::Impl::EventFilter< Filter >::RegistrationMap< void >

Public Member Functions

 RegistrationMapBase ()=delete
 
 RegistrationMapBase (const std::string_view &a_eventName)
 
 RegistrationMapBase (const RegistrationMapBase &a_rhs)
 
 RegistrationMapBase (RegistrationMapBase &&a_rhs)
 
 ~RegistrationMapBase ()
 
RegistrationMapBaseoperator= (const RegistrationMapBase &a_rhs)
 
RegistrationMapBaseoperator= (RegistrationMapBase &&a_rhs)
 
bool Register (const RE::TESForm *a_form, Filter a_filter)
 
bool Register (const RE::BGSBaseAlias *a_alias, Filter a_filter)
 
bool Register (const RE::ActiveEffect *a_activeEffect, Filter a_filter)
 
bool Unregister (const RE::TESForm *a_form, Filter a_filter)
 
bool Unregister (const RE::BGSBaseAlias *a_alias, Filter a_filter)
 
bool Unregister (const RE::ActiveEffect *a_activeEffect, Filter a_filter)
 
void UnregisterAll (const RE::TESForm *a_form)
 
void UnregisterAll (const RE::BGSBaseAlias *a_alias)
 
void UnregisterAll (const RE::ActiveEffect *a_activeEffect)
 
void UnregisterAll (RE::VMHandle a_handle)
 
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, Filter a_filter, RE::VMTypeID a_typeID)
 
bool Unregister (const void *a_object, Filter a_filter, RE::VMTypeID a_typeID)
 
void UnregisterAll (const void *a_object, RE::VMTypeID a_typeID)
 
bool SaveFilter (SerializationInterface *a_intfc, Filter a_filter)
 
bool LoadFilter (SerializationInterface *a_intfc, Filter &a_filter)
 

Protected Attributes

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

Member Typedef Documentation

◆ Lock

template<class Filter >
using SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::Lock = std::recursive_mutex
protected

◆ Locker

template<class Filter >
using SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::Locker = std::lock_guard<Lock>
protected

Constructor & Destructor Documentation

◆ RegistrationMapBase() [1/4]

template<class Filter >
SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::RegistrationMapBase ( )
delete

◆ RegistrationMapBase() [2/4]

template<class Filter >
SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::RegistrationMapBase ( const std::string_view &  a_eventName)

◆ RegistrationMapBase() [3/4]

template<class Filter >
SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::RegistrationMapBase ( const RegistrationMapBase a_rhs)

◆ RegistrationMapBase() [4/4]

template<class Filter >
SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::RegistrationMapBase ( RegistrationMapBase &&  a_rhs)

◆ ~RegistrationMapBase()

template<class Filter >
SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::~RegistrationMapBase

Member Function Documentation

◆ Clear()

template<class Filter >
void SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::Clear

◆ Load()

template<class Filter >
bool SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::Load ( SerializationInterface a_intfc)

◆ LoadFilter()

template<class Filter >
bool SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::LoadFilter ( SerializationInterface a_intfc,
Filter &  a_filter 
)
protected

◆ operator=() [1/2]

template<class Filter >
EventFilter< Filter >::RegistrationMapBase & SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::operator= ( const RegistrationMapBase a_rhs)

◆ operator=() [2/2]

template<class Filter >
EventFilter< Filter >::RegistrationMapBase & SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::operator= ( RegistrationMapBase &&  a_rhs)

◆ Register() [1/4]

template<class Filter >
bool SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::Register ( const RE::ActiveEffect a_activeEffect,
Filter  a_filter 
)

◆ Register() [2/4]

template<class Filter >
bool SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::Register ( const RE::BGSBaseAlias a_alias,
Filter  a_filter 
)

◆ Register() [3/4]

template<class Filter >
bool SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::Register ( const RE::TESForm a_form,
Filter  a_filter 
)

◆ Register() [4/4]

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

◆ Revert()

template<class Filter >
void SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::Revert ( SerializationInterface )

◆ Save() [1/2]

template<class Filter >
bool SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::Save ( SerializationInterface a_intfc)

◆ Save() [2/2]

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

◆ SaveFilter()

template<class Filter >
bool SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::SaveFilter ( SerializationInterface a_intfc,
Filter  a_filter 
)
protected

◆ Unregister() [1/4]

template<class Filter >
bool SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::Unregister ( const RE::ActiveEffect a_activeEffect,
Filter  a_filter 
)

◆ Unregister() [2/4]

template<class Filter >
bool SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::Unregister ( const RE::BGSBaseAlias a_alias,
Filter  a_filter 
)

◆ Unregister() [3/4]

template<class Filter >
bool SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::Unregister ( const RE::TESForm a_form,
Filter  a_filter 
)

◆ Unregister() [4/4]

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

◆ UnregisterAll() [1/5]

template<class Filter >
void SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::UnregisterAll ( const RE::ActiveEffect a_activeEffect)

◆ UnregisterAll() [2/5]

template<class Filter >
void SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::UnregisterAll ( const RE::BGSBaseAlias a_alias)

◆ UnregisterAll() [3/5]

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

◆ UnregisterAll() [4/5]

template<class Filter >
void SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::UnregisterAll ( const void *  a_object,
RE::VMTypeID  a_typeID 
)
protected

◆ UnregisterAll() [5/5]

template<class Filter >
void SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::UnregisterAll ( RE::VMHandle  a_handle)

Member Data Documentation

◆ _eventName

template<class Filter >
std::string SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::_eventName
protected

◆ _lock

template<class Filter >
Lock SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::_lock
mutableprotected

◆ _regs

template<class Filter >
std::map<Filter, std::set<RE::VMHandle> > SKSE::Impl::EventFilter< Filter >::RegistrationMapBase::_regs
protected

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