CommonLibSSE (Parapets fork)
RE::NiGeometryData Class Referenceabstract

#include <NiGeometryData.h>

Inheritance diagram for RE::NiGeometryData:
RE::NiObject RE::NiRefObject

Public Types

enum class  DataFlag { kNone = 0x0000 , kNDL = 1 << 12 , kMax = 1 << 13 , kATI = kNDL | kMax }
 
enum class  DirtyFlag {
  kVertex = 1 << 0 , kNormal = 1 << 1 , kColor = 1 << 2 , kTexture = 1 << 3 ,
  kMutable = 0 , kStatic = 1 << 14 , kVolatile = 1 << 15
}
 
enum class  KeepFlag {
  kXYZ = 1 << 0 , kNorm = 1 << 1 , kColor = 1 << 2 , kUV = 1 << 3 ,
  kIndices = 1 << 4 , kBonedata = 1 << 5 , kAll = kXYZ | kNorm | kColor | kUV | kIndices | kBonedata
}
 
enum class  CompressFlag {
  kNorm = 1 << 0 , kColor = 1 << 1 , kUV = 1 << 2 , kWeight = 1 << 3 ,
  kPosition = 1 << 4 , kAll = kNorm | kColor | kUV | kWeight | kPosition
}
 

Public Member Functions

 ~NiGeometryData () 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
 
virtual void SetActiveVertexCount (std::uint16_t a_count)
 
virtual std::uint16_t GetActiveVertexCount () const
 
virtual NiTriStripsData * AsTriStripsData ()
 
virtual NiTriShapeData * AsTriShapeData ()
 
virtual void Unk_29 (void)=0
 
- 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 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 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

std::uint16_t vertices
 
std::uint16_t id
 
stl::enumeration< DirtyFlag, std::uint16_t > dirtyFlags
 
stl::enumeration< DataFlag, std::uint16_t > dataFlags
 
NiBound bound
 
NiPoint3vertex
 
NiPoint3normal
 
NiColorAcolor
 
NiPoint2texture
 
std::uint32_t unk48
 
std::uint32_t unk4C
 
std::uint32_t unk50
 
std::uint32_t unk54
 
NiPointer< NiAdditionalGeometryData > additionalGeomData
 
stl::enumeration< KeepFlag, std::uint8_t > keepFlags
 
stl::enumeration< CompressFlag, std::uint8_t > compressFlags
 
std::uint8_t unk62
 
std::uint8_t unk63
 
std::uint8_t unk64
 
std::uint8_t unk65
 
bool hasGeoData
 
std::uint8_t unk67
 
- 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_NiGeometryData
 
static constexpr auto Ni_RTTI = NiRTTI_NiGeometryData
 
- 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

◆ CompressFlag

Enumerator
kNorm 
kColor 
kUV 
kWeight 
kPosition 
kAll 

◆ DataFlag

Enumerator
kNone 
kNDL 
kMax 
kATI 

◆ DirtyFlag

Enumerator
kVertex 
kNormal 
kColor 
kTexture 
kMutable 
kStatic 
kVolatile 

◆ KeepFlag

Enumerator
kXYZ 
kNorm 
kColor 
kUV 
kIndices 
kBonedata 
kAll 

Constructor & Destructor Documentation

◆ ~NiGeometryData()

RE::NiGeometryData::~NiGeometryData ( )
override

Member Function Documentation

◆ AsTriShapeData()

virtual NiTriShapeData* RE::NiGeometryData::AsTriShapeData ( )
virtual

◆ AsTriStripsData()

virtual NiTriStripsData* RE::NiGeometryData::AsTriStripsData ( )
virtual

◆ GetActiveVertexCount()

virtual std::uint16_t RE::NiGeometryData::GetActiveVertexCount ( ) const
virtual

◆ GetRTTI()

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

Reimplemented from RE::NiObject.

◆ IsEqual()

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

Reimplemented from RE::NiObject.

◆ LinkObject()

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

◆ LoadBinary()

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

◆ RegisterStreamables()

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

Reimplemented from RE::NiObject.

◆ SaveBinary()

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

◆ SetActiveVertexCount()

virtual void RE::NiGeometryData::SetActiveVertexCount ( std::uint16_t  a_count)
virtual

◆ Unk_29()

virtual void RE::NiGeometryData::Unk_29 ( void  )
pure virtual

Member Data Documentation

◆ additionalGeomData

NiPointer<NiAdditionalGeometryData> RE::NiGeometryData::additionalGeomData

◆ bound

NiBound RE::NiGeometryData::bound

◆ color

NiColorA* RE::NiGeometryData::color

◆ compressFlags

stl::enumeration<CompressFlag, std::uint8_t> RE::NiGeometryData::compressFlags

◆ dataFlags

stl::enumeration<DataFlag, std::uint16_t> RE::NiGeometryData::dataFlags

◆ dirtyFlags

stl::enumeration<DirtyFlag, std::uint16_t> RE::NiGeometryData::dirtyFlags

◆ hasGeoData

bool RE::NiGeometryData::hasGeoData

◆ id

std::uint16_t RE::NiGeometryData::id

◆ keepFlags

stl::enumeration<KeepFlag, std::uint8_t> RE::NiGeometryData::keepFlags

◆ Ni_RTTI

constexpr auto RE::NiGeometryData::Ni_RTTI = NiRTTI_NiGeometryData
inlinestaticconstexpr

◆ normal

NiPoint3* RE::NiGeometryData::normal

◆ RTTI

constexpr auto RE::NiGeometryData::RTTI = RTTI_NiGeometryData
inlinestaticconstexpr

◆ texture

NiPoint2* RE::NiGeometryData::texture

◆ unk48

std::uint32_t RE::NiGeometryData::unk48

◆ unk4C

std::uint32_t RE::NiGeometryData::unk4C

◆ unk50

std::uint32_t RE::NiGeometryData::unk50

◆ unk54

std::uint32_t RE::NiGeometryData::unk54

◆ unk62

std::uint8_t RE::NiGeometryData::unk62

◆ unk63

std::uint8_t RE::NiGeometryData::unk63

◆ unk64

std::uint8_t RE::NiGeometryData::unk64

◆ unk65

std::uint8_t RE::NiGeometryData::unk65

◆ unk67

std::uint8_t RE::NiGeometryData::unk67

◆ vertex

NiPoint3* RE::NiGeometryData::vertex

◆ vertices

std::uint16_t RE::NiGeometryData::vertices

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