CommonLibSSE (powerof3)
RE::ModelReferenceEffect Class Reference

#include <ModelReferenceEffect.h>

Inheritance diagram for RE::ModelReferenceEffect:
RE::ReferenceEffect RE::SimpleAnimationGraphManagerHolder RE::BSTEventSink< BSAnimationGraphEvent > RE::BSTempEffect RE::IAnimationGraphManagerHolder RE::NiObject RE::NiRefObject

Public Types

enum class  Flags { kNone = 0 , kAttached = 1 << 0 , k3rdPersonVisible = 1 << 1 }
 

Public Member Functions

 ~ModelReferenceEffect () override
 
const NiRTTIGetRTTI () const override
 
bool Update (float a_arg1) override
 
NiAVObjectGet3D () const override
 
TEMP_EFFECT_TYPE GetType () const override
 
void SaveGame (BGSSaveGameBuffer *a_buf) override
 
void LoadGame (BGSLoadGameBuffer *a_buf) override
 
void Init () override
 
void UpdateParentCell (NiAVObject *a_object) override
 
void UpdatePosition () override
 
NiAVObjectGetAttachRoot () override
 
bool GetAttached () override
 
void DetachImpl () override
 
bool SetupAnimEventSinks (const BSTSmartPointer< BShkbAnimationGraph > &a_animGraph) override
 
bool CreateAnimationChannels (BSScrapArray< BSTSmartPointer< BSAnimationGraphChannel >> &animGraphChannels) override
 
void PostChangeAnimationManager (const BSTSmartPointer< BShkbAnimationGraph > &a_arg1, const BSTSmartPointer< BShkbAnimationGraph > &a_arg2) override
 
BSEventNotifyControl ProcessEvent (const BSAnimationGraphEvent *a_event, BSTEventSource< BSAnimationGraphEvent > *a_eventSource) override
 
- Public Member Functions inherited from RE::ReferenceEffect
 ~ReferenceEffect () override
 
const NiRTTIGetRTTI () const override
 
void Detach () override
 
bool Update (float a_arg1) override
 
bool GetManagerHandlesSaveLoad () const override
 
bool GetClearWhenCellIsUnloaded () const override
 
TEMP_EFFECT_TYPE GetType () const override
 
void SaveGame (BGSSaveGameBuffer *a_buf) override
 
void LoadGame (BGSLoadGameBuffer *a_buf) override
 
void FinishLoadGame (BGSLoadGameBuffer *a_buf) override
 
virtual void Suspend ()
 
virtual void Resume ()
 
virtual void ClearTarget ()
 
- Public Member Functions inherited from RE::BSTempEffect
 ~BSTempEffect () override
 
NiNodeAsNode () override
 
NiSwitchNode * AsSwitchNode () override
 
BSFadeNodeAsFadeNode () override
 
BSMultiBoundNodeAsMultiBoundNode () override
 
BSGeometryAsGeometry () override
 
NiTriStrips * AsTriStrips () override
 
BSTriShapeAsTriShape () override
 
BSSegmentedTriShape * AsSegmentedTriShape () override
 
BSSubIndexTriShape * AsSubIndexTriShape () override
 
BSDynamicTriShapeAsDynamicTriShape () override
 
NiGeometryAsNiGeometry () override
 
NiTriBasedGeom * AsNiTriBasedGeom () override
 
NiTriShapeAsNiTriShape () override
 
NiParticlesAsParticlesGeom () override
 
BSLines * AsLinesGeom () override
 
bhkNiCollisionObjectAsBhkNiCollisionObject () override
 
bhkBlendCollisionObject * AsBhkBlendCollisionObject () override
 
bhkAttachmentCollisionObject * AsBhkAttachmentCollisionObject () override
 
bhkRigidBodyAsBhkRigidBody () override
 
bhkLimitedHingeConstraint * AsBhkLimitedHingeConstraint () override
 
virtual void Initialize ()
 
virtual void Attach ()
 
virtual bool IsInterfaceEffect () const
 
virtual void SetInterfaceEffect (bool a_set)
 
virtual bool GetStackable () const
 
virtual bool GetStackableMatch (BSTempEffect *a_effect) const
 
virtual void Push ()
 
virtual void Pop ()
 
template<class T , class = std::enable_if_t< std::negation_v< std::disjunction< std::is_pointer<T>, std::is_reference<T>, std::is_const<T>, std::is_volatile<T>>>>>
T * As () noexcept
 
