CommonLibSSE (Parapets fork)
RE::NiAVObject Class Reference

#include <NiAVObject.h>

Inheritance diagram for RE::NiAVObject:
RE::NiObjectNET RE::NiObject RE::NiRefObject RE::BSGeometry RE::NiCamera RE::NiNode RE::BSTriShape RE::BSFaceGenNiNode RE::BSFadeNode RE::BSNiNode RE::ShadowSceneNode RE::BSMultiIndexTriShape RE::BSMultiBoundNode

Public Types

enum class  Flag {
  kNone = 0 , kHidden = 1 << 0 , kSelectiveUpdate = 1 << 1 , kSelectiveUpdateTransforms = 1 << 2 ,
  kSelectiveUpdateController = 1 << 3 , kSelectiveUpdateRigid = 1 << 4 , kDisplayObject = 1 << 5 , kDisableSorting = 1 << 6 ,
  kSelectiveUpdateTransformsOverride = 1 << 7 , kSaveExternalGeometryData = 1 << 9 , kNoDecals = 1 << 10 , kAlwaysDraw = 1 << 11 ,
  kMeshLOD = 1 << 12 , kFixedBound = 1 << 13 , kTopFadeNode = 1 << 14 , kIgnoreFade = 1 << 15 ,
  kNoAnimSyncX = 1 << 16 , kNoAnimSyncY = 1 << 17 , kNoAnimSyncZ = 1 << 18 , kNoAnimSyncS = 1 << 19 ,
  kNoDismember = 1 << 20 , kNoDismemberValidity = 1 << 21 , kRenderUse = 1 << 22 , kMaterialsApplied = 1 << 23 ,
  kHighDetail = 1 << 24 , kForceUpdate = 1 << 25 , kPreProcessedNode = 1 << 26
}
 

Public Member Functions

 ~NiAVObject () override
 
const NiRTTIGetRTTI () const override
 
void LoadBinary (NiStream &a_stream) override
 
void LinkObject (NiStream &a_stream) override
 
bool RegisterStreamables (NiStream &a_stream) override
 
void SaveBinary (NiStream &a_stream) override
 
bool IsEqual (NiObject *a_object) override
 
void ProcessClone (NiCloningProcess &a_cloning) override
 
virtual void UpdateControllers (NiUpdateData &a_data)
 
virtual void PerformOp (PerformOpFunc &a_func)
 
virtual void AttachProperty (NiAlphaProperty *a_property)
 
virtual void SetMaterialNeedsUpdate (bool a_needsUpdate)
 
virtual void SetDefaultMaterialNeedsUpdateFlag (bool a_flag)
 
virtual NiAVObjectGetObjectByName (const BSFixedString &a_name)
 
virtual void SetSelectiveUpdateFlags (bool &a_selectiveUpdate, bool a_selectiveUpdateTransforms, bool &a_rigid)
 
virtual void UpdateDownwardPass (NiUpdateData &a_data, std::uint32_t a_arg2)
 
virtual void UpdateSelectedDownwardPass (NiUpdateData &a_data, std::uint32_t a_arg2)
 
virtual void UpdateRigidDownwardPass (NiUpdateData &a_data, std::uint32_t a_arg2)
 
virtual void UpdateWorldBound ()
 
virtual void UpdateWorldData (NiUpdateData *a_data)
 
virtual void UpdateTransformAndBounds (NiUpdateData &a_data)
 
virtual void PreAttachUpdate (NiNode *a_parent, NiUpdateData &a_data)
 
virtual void PostAttachUpdate ()
 
virtual void OnVisible (NiCullingProcess &a_process)
 
bool GetAppCulled () const
 
bool SetMotionType (std::uint32_t a_motionType, bool a_arg2=true, bool a_arg3=false, bool a_allowActivate=true)
 
void TintScenegraph (const NiColorA &a_color)
 
void Update (NiUpdateData &a_data)
 
void UpdateBodyTint (const NiColor &a_color)
 
void UpdateHairColor (const NiColor &a_color)
 
- Public Member Functions inherited from RE::NiObjectNET
 ~NiObjectNET () override
 