template<class T , class = std::enable_if_t< std::negation_v< std::disjunction< std::is_pointer<T>, std::is_reference<T>, std::is_const<T>, std::is_volatile<T>>>>>
const T * As () const noexcept
 
- Public Member Functions inherited from RE::NiObject
 ~NiObject () override=default
 
virtual NiObjectCreateClone ([[maybe_unused]] NiCloningProcess &a_cloning)
 
virtual void LoadBinary ([[maybe_unused]] NiStream &a_stream)
 
virtual void LinkObject ([[maybe_unused]] NiStream &a_stream)
 
virtual bool RegisterStreamables (NiStream &a_stream)
 
virtual void SaveBinary ([[maybe_unused]] NiStream &a_stream)
 
virtual bool IsEqual (NiObject *a_object)
 
virtual void ProcessClone (NiCloningProcess &a_cloning)
 
virtual void PostLinkObject ([[maybe_unused]] NiStream &a_stream)
 
virtual bool StreamCanSkip ()
 
virtual const NiRTTIGetStreamableRTTI () const
 
virtual std::uint32_t GetBlockAllocationSize () const
 
virtual NiObjectGroupGetGroup () const
 
virtual void SetGroup ([[maybe_unused]] NiObjectGroup *a_group)
 
virtual NiControllerManagerAsNiControllerManager ()
 
void CreateDeepCopy (NiPointer< NiObject > &a_object)
 
- Public Member Functions inherited from RE::NiRefObject
 NiRefObject ()
 
virtual ~NiRefObject ()
 
virtual void DeleteThis ()
 
void IncRefCount ()
 
void DecRefCount ()
 
constexpr std::uint32_t GetRefCount () const noexcept
 
 TES_HEAP_REDEFINE_NEW ()
 
- Public Member Functions inherited from RE::SimpleAnimationGraphManagerHolder
bool GetAnimationGraphManagerImpl (BSTSmartPointer< BSAnimationGraphManager > &a_out) const override
 
bool SetAnimationGraphManagerImpl (BSTSmartPointer< BSAnimationGraphManager > &a_in) override
 
bool ConstructAnimationGraph (BSTSmartPointer< BShkbAnimationGraph > &a_out) override
 
virtual void Unk_13 (void)
 
- Public Member Functions inherited from RE::IAnimationGraphManagerHolder
virtual ~IAnimationGraphManagerHolder ()
 
virtual bool NotifyAnimationGraph (const BSFixedString &a_eventName)
 
virtual bool PopulateGraphNodesToTarget (BSScrapArray< NiAVObject * > &a_nodes)
 
virtual void Unk_06 (void)
 
virtual void Unk_07 (void)
 
virtual void Unk_09 (void)
 
virtual void PostCreateAnimationGraphManager (BSTSmartPointer< BSAnimationGraphManager > &a_animGraphMgr)
 
virtual void Unk_0C (void)
 
virtual void Unk_0E (void)
 
virtual std::uint32_t GetGraphVariableCacheSize () const
 
virtual bool GetGraphVariableImpl1 (const BSFixedString &a_variableName, float &a_out) const
 
virtual bool GetGraphVariableImpl2 (const BSFixedString &a_variableName, std::int32_t &a_out) const
 
virtual bool GetGraphVariableImpl3 (const BSFixedString &a_variableName, bool &a_out) const
 
bool GetAnimationGraphManager (BSTSmartPointer< BSAnimationGraphManager > &a_out) const
 
bool GetGraphVariableFloat (const BSFixedString &a_variableName, float &a_out) const
 
bool GetGraphVariableInt (const BSFixedString &a_variableName, std::int32_t &a_out) const
 
bool GetGraphVariableBool (const BSFixedString &a_variableName, bool &a_out) const
 
bool GetGraphVariableNiPoint3 (const BSFixedString &a_variableName, NiPoint3 &a_out) const
 
bool SetAnimationGraphManager (BSTSmartPointer< BSAnimationGraphManager > &a_in)
 
bool SetGraphVariableBool (const BSFixedString &a_variableName, bool a_in)
 
bool SetGraphVariableInt (const BSFixedString &a_variableName, std::int32_t a_in)
 
bool SetGraphVariableFloat (const BSFixedString &a_variableName, float a_in)
 
bool SetGraphVariableNiPoint3 (const BSFixedString &a_variableName, NiPoint3 &a_in) const
 
bool UpdateAnimationGraphManager (const BSAnimationUpdateData &a_updateData)
 
- Public Member Functions inherited from RE::BSTEventSink< BSAnimationGraphEvent >
virtual ~BSTEventSink ()=default
 

Public Attributes

RefAttachTechniqueInput hitEffectArtData
 
BGSLoadGameSubBuffer loadGameSubBuffer
 
BGSArtObjectartObject
 
BSTSmartPointer< BGSArtObjectCloneTask > cloneTask
 
NiPointer< NiAVObjectartObject3D
 
REX::EnumSet< Flags, std::uint32_t > flags
 
std::uint32_t padD4
 
- Public Attributes inherited from RE::ReferenceEffect
ReferenceEffectControllercontroller
 
ObjectRefHandle target
 
ObjectRefHandle aimAtTarget
 
bool finished
 
bool ownController
 
std::uint16_t pad42
 
std::uint32_t pad44
 
- Public Attributes inherited from RE::BSTempEffect
float lifetime
 
std::uint32_t pad14
 
TESObjectCELLcell
 
float age
 
bool initialized
 
std::uint8_t pad25
 
std::uint16_t pad26
 
std::uint32_t effectID
 
std::uint32_t pad2C
 
- Public Attributes inherited from RE::NiRefObject
volatile std::uint32_t _refCount { 0 }
 
std::uint32_t _pad0C { 0 }
 
- Public Attributes inherited from RE::SimpleAnimationGraphManagerHolder
BSTSmartPointer< BSAnimationGraphManageranimationGraphManager
 
NiPointer< SimpleAnimationGraphManagerLoadingTask > loadingTask
 

Static Public Attributes

static constexpr auto RTTI = RTTI_ModelReferenceEffect
 
static constexpr auto Ni_RTTI = NiRTTI_ModelReferenceEffect
 
static constexpr auto VTABLE = VTABLE_ModelReferenceEffect
 
static constexpr auto TYPE = TEMP_EFFECT_TYPE::kRefModel
 
- Static Public Attributes inherited from RE::ReferenceEffect
static constexpr auto RTTI = RTTI_ReferenceEffect
 
static constexpr auto Ni_RTTI = NiRTTI_ReferenceEffect
 
static constexpr auto VTABLE = VTABLE_ReferenceEffect
 
static constexpr auto TYPE = TEMP_EFFECT_TYPE::kRefDefault
 
- Static Public Attributes inherited from RE::BSTempEffect
static constexpr auto RTTI = RTTI_BSTempEffect
 
static constexpr auto Ni_RTTI = NiRTTI_BSTempEffect
 
static constexpr auto VTABLE = VTABLE_BSTempEffect
 
static constexpr auto TYPE = TEMP_EFFECT_TYPE::kDefault
 
- Static Public Attributes inherited from RE::NiObject
static constexpr auto RTTI = RTTI_NiObject
 
static constexpr auto Ni_RTTI = NiRTTI_NiObject
 
static constexpr auto VTABLE = VTABLE_NiObject
 
- Static Public Attributes inherited from RE::NiRefObject
static constexpr auto RTTI = RTTI_NiRefObject
 
static constexpr auto VTABLE = VTABLE_NiRefObject
 
- Static Public Attributes inherited from RE::SimpleAnimationGraphManagerHolder
static constexpr auto RTTI = RTTI_SimpleAnimationGraphManagerHolder
 
static constexpr auto VTABLE = VTABLE_SimpleAnimationGraphManagerHolder
 
- Static Public Attributes inherited from RE::IAnimationGraphManagerHolder
static constexpr auto RTTI = RTTI_IAnimationGraphManagerHolder
 
static constexpr auto VTABLE = VTABLE_IAnimationGraphManagerHolder
 

Additional Inherited Members

- Static Public Member Functions inherited from RE::NiRefObject
static volatile std::uint32_t * GetTotalObjectCount ()
 

Member Enumeration Documentation

◆ Flags

Enumerator
kNone 
kAttached 
k3rdPersonVisible 

Constructor & Destructor Documentation

◆ ~ModelReferenceEffect()

RE::ModelReferenceEffect::~ModelReferenceEffect ( )
override

Member Function Documentation

◆ CreateAnimationChannels()

bool RE::ModelReferenceEffect::CreateAnimationChannels ( BSScrapArray< BSTSmartPointer< BSAnimationGraphChannel >> &  animGraphChannels)
overridevirtual

Reimplemented from RE::IAnimationGraphManagerHolder.

◆ DetachImpl()

void RE::ModelReferenceEffect::DetachImpl ( )
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ Get3D()

NiAVObject* RE::ModelReferenceEffect::Get3D ( ) const
overridevirtual

Reimplemented from RE::BSTempEffect.

◆ GetAttached()

bool RE::ModelReferenceEffect::GetAttached ( )
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ GetAttachRoot()

NiAVObject* RE::ModelReferenceEffect::GetAttachRoot ( )
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ GetRTTI()

const NiRTTI* RE::ModelReferenceEffect::GetRTTI ( ) const
overridevirtual

Reimplemented from RE::BSTempEffect.

◆ GetType()

TEMP_EFFECT_TYPE RE::ModelReferenceEffect::GetType ( ) const
overridevirtual

Reimplemented from RE::BSTempEffect.

◆ Init()

void RE::ModelReferenceEffect::Init ( )
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ LoadGame()

void RE::ModelReferenceEffect::LoadGame ( BGSLoadGameBuffer a_buf)
overridevirtual

Reimplemented from RE::BSTempEffect.

◆ PostChangeAnimationManager()

void RE::ModelReferenceEffect::PostChangeAnimationManager ( const BSTSmartPointer< BShkbAnimationGraph > &  a_arg1,
const BSTSmartPointer< BShkbAnimationGraph > &  a_arg2 
)
overridevirtual

Reimplemented from RE::IAnimationGraphManagerHolder.

◆ ProcessEvent()

BSEventNotifyControl RE::ModelReferenceEffect::ProcessEvent ( const BSAnimationGraphEvent a_event,
BSTEventSource< BSAnimationGraphEvent > *  a_eventSource 
)
overridevirtual

◆ SaveGame()

void RE::ModelReferenceEffect::SaveGame ( BGSSaveGameBuffer a_buf)
overridevirtual

Reimplemented from RE::BSTempEffect.

◆ SetupAnimEventSinks()

bool RE::ModelReferenceEffect::SetupAnimEventSinks ( const BSTSmartPointer< BShkbAnimationGraph > &  a_animGraph)
overridevirtual

Reimplemented from RE::IAnimationGraphManagerHolder.

◆ Update()

bool RE::ModelReferenceEffect::Update ( float  a_arg1)
overridevirtual

Reimplemented from RE::BSTempEffect.

◆ UpdateParentCell()

void RE::ModelReferenceEffect::UpdateParentCell ( NiAVObject a_object)
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ UpdatePosition()

void RE::ModelReferenceEffect::UpdatePosition ( )
overridevirtual

Reimplemented from RE::ReferenceEffect.

Member Data Documentation

◆ artObject

BGSArtObject* RE::ModelReferenceEffect::artObject

◆ artObject3D

NiPointer<NiAVObject> RE::ModelReferenceEffect::artObject3D

◆ cloneTask

BSTSmartPointer<BGSArtObjectCloneTask> RE::ModelReferenceEffect::cloneTask

◆ flags

REX::EnumSet<Flags, std::uint32_t> RE::ModelReferenceEffect::flags

◆ hitEffectArtData

RefAttachTechniqueInput RE::ModelReferenceEffect::hitEffectArtData

◆ loadGameSubBuffer

BGSLoadGameSubBuffer RE::ModelReferenceEffect::loadGameSubBuffer

◆ Ni_RTTI

constexpr auto RE::ModelReferenceEffect::Ni_RTTI = NiRTTI_ModelReferenceEffect
inlinestaticconstexpr

◆ padD4

std::uint32_t RE::ModelReferenceEffect::padD4

◆ RTTI

constexpr auto RE::ModelReferenceEffect::RTTI = RTTI_ModelReferenceEffect
inlinestaticconstexpr

◆ TYPE

constexpr auto RE::ModelReferenceEffect::TYPE = TEMP_EFFECT_TYPE::kRefModel
inlinestaticconstexpr

◆ VTABLE

constexpr auto RE::ModelReferenceEffect::VTABLE = VTABLE_ModelReferenceEffect
inlinestaticconstexpr

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