const NiRTTIGetRTTI () const override
 
void LoadBinary (NiStream &a_stream) override
 
void LinkObject (NiStream &a_stream) override
 
bool RegisterStreamables (NiStream &a_stream) override
 
void SaveBinary (NiStream &a_stream) override
 
bool IsEqual (NiObject *a_object) override
 
void ProcessClone (NiCloningProcess &a_cloning) override
 
void PostLinkObject (NiStream &a_stream) override
 
bool AddExtraData (const BSFixedString &a_key, NiExtraData *a_extra)
 
bool AddExtraData (NiExtraData *a_extra)
 
void DeleteExtraData (std::uint16_t a_extraDataIndex)
 
NiTimeControllerGetControllers () const
 
NiTimeControllerGetController (const NiRTTI *a_rtti) const
 
NiExtraDataGetExtraData (const BSFixedString &a_key) const
 
NiExtraDataGetExtraDataAt (std::uint16_t a_extraDataIndex) const
 
std::uint16_t GetExtraDataSize () const
 
bool InsertExtraData (NiExtraData *a_extra)
 
void RemoveAllExtraData ()
 
bool RemoveExtraData (const BSFixedString &a_key)
 
bool RemoveExtraDataAt (std::uint16_t a_extraDataIndex)
 
bool SetExtraDataSize (std::uint16_t a_size)
 
- Public Member Functions inherited from RE::NiObject
 ~NiObject () override=default
 
virtual NiNodeAsNode ()
 
virtual NiSwitchNode * AsSwitchNode ()
 
virtual BSFadeNodeAsFadeNode ()
 
virtual BSMultiBoundNodeAsMultiBoundNode ()
 
virtual BSGeometryAsGeometry ()
 
virtual NiTriStrips * AsTriStrips ()
 
virtual BSTriShapeAsTriShape ()
 
virtual BSSegmentedTriShape * AsSegmentedTriShape ()
 
virtual BSSubIndexTriShape * AsSubIndexTriShape ()
 
virtual BSDynamicTriShape * AsDynamicTriShape ()
 
virtual NiGeometry * AsNiGeometry ()
 
virtual NiTriBasedGeom * AsNiTriBasedGeom ()
 
virtual NiTriShape * AsNiTriShape ()
 
virtual NiParticles * AsParticlesGeom ()
 
virtual BSLines * AsLinesGeom ()
 
virtual bhkNiCollisionObjectAsBhkNiCollisionObject ()
 
virtual bhkBlendCollisionObject * AsBhkBlendCollisionObject ()
 
virtual bhkAttachmentCollisionObject * AsBhkAttachmentCollisionObject ()
 
virtual bhkRigidBodyAsBhkRigidBody ()
 
virtual bhkLimitedHingeConstraint * AsBhkLimitedHingeConstraint ()
 
virtual NiObjectCreateClone ([[maybe_unused]] NiCloningProcess &a_cloning)
 
virtual void LoadBinary ([[maybe_unused]] NiStream &a_stream)
 
virtual void LinkObject ([[maybe_unused]] NiStream &a_stream)
 
virtual void SaveBinary ([[maybe_unused]] NiStream &a_stream)
 
virtual void PostLinkObject ([[maybe_unused]] NiStream &a_stream)
 
virtual bool StreamCanSkip ()
 
virtual const NiRTTIGetStreamableRTTI () const
 
virtual std::uint32_t GetBlockAllocationSize () const
 
virtual NiObjectGroup * GetGroup () 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 Attributes

NiNodeparent
 
std::uint32_t parentIndex
 
std::uint32_t unk03C
 
NiPointer< NiCollisionObjectcollisionObject
 
NiTransform local
 
NiTransform world
 
NiTransform previousWorld
 
NiBound worldBound
 
stl::enumeration< Flag, std::uint32_t > flags
 
TESObjectREFRuserData
 
float fadeAmount
 
std::uint32_t lastUpdatedFrameCounter
 
std::uint32_t unk108
 
- Public Attributes inherited from RE::NiObjectNET
BSFixedString name
 
NiPointer< NiTimeControllercontrollers
 
NiExtraData ** extra
 
std::uint16_t extraDataSize
 
std::uint16_t maxSize
 
std::uint32_t pad2C
 
- Public Attributes inherited from RE::NiRefObject
volatile std::uint32_t _refCount { 0 }
 
std::uint32_t _pad0C { 0 }
 

Static Public Attributes

static constexpr auto RTTI = RTTI_NiAVObject
 
static constexpr auto Ni_RTTI = NiRTTI_NiAVObject
 
- Static Public Attributes inherited from RE::NiObjectNET
static constexpr auto RTTI = RTTI_NiObjectNET
 
static constexpr auto Ni_RTTI = NiRTTI_NiObjectNET
 
- Static Public Attributes inherited from RE::NiObject
static constexpr auto RTTI = RTTI_NiObject
 
static constexpr auto Ni_RTTI = NiRTTI_NiObject
 
- Static Public Attributes inherited from RE::NiRefObject
static constexpr auto RTTI = RTTI_NiRefObject
 

Additional Inherited Members

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

Member Enumeration Documentation

◆ Flag

enum RE::NiAVObject::Flag
strong
Enumerator
kNone 
kHidden 
kSelectiveUpdate 
kSelectiveUpdateTransforms 
kSelectiveUpdateController 
kSelectiveUpdateRigid 
kDisplayObject 
kDisableSorting 
kSelectiveUpdateTransformsOverride 
kSaveExternalGeometryData 
kNoDecals 
kAlwaysDraw 
kMeshLOD 
kFixedBound 
kTopFadeNode 
kIgnoreFade 
kNoAnimSyncX 
kNoAnimSyncY 
kNoAnimSyncZ 
kNoAnimSyncS 
kNoDismember 
kNoDismemberValidity 
kRenderUse 
kMaterialsApplied 
kHighDetail 
kForceUpdate 
kPreProcessedNode 

Constructor & Destructor Documentation

◆ ~NiAVObject()

RE::NiAVObject::~NiAVObject ( )
override

Member Function Documentation

◆ AttachProperty()

virtual void RE::NiAVObject::AttachProperty ( NiAlphaProperty a_property)
virtual

Reimplemented in RE::NiNode, and RE::BSGeometry.

◆ GetAppCulled()

bool RE::NiAVObject::GetAppCulled ( ) const

◆ GetObjectByName()

virtual NiAVObject* RE::NiAVObject::GetObjectByName ( const BSFixedString a_name)
virtual

Reimplemented in RE::NiNode.

◆ GetRTTI()

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

Reimplemented from RE::NiObject.

Reimplemented in RE::ShadowSceneNode, RE::NiNode, and RE::NiCamera.

◆ IsEqual()

bool RE::NiAVObject::IsEqual ( NiObject a_object)
overridevirtual

Reimplemented from RE::NiObject.

Reimplemented in RE::NiNode, and RE::NiCamera.

◆ LinkObject()

void RE::NiAVObject::LinkObject ( NiStream a_stream)
override

◆ LoadBinary()

void RE::NiAVObject::LoadBinary ( NiStream a_stream)
override

◆ OnVisible()

virtual void RE::NiAVObject::OnVisible ( NiCullingProcess a_process)
virtual

◆ PerformOp()

virtual void RE::NiAVObject::PerformOp ( PerformOpFunc a_func)
virtual

Reimplemented in RE::NiNode.

◆ PostAttachUpdate()

virtual void RE::NiAVObject::PostAttachUpdate ( )
virtual

◆ PreAttachUpdate()

virtual void RE::NiAVObject::PreAttachUpdate ( NiNode a_parent,
NiUpdateData a_data 
)
virtual

◆ ProcessClone()

void RE::NiAVObject::ProcessClone ( NiCloningProcess &  a_cloning)
overridevirtual

Reimplemented from RE::NiObject.

Reimplemented in RE::NiNode.

◆ RegisterStreamables()

bool RE::NiAVObject::RegisterStreamables ( NiStream a_stream)
overridevirtual

Reimplemented from RE::NiObject.

Reimplemented in RE::NiNode, and RE::NiCamera.

◆ SaveBinary()

void RE::NiAVObject::SaveBinary ( NiStream a_stream)
override

◆ SetDefaultMaterialNeedsUpdateFlag()

virtual void RE::NiAVObject::SetDefaultMaterialNeedsUpdateFlag ( bool  a_flag)
virtual

◆ SetMaterialNeedsUpdate()

virtual void RE::NiAVObject::SetMaterialNeedsUpdate ( bool  a_needsUpdate)
virtual

◆ SetMotionType()

bool RE::NiAVObject::SetMotionType ( std::uint32_t  a_motionType,
bool  a_arg2 = true,
bool  a_arg3 = false,
bool  a_allowActivate = true 
)

◆ SetSelectiveUpdateFlags()

virtual void RE::NiAVObject::SetSelectiveUpdateFlags ( bool &  a_selectiveUpdate,
bool  a_selectiveUpdateTransforms,
bool &  a_rigid 
)
virtual

Reimplemented in RE::NiNode, and RE::BSGeometry.

◆ TintScenegraph()

void RE::NiAVObject::TintScenegraph ( const NiColorA a_color)

◆ Update()

void RE::NiAVObject::Update ( NiUpdateData a_data)

◆ UpdateBodyTint()

void RE::NiAVObject::UpdateBodyTint ( const NiColor a_color)

◆ UpdateControllers()

virtual void RE::NiAVObject::UpdateControllers ( NiUpdateData a_data)
virtual

Reimplemented in RE::NiNode.

◆ UpdateDownwardPass()

virtual void RE::NiAVObject::UpdateDownwardPass ( NiUpdateData a_data,
std::uint32_t  a_arg2 
)
virtual

◆ UpdateHairColor()

void RE::NiAVObject::UpdateHairColor ( const NiColor a_color)

◆ UpdateRigidDownwardPass()

virtual void RE::NiAVObject::UpdateRigidDownwardPass ( NiUpdateData a_data,
std::uint32_t  a_arg2 
)
virtual

Reimplemented in RE::NiNode, and RE::BSGeometry.

◆ UpdateSelectedDownwardPass()

virtual void RE::NiAVObject::UpdateSelectedDownwardPass ( NiUpdateData a_data,
std::uint32_t  a_arg2 
)
virtual

Reimplemented in RE::NiNode, RE::BSGeometry, and RE::BSFadeNode.

◆ UpdateTransformAndBounds()

virtual void RE::NiAVObject::UpdateTransformAndBounds ( NiUpdateData a_data)
virtual

Reimplemented in RE::NiNode.

◆ UpdateWorldBound()

virtual void RE::NiAVObject::UpdateWorldBound ( )
virtual

◆ UpdateWorldData()

virtual void RE::NiAVObject::UpdateWorldData ( NiUpdateData a_data)
virtual

Reimplemented in RE::NiCamera.

Member Data Documentation

◆ collisionObject

NiPointer<NiCollisionObject> RE::NiAVObject::collisionObject

◆ fadeAmount

float RE::NiAVObject::fadeAmount

◆ flags

stl::enumeration<Flag, std::uint32_t> RE::NiAVObject::flags

◆ lastUpdatedFrameCounter

std::uint32_t RE::NiAVObject::lastUpdatedFrameCounter

◆ local

NiTransform RE::NiAVObject::local

◆ Ni_RTTI

constexpr auto RE::NiAVObject::Ni_RTTI = NiRTTI_NiAVObject
inlinestaticconstexpr

◆ parent

NiNode* RE::NiAVObject::parent

◆ parentIndex

std::uint32_t RE::NiAVObject::parentIndex

◆ previousWorld

NiTransform RE::NiAVObject::previousWorld

◆ RTTI

constexpr auto RE::NiAVObject::RTTI = RTTI_NiAVObject
inlinestaticconstexpr

◆ unk03C

std::uint32_t RE::NiAVObject::unk03C

◆ unk108

std::uint32_t RE::NiAVObject::unk108

◆ userData

TESObjectREFR* RE::NiAVObject::userData

◆ world

NiTransform RE::NiAVObject::world

◆ worldBound

NiBound RE::NiAVObject::worldBound

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