diff --git a/include/Key.h b/include/Key.h index e35eb11acca24a44d1d8fc519780e55928d92bb6..7e54e510c632a2d3b04ea5b0e6b5097c3c206ac3 100644 --- a/include/Key.h +++ b/include/Key.h @@ -9,7 +9,7 @@ All rights reserved. Please see niflib.h for licence. */ namespace Niflib { using namespace std; -/*! Stores an animation key and the time in the animation that it takes affect. It is a template class so it can hold any kind of data as different blocks key different sorts of information to the animation timeline.*/ +/*! Stores an animation key and the time in the animation that it takes affect. It is a template class so it can hold any kind of data as different objects key different sorts of information to the animation timeline.*/ template <class T> struct Key { float time; /*!< The time on the animation timeline that this keyframe takes affect. */ diff --git a/include/NIF_IO.h b/include/NIF_IO.h index 228e50296fdc9f99921daea6184391357b009bcf..97edff3d995bb78d990a7615a4d6da53ae679bbc 100644 --- a/include/NIF_IO.h +++ b/include/NIF_IO.h @@ -228,8 +228,6 @@ private: //--IO Functions--// -int BlockSearch( istream& in ); - //-- Read Utility Functions--// int ReadInt( istream& in ); unsigned int ReadUInt( istream& in ); diff --git a/include/gen/AVObject.h b/include/gen/AVObject.h index 8d213b9963e150a524d32b4e475f32f82f9ad1d2..75cfe547437d357e2051e6bffc3d0ce8d0c92f97 100644 --- a/include/gen/AVObject.h +++ b/include/gen/AVObject.h @@ -12,7 +12,7 @@ All rights reserved. Please see niflib.h for license. */ namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiAVObject; /*! diff --git a/include/gen/ControllerLink.h b/include/gen/ControllerLink.h index 9b2418ea3cc4e2ef88305a30df0fdd27cffe66f5..a620f922cdc67997d6a2c3ff62e520f4dfd38417 100644 --- a/include/gen/ControllerLink.h +++ b/include/gen/ControllerLink.h @@ -14,7 +14,7 @@ All rights reserved. Please see niflib.h for license. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiTimeController; class NiInterpolator; class NiObject; diff --git a/include/gen/Footer.h b/include/gen/Footer.h index 908ddb4debb8b0f4851c3f5fc6250001cd87dbb5..fd1af39b699d9269f3e25ae99c73dbfb97f70369 100644 --- a/include/gen/Footer.h +++ b/include/gen/Footer.h @@ -15,7 +15,7 @@ All rights reserved. Please see niflib.h for license. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiObject; /*! diff --git a/include/gen/NodeGroup.h b/include/gen/NodeGroup.h index 235be5ceb7ef5d62ef41c2ff92d13ceadadda5c7..fa48602bfd7071dc485fee6901916e0b1038d755 100644 --- a/include/gen/NodeGroup.h +++ b/include/gen/NodeGroup.h @@ -12,7 +12,7 @@ All rights reserved. Please see niflib.h for license. */ namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiNode; /*! diff --git a/include/gen/SkinShape.h b/include/gen/SkinShape.h index b07b04a19c08c8aff222b811963e8951e19f54dd..b54e7c6d92478568190ac83a4611434e863d1b57 100644 --- a/include/gen/SkinShape.h +++ b/include/gen/SkinShape.h @@ -14,7 +14,7 @@ All rights reserved. Please see niflib.h for license. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiTriShape; class NiSkinInstance; diff --git a/include/gen/TexDesc.h b/include/gen/TexDesc.h index a9e3fc565886c7211294013a8f1fbd81b147db70..a3e437ea6fa93114bc7d8c8f0ffcb114e8cd88c2 100644 --- a/include/gen/TexDesc.h +++ b/include/gen/TexDesc.h @@ -14,7 +14,7 @@ All rights reserved. Please see niflib.h for license. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiSourceTexture; /*! diff --git a/include/gen/TexSource.h b/include/gen/TexSource.h index 981594ccd732bf1035acfa20538573abd02043a8..2ebd30b1553480be665757da43a9910304b7bbab 100644 --- a/include/gen/TexSource.h +++ b/include/gen/TexSource.h @@ -14,7 +14,7 @@ All rights reserved. Please see niflib.h for license. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiObject; class NiPixelData; diff --git a/include/kfm.h b/include/kfm.h index 96c9cfd5b7be90d345cbaaaaff3f39c9dde3cd2e..2be82e913af76ee5bb833a4333003fbd082e28f9 100644 --- a/include/kfm.h +++ b/include/kfm.h @@ -69,7 +69,7 @@ struct Kfm { unsigned int Read( const string & file_name ); // returns Kfm version unsigned int Read( istream & in ); // returns Kfm version - // Reads the NIF file and all KF files referred to in this KFM, and returns the root block of the resulting NIF tree. + // Reads the NIF file and all KF files referred to in this KFM, and returns the root object of the resulting NIF tree. Ref<NiObject> MergeActions( const string & path ); //void Write( string const & file_name, unsigned int version ); //void Write( ostream & out, unsigned int version ); diff --git a/include/niflib.h b/include/niflib.h index 099c020d779714c8f2b7c2d5c430944b3b298a99..c8decc80a5de52463f3680cfaa2631eed7206127 100644 --- a/include/niflib.h +++ b/include/niflib.h @@ -116,104 +116,69 @@ enum ExportOptions { NIFLIB_API unsigned int GetNifVersion( string const & file_name ); /*! - * Reads the given file by file name and returns a vector of block references + * Reads the given file by file name and returns a vector of object references * \param file_name The name of the file to load, or the complete path if it is not in the working directory. * \param info Optionally, a NifInfo structure pointer can be passed in, and it will be filled with information from the header of the NIF file. - * \return A vector of block references that point to all the blocks read from the Nif file. - * - * <b>Example:</b> - * \code - * NiObjectRef my_block = ReadNifList("test_in.nif"); - * \endcode - * - * <b>In Python:</b> - * \code - * my_block = ReadNifList("test_in.nif") - * \endcode - * + * \return All the NIF objects read from the Nif file. * \sa ReadNifTree, WriteNifTree */ NIFLIB_API vector< Ref<NiObject> > ReadNifList( string const & file_name, NifInfo * info = NULL ); /*! - * Reads the given input stream and returns a vector of block references + * Reads the given input stream and returns a vector of object references * \param in The input stream to read NIF data from. * \param info Optionally, a NifInfo structure pointer can be passed in, and it will be filled with information from the header of the NIF file. - * \return A vector of block references that point to all the blocks read from the stream. + * \return All the NIF objects read from the stream. */ NIFLIB_API vector< Ref<NiObject> > ReadNifList( istream & in, NifInfo * info = NULL ); /*! - * Reads the given file by file name and returns a reference to the root block. + * Reads the given file by file name and returns a reference to the root object. * \param file_name The name of the file to load, or the complete path if it is not in the working directory. * \param info Optionally, a NifInfo structure pointer can be passed in, and it will be filled with information from the header of the NIF file. - * \return A block reference that points to the root of tree of data blocks contained in the NIF file. - * - * <b>Example:</b> - * \code - * NiObjectRef my_block = ReadNifTree("test_in.nif"); - * \endcode - * - * <b>In Python:</b> - * \code - * my_block = ReadNifTree("test_in.nif") - * \endcode - * + * \return The root of tree of NIF objects contained in the NIF file. * \sa ReadNifList, WriteNifTree */ NIFLIB_API Ref<NiObject> ReadNifTree( string const & file_name, NifInfo * info = NULL ); /*! - * Reads the given input stream and returns a reference to the root block. + * Reads the given input stream and returns a reference to the root object. * \param[in] in The input stream to read NIF data from. * \param[out] info Optionally, a NifInfo structure pointer can be passed in, and it will be filled with information from the header of the NIF file. - * \return A block reference that points to the root of the tree of data blocks contained in the NIF file. + * \return The root of the tree of NIF Objects contained in the NIF file. */ NIFLIB_API Ref<NiObject> ReadNifTree( istream & in, NifInfo * info = NULL ); /*! - * Creates a new NIF file of the given file name by crawling through the data tree starting with the root block given. + * Creates a new NIF file of the given file name by crawling through the data tree starting with the root object given. * \param[in] file_name The desired file name for the new NIF file. The path is relative to the working directory unless a full path is specified. - * \param[in] root The root block to start from when writing out the NIF file. All decedents of this block will be written to the file in tree-descending order. + * \param[in] root The root object to start from when writing out the NIF file. All decedents of this block will be written to the file in tree-descending order. * \param[in] info A NifInfo structure that contains information such as the version of the NIF file to create. - * - * <b>Example:</b> - * \code - * NiObjectRef my_block = ReadNifTree("test_in.nif"); - * WriteNifTree( "test_out.nif", my_block ); - * \endcode - * - * <b>In Python:</b> - * \code - * my_block = ReadNifTree("test_in.nif") - * WriteNifTree( "test_out.nif", my_block ) - * \endcode - * * \sa ReadNifList, WriteNifTree */ NIFLIB_API void WriteNifTree( string const & file_name, NiObject * root, const NifInfo & info = NifInfo() ); /*! - * Writes a nif tree to an ostream starting at the given root block. + * Writes a nif tree to an ostream starting at the given root object. * \param[in] in The output stream to write the NIF data to. - * \param[in] root The root block to start from when writing out the NIF data. All decedents of this block will be written to the stream in tree-descending order. + * \param[in] root The root object to start from when writing out the NIF data. All decedents of this object will be written to the stream in tree-descending order. * \param[in] info A NifInfo structure that contains information such as the version of the NIF file to create. */ NIFLIB_API void WriteNifTree( ostream & in, NiObject * root, const NifInfo & info = NifInfo() ); /*! - * Writes a bunch of files given a base file name, and a pointer to the root block of the Nif file tree. + * Writes a bunch of files given a base file name, and a pointer to the root object of the Nif file tree. * \param[in] file_name The desired file name for the base NIF file. This name serves as the basis for the names of any Kf files and Kfm files as well. The path is relative to the working directory unless a full path is specified. - * \param[in] root The root block to start from when writing out the NIF file. + * \param[in] root The root object to start from when writing out the NIF file. * \param[in] info A NifInfo structure that contains information such as the version of the NIF file to create. * \param[in] export_files What files to write: NIF, NIF + KF + KFM, NIF + KF's + KFM, KF only, KF's only * \param[in] kf_type The KF type (Morrowind style, DAoC style, CivIV style, ...) */ -NIFLIB_API void WriteFileGroup( string const & file_name, NiObject * root, const NifInfo & info = NifInfo(), ExportOptions export_files = EXPORT_NIF, NifGame kf_type = KF_MW); +NIFLIB_API void WriteFileGroup( string const & file_name, NiObject * root_object, const NifInfo & info = NifInfo(), ExportOptions export_files = EXPORT_NIF, NifGame kf_type = KF_MW); /*! * Creates a clone of an entire tree of objects. - * \param[in] root The root block to start from when cloning the NIF data. All referenced objects will be included in the new tree. + * \param[in] root The root object to start from when cloning the NIF data. All referenced objects will be included in the new tree. * \param[in] version The version of the NIF format to use when writing a file. Default is version 4.0.0.2. * \param[in] user_version The user version of the NIF format to use when writing a file. Default is user version 0. * \return The root of the new cloned tree. @@ -223,9 +188,9 @@ NIFLIB_API Ref<NiObject> CloneNifTree( NiObject * root, unsigned version = 0xFFF //TODO: Figure out how to fix this to work with the new system /*! - * Merges two Nif trees into one. For standard Nif files, any blocks with the same name are merged. For Kf files, blocks are attatched to those that match the name specified in the KF root block. The data stored in a NIF file varies from version to version. Usually you are safe with the default option (the highest availiable version) but you may need to use an earlier version if you need to clone an obsolete piece of information. - * \param[in,out] target The root block of the first Nif tree to merge. - * \param[in] right The root block of the second Nif tree to merge. + * Merges two Nif trees into one. For standard Nif files, any NIF Objects with the same name are merged. For Kf files, objects are attatched to those that match the name specified in the KF root object. The data stored in a NIF file varies from version to version. Usually you are safe with the default option (the highest availiable version) but you may need to use an earlier version if you need to clone an obsolete piece of information. + * \param[in,out] target The root object of the first Nif tree to merge. + * \param[in] right The root object of the second Nif tree to merge. * \param[in] version The version of the nif format to use during the clone operation on the right-hand tree. The default is the highest version availiable. * \param[in] user_version The user version to use during the clone operation. */ @@ -257,28 +222,8 @@ NIFLIB_API Ref<NiNode> FindCommonAncestor( const vector< Ref<NiAVObject> > & obj */ NIFLIB_API list< Ref<NiNode> > ListAncestors( NiAVObject * leaf ); -//// Returns list of all blocks in the tree rooted by root block. -//list<NiObjectRef> GetNifTree( NiObjectRef const & root_block ); - -////Returns the NIF spec version of a file, given a file name. -//string GetFileVersion(string file_name); - -/*! - * Creates a new block of the given type and returns a reference to it. - * In C++, it is not necessary to call this function as you can create - * objects with the new keyword. In Python, however, this is the only - * way to create new objects for now. - * This is - * \param block_type – The type of block you want to create. This value is case sensitive and spelling is important. Ex. NiNode, NiTriShapeData, NiParticleSystemController, etc. - * \return This function will return a newly created block of the requested type. Beware, if the block type is unrecognized, this function will return a featureless block with whatever you sent it as the type. - * - * sa NiObject::NumObjectsInMemory - */ -#ifdef SWIG -NIFLIB_API Ref<NiObject> CreateObject( string block_type ); -#else -NIFLIB_HIDDEN Ref<NiObject> CreateObject( string block_type ); -#endif +/*! NIFLIB_HIDDEN function. For internal use only. */ +NIFLIB_HIDDEN Ref<NiObject> CreateObject( string obj_type ); /*! * Returns whether the requested version is explicitly supported. This does @@ -486,7 +431,7 @@ Casting down the inheritance tree should be automatic in C++, but you can also e One useful function of all NIF objects is the NiObject::asString() function. You can use it to get an English summary of the contents of that object. You can also call the NiObject::GetIDString() function to get a short readout that includes the memory address, type, and name, if any, of the object. -You will probably also want to know the type of a block at some point. You can retrieve this with the NiObject::GetType() function. This returns a reference to the Type value that uniquly identifies this class. You can get its name by calling the Type::GetTypeName() function. +You will probably also want to know the type of a object at some point. You can retrieve this with the NiObject::GetType() function. This returns a reference to the Type value that uniquly identifies this class. You can get its name by calling the Type::GetTypeName() function. <center>\ref intro_page "<< Previous Section"</center> diff --git a/include/obj/APSysCtlr.h b/include/obj/APSysCtlr.h index 706ee54c20fcc77be3904901ad8c01194ca6ac61..d52061f4f4ccddfb564178ea3145d112f7a4d73e 100644 --- a/include/obj/APSysCtlr.h +++ b/include/obj/APSysCtlr.h @@ -34,7 +34,7 @@ public: NIFLIB_HIDDEN virtual list<NiObjectRef> GetRefs() const; /*! - * Refers to modifier block by its name? + * Refers to modifier object by its name? */ NIFLIB_API string GetModifierName() const; NIFLIB_API void SetModifierName( string value ); diff --git a/include/obj/AParticleModifier.h b/include/obj/AParticleModifier.h index 101be6f8b84f538de9123717a57252f09af20351..1227128a2a8df11e98c47b428fa6c6e4e7715e01 100644 --- a/include/obj/AParticleModifier.h +++ b/include/obj/AParticleModifier.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiParticleSystemController; //#include "../gen/obj_defines.h" diff --git a/include/obj/AbhkConstraint.h b/include/obj/AbhkConstraint.h index 7014cf2c9615e6b1adc8bacfd535d36865fab2f3..584daaae889ae523b1df35f0826b4a49f8b5be4f 100644 --- a/include/obj/AbhkConstraint.h +++ b/include/obj/AbhkConstraint.h @@ -7,7 +7,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "bhkSerializable.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class bhkShape; //#include "../gen/obj_defines.h" diff --git a/include/obj/BSKeyframeController.h b/include/obj/BSKeyframeController.h index ad05e261ddba64675b968560cec31d601a841570..961def424d603e008874c0168d14d041e1bf7e07 100644 --- a/include/obj/BSKeyframeController.h +++ b/include/obj/BSKeyframeController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiKeyframeData; //#include "../gen/obj_defines.h" diff --git a/include/obj/FxRadioButton.h b/include/obj/FxRadioButton.h index a1b0deb88921f571e70ee605d1ba180e846caa74..1f764ea899ff475c98cf93b4226844b69b05befc 100644 --- a/include/obj/FxRadioButton.h +++ b/include/obj/FxRadioButton.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiObject; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiAVObject.h b/include/obj/NiAVObject.h index b6f2f395d7b78c50dec7d54969c28e5f1e994e03..dbd6e4f3198303ba8e7f7e65a9de4f5dac395ef9 100644 --- a/include/obj/NiAVObject.h +++ b/include/obj/NiAVObject.h @@ -11,7 +11,7 @@ namespace Niflib { //#include "../gen/obj_defines.h" -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiProperty; class NiCollisionData; class NiCollisionObject; @@ -96,13 +96,13 @@ public: * Adds a property to this object. Properties specify various charactaristics of the object that affect rendering. They may be shared among objects. * \param[in] obj The new property that is to affect this object. */ - NIFLIB_API void AddProperty( const Ref<NiProperty> & obj ); + NIFLIB_API void AddProperty( NiProperty * obj ); /*! * Removes a property from this object. Properties specify various charactaristics of the object that affect rendering. They may be shared among objects. * \param[in] obj The property that is no longer to affect this object. */ - NIFLIB_API void RemoveProperty( Ref<NiProperty> obj ); + NIFLIB_API void RemoveProperty( NiProperty * obj ); /*! * Removes all properties from this object. Properties specify various charactaristics of the object that affect rendering. They may be shared among objects. diff --git a/include/obj/NiAlphaController.h b/include/obj/NiAlphaController.h index 5e17e9cb7b0169e1f286d928b349326c14cf32cc..e4c3209bc2f99b955d11c2df272b44a13529d33b 100644 --- a/include/obj/NiAlphaController.h +++ b/include/obj/NiAlphaController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiFloatData; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiAutoNormalParticlesData.h b/include/obj/NiAutoNormalParticlesData.h index 4aa917073b5add1fe35ca675e72dd52ceeb01edf..9a59e385dc2d230eaf3a5f76aaad99a24fb1ff80 100644 --- a/include/obj/NiAutoNormalParticlesData.h +++ b/include/obj/NiAutoNormalParticlesData.h @@ -14,7 +14,7 @@ class NiAutoNormalParticlesData; typedef Ref<NiAutoNormalParticlesData> NiAutoNormalParticlesDataRef; /*! - * NiAutoNormalParticlesData - Particle system data block (with automatic + * NiAutoNormalParticlesData - Particle system data object (with automatic * normals?). */ diff --git a/include/obj/NiBSplineInterpolator.h b/include/obj/NiBSplineInterpolator.h index 21ffaebd86aacae496db2cd6e1e44d490d02138e..31e9a24d58664092ed3eeb82f135fb581757f604 100644 --- a/include/obj/NiBSplineInterpolator.h +++ b/include/obj/NiBSplineInterpolator.h @@ -7,7 +7,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "NiInterpolator.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiBSplineData; class NiBSplineBasisData; diff --git a/include/obj/NiBinaryExtraData.h b/include/obj/NiBinaryExtraData.h index bdfae4a38cabf7e4739b051ac38a0868437ea67e..7e0624e59adfba071b1084f43b71772e1a83e090 100644 --- a/include/obj/NiBinaryExtraData.h +++ b/include/obj/NiBinaryExtraData.h @@ -15,7 +15,7 @@ class NiBinaryExtraData; typedef Ref<NiBinaryExtraData> NiBinaryExtraDataRef; /*! - * NiBinaryExtraData - Binary extra data block. Used to store normals and + * NiBinaryExtraData - Binary extra data object. Used to store normals and * binormals in Oblivion. */ diff --git a/include/obj/NiBoneLODController.h b/include/obj/NiBoneLODController.h index 65cb057383c02c913f878d0fb56912bdbe3f9991..31022a4cb0a608a341193c2f56625b7964fdec28 100644 --- a/include/obj/NiBoneLODController.h +++ b/include/obj/NiBoneLODController.h @@ -11,7 +11,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiTriShape; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiBoolInterpolator.h b/include/obj/NiBoolInterpolator.h index 750c4b0cf06537f34b20c4ca1621aa01ba4210a8..9de1893dd207347e3dd495c8cf30b39e6a344532 100644 --- a/include/obj/NiBoolInterpolator.h +++ b/include/obj/NiBoolInterpolator.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiBoolData; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiBoolTimelineInterpolator.h b/include/obj/NiBoolTimelineInterpolator.h index a2522bd7841db30c17ab41032b3a51e1704c1aa3..6246834e31b487e9fa2c21ce805dcc15a4938e9f 100644 --- a/include/obj/NiBoolTimelineInterpolator.h +++ b/include/obj/NiBoolTimelineInterpolator.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiBoolData; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiCamera.h b/include/obj/NiCamera.h index f94c7f294f4ba3f79968452c0035843c182b80cb..208d878383179f2b79098e55aa090b7b4e810240 100644 --- a/include/obj/NiCamera.h +++ b/include/obj/NiCamera.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiObject; //#include "../gen/obj_defines.h" @@ -39,76 +39,142 @@ public: NIFLIB_HIDDEN virtual list<NiObjectRef> GetRefs() const; /*! - * Frustrum left. + * Retrieves the frustum left value. + * \return The frstum left value. */ NIFLIB_API float GetFrustumLeft() const; + + /*! + * Sets the frustum left value. + * \param[in] value The new frstum left value. + */ NIFLIB_API void SetFrustumLeft( float value ); /*! - * Frustrum right. + * Retrieves the frustum right value. + * \return The frstum right value. */ NIFLIB_API float GetFrustumRight() const; + + /*! + * Sets the frustum right value. + * \param[in] value The new frstum right value. + */ NIFLIB_API void SetFrustumRight( float value ); /*! - * Frustrum top. + * Retrieves the frustum top value. + * \return The frstum top value. */ NIFLIB_API float GetFrustumTop() const; NIFLIB_API void SetFrustumTop( float value ); /*! - * Frustrum bottom. + * Retrieves the frustum bottom value. + * \return The frstum bottom value. */ NIFLIB_API float GetFrustumBottom() const; + + /*! + * Sets the frustum top value. + * \param[in] value The new frstum top value. + */ NIFLIB_API void SetFrustumBottom( float value ); /*! - * Frustrum near. + * Retrieves the frustum near value. + * \return The frstum near value. */ NIFLIB_API float GetFrustumNear() const; + + /*! + * Sets the frustum near value. + * \param[in] value The new frstum near value. + */ NIFLIB_API void SetFrustumNear( float value ); /*! - * Frustrum far. + * Retrieves the frustum far value. + * \return The frstum far value. */ NIFLIB_API float GetFrustumFar() const; + + /*! + * Sets the frustum far value. + * \param[in] value The new frstum far value. + */ NIFLIB_API void SetFrustumFar( float value ); /*! - * Determines whether perspective is used. Orthographic means no - * perspective. + * Determines whether perspective is used. Orthographic means no perspective. + * \return True if projection is orthographic, false otherwise. */ NIFLIB_API bool GetUseOrthographicProjection() const; + + /*! + * Sets whether perspective is used. Orthographic means no perspective. + * \param[in] value True if projection is to be orthographic, false otherwise. + */ NIFLIB_API void SetUseOrthographicProjection( bool value ); /*! - * Viewport left. + * Retrieves the viewport left value. + * \return The viewport left value. */ NIFLIB_API float GetViewportLeft() const; + + /*! + * Sets the viewport left value. + * \param[in] value The new viewport left value. + */ NIFLIB_API void SetViewportLeft( float value ); /*! - * Viewport right. + * Retrieves the viewport right value. + * \return The viewport right value. */ NIFLIB_API float GetViewportRight() const; + + /*! + * Sets the viewport right value. + * \param[in] value The new viewport right value. + */ NIFLIB_API void SetViewportRight( float value ); /*! - * Viewport top. + * Retrieves the viewport top value. + * \return The viewport top value. */ NIFLIB_API float GetViewportTop() const; + + /*! + * Sets the viewport top value. + * \param[in] value The new viewport top value. + */ NIFLIB_API void SetViewportTop( float value ); /*! - * Viewport bottom. + * Retrieves the viewport bottom value. + * \return The viewport bottom value. */ NIFLIB_API float GetViewportBottom() const; + + /*! + * Sets the viewport bottom value. + * \param[in] value The new viewport bottom value. + */ NIFLIB_API void SetViewportBottom( float value ); /*! - * Level of detail adjust. + * Retrieves the level of detail adjustment value. + * \return The LOD adjustment value. */ NIFLIB_API float GetLodAdjust() const; + + /*! + * Sets the level of detail adjustment value. + * \param[in] value The new LOD adjustment value. + */ NIFLIB_API void SetLodAdjust( float value ); protected: diff --git a/include/obj/NiCollisionData.h b/include/obj/NiCollisionData.h index c41686aef69dff066d3d806b01819a5feefb7e3f..7b2a98f020740116b3695281d88a7c3533320a16 100644 --- a/include/obj/NiCollisionData.h +++ b/include/obj/NiCollisionData.h @@ -7,7 +7,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "NiObject.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiNode; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiCollisionObject.h b/include/obj/NiCollisionObject.h index 9bd56d6ab3706da13922b2133f806cea2a8d2c7c..27a1fd64bef7e09baaf8edb02abb67829c97f20f 100644 --- a/include/obj/NiCollisionObject.h +++ b/include/obj/NiCollisionObject.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiAVObject; class NiObject; diff --git a/include/obj/NiControllerManager.h b/include/obj/NiControllerManager.h index a9755dd695cc5c5688ca3e70267350c6b449538b..e2948967e839a534eccd94528502cc9e7a425cd5 100644 --- a/include/obj/NiControllerManager.h +++ b/include/obj/NiControllerManager.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiControllerSequence; class NiDefaultAVObjectPalette; diff --git a/include/obj/NiControllerSequence.h b/include/obj/NiControllerSequence.h index ec7702f96f18a4626ccf7174831675480d742331..1158ccbb062b925432d64cbd5612b2d6342c66fe 100644 --- a/include/obj/NiControllerSequence.h +++ b/include/obj/NiControllerSequence.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiTextKeyExtraData; class NiControllerManager; class NiStringPalette; @@ -63,7 +63,7 @@ public: NIFLIB_API void SetName( const string & value ); /*! - * Sets the name and block reference to the NiTextKeyExtraData block which will be used by this controller sequence to specify the keyframe labels or "notes." + * Sets the name and reference to the NiTextKeyExtraData object which will be used by this controller sequence to specify the keyframe labels or "notes." * \param[in] txt_key A reference to the NiTextKeyExtraData object to use. * \sa NiTextKeyExtraData */ diff --git a/include/obj/NiDynamicEffect.h b/include/obj/NiDynamicEffect.h index d790cbb3f500c9b343402d0adf60eb9dafa2f3fe..d91433666e8e6fb7c211340d88900c7a28414205 100644 --- a/include/obj/NiDynamicEffect.h +++ b/include/obj/NiDynamicEffect.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiAVObject; //#include "../gen/obj_defines.h" @@ -39,25 +39,28 @@ public: NIFLIB_HIDDEN virtual list<NiObjectRef> GetRefs() const; /*! - * Turns effect on and off? Switches list to list of unaffected nodes? + * Gets the current switch state for this effect. Perhaps this turns effect on and off? + * \return The current switch state for this object. */ NIFLIB_API bool GetSwitchState() const; + + /*! + * Sets the current switch state for this effect. Perhaps this turns effect on and off? + * \param[in] value The new switch state for this object. + */ NIFLIB_API void SetSwitchState( bool value ); /*! - * The list of affected nodes? + * Retrieves what appears to be a list of the nodes that will be affected by this effect. + * \return A list of the nodes that will be affected by this effect. */ NIFLIB_API vector<Ref<NiAVObject > > GetAffectedNodes() const; - NIFLIB_API void SetAffectedNodes( const vector<Ref<NiAVObject > >& value ); /*! - * This is probably the list of affected nodes. For some reason i do not - * know the max exporter seems to write pointers instead of links. But it - * doesn't matter because at least in version 4.0.0.2 the list is - * automagically updated by the engine during the load stage. + * Sets what appears to be a list of the nodes that will be affected by this effect. + * \param[in] value A list of the new nodes that will be affected by this effect. */ - NIFLIB_API vector<unsigned int> GetAffectedNodeListPointers() const; - NIFLIB_API void SetAffectedNodeListPointers( const vector<unsigned int >& value ); + NIFLIB_API void SetAffectedNodes( const vector<Ref<NiAVObject > >& value ); protected: NI_DYNAMIC_EFFECT_MEMBERS diff --git a/include/obj/NiExtraData.h b/include/obj/NiExtraData.h index 4a328977b83c2061f2e72f9807d2c5f07b277fa1..50339236729cf61a84a0a19138aa0f32f3b19a4e 100644 --- a/include/obj/NiExtraData.h +++ b/include/obj/NiExtraData.h @@ -16,7 +16,7 @@ class NiExtraData; typedef Ref<NiExtraData> NiExtraDataRef; /*! - * NiExtraData - A generic extra data block. + * NiExtraData - A generic extra data object. */ class NiExtraData : public NI_EXTRA_DATA_PARENT { diff --git a/include/obj/NiFlipController.h b/include/obj/NiFlipController.h index 933f69dcd71da492d2e0079973d5b05368c7f8e6..c37567bffb9923e2f49d8b80237f244bbe93f4c4 100644 --- a/include/obj/NiFlipController.h +++ b/include/obj/NiFlipController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiSourceTexture; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiFloatExtraDataController.h b/include/obj/NiFloatExtraDataController.h index 96b59b30906096b741753fabf6b8ba5807847b94..16ca9fc35bfa194c58416b7cb47b5835ffc22b04 100644 --- a/include/obj/NiFloatExtraDataController.h +++ b/include/obj/NiFloatExtraDataController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiObject; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiFloatInterpolator.h b/include/obj/NiFloatInterpolator.h index 6c3c23f0b0d24d35d295c683cc8baeb04abf5020..08aaee1d42846689fe8bff01716f91344a4d5805 100644 --- a/include/obj/NiFloatInterpolator.h +++ b/include/obj/NiFloatInterpolator.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiFloatData; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiGeomMorpherController.h b/include/obj/NiGeomMorpherController.h index 4a752abb0381449d1a06d38405159f7f4430218c..2d83d57f88675499768d9b902134f5d1fc42bf9e 100644 --- a/include/obj/NiGeomMorpherController.h +++ b/include/obj/NiGeomMorpherController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiMorphData; class NiInterpolator; diff --git a/include/obj/NiGeometry.h b/include/obj/NiGeometry.h index cdae2934d8d074a9d26afa5e180bd419a45d4a43..07783ec970db70e37e6e22155116c27d07fcdafc 100644 --- a/include/obj/NiGeometry.h +++ b/include/obj/NiGeometry.h @@ -12,7 +12,7 @@ All rights reserved. Please see niflib.h for licence. */ namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiObject; class NiGeometryData; class NiSkinInstance; diff --git a/include/obj/NiGeometryData.h b/include/obj/NiGeometryData.h index 38ffdbb724ea4199739f6ec7a13fbb78f28969ef..aadd1a6e9c3bbf92126b37d9b40170b206a5c5f3 100644 --- a/include/obj/NiGeometryData.h +++ b/include/obj/NiGeometryData.h @@ -11,7 +11,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiObject; class NiGeometryData; class NiSkinInstance; @@ -52,14 +52,14 @@ public: NIFLIB_API int GetVertexCount() const; /*! - * Returns the number of texture coordinate sets used by this mesh. For each UV set, there is a pair of texture coordinates for every vertex in the mesh. Each set corresponds to a texture entry in the NiTexturingPropery block. + * Returns the number of texture coordinate sets used by this mesh. For each UV set, there is a pair of texture coordinates for every vertex in the mesh. Each set corresponds to a texture entry in the NiTexturingPropery object. * \return The number of texture cooridnate sets used by this mesh. Can be zero. * \sa IShapeData::SetUVSetCount, ITexturingProperty */ NIFLIB_API short GetUVSetCount() const; /*! - * Changes the number of UV sets used by this mesh. If the new size is smaller, data at the end of the array will be lost. Otherwise it will be retained. The number of UV sets must correspond with the number of textures defined in the corresponding NiTexturingProperty block. + * Changes the number of UV sets used by this mesh. If the new size is smaller, data at the end of the array will be lost. Otherwise it will be retained. The number of UV sets must correspond with the number of textures defined in the corresponding NiTexturingProperty object. * \param n The new size of the uv set array. * \sa IShapeData::GetUVSetCount, ITexturingProperty */ diff --git a/include/obj/NiInterpolator.h b/include/obj/NiInterpolator.h index 18324b9b65c997bb2c80bf108f9c2e51213ec5fe..58e5c83afa619553457b37382bc142ffbd81aa54 100644 --- a/include/obj/NiInterpolator.h +++ b/include/obj/NiInterpolator.h @@ -14,7 +14,7 @@ class NiInterpolator; typedef Ref<NiInterpolator> NiInterpolatorRef; /*! - * NiInterpolator - Interpolator blocks - function unknown. + * NiInterpolator - Interpolator objects - function unknown. */ class NiInterpolator : public NI_INTERPOLATOR_PARENT { diff --git a/include/obj/NiKeyframeController.h b/include/obj/NiKeyframeController.h index 6835017fd9b9ba132bf0772a70a26eaf98a0d7be..c740f88628531485034c3cd5dad3b9be76cf02c5 100644 --- a/include/obj/NiKeyframeController.h +++ b/include/obj/NiKeyframeController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiKeyframeData; //#include "../gen/obj_defines.h" @@ -19,7 +19,7 @@ class NiKeyframeController; typedef Ref<NiKeyframeController> NiKeyframeControllerRef; /*! - * NiKeyframeController - A time controller block for animation key + * NiKeyframeController - A time controller object for animation key * frames. */ diff --git a/include/obj/NiLODNode.h b/include/obj/NiLODNode.h index 1b9469ec863234727815a3f5ed798841d79e69b8..41dbb60c66483ba8a77e812da848e61f8076c6aa 100644 --- a/include/obj/NiLODNode.h +++ b/include/obj/NiLODNode.h @@ -11,7 +11,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiLODData; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiLight.h b/include/obj/NiLight.h index 5df57bb2ab82cd83188481df6f0dd6a0215b6ef8..109abd2cc4d1ae4e6727e8e9aa12f1a09401ae04 100644 --- a/include/obj/NiLight.h +++ b/include/obj/NiLight.h @@ -34,27 +34,51 @@ public: NIFLIB_HIDDEN virtual list<NiObjectRef> GetRefs() const; /*! - * Dimmer. + * Gets the current dimmer value for this light. Used to turn the light intensity up or down. + * \return The current dimmer value. */ NIFLIB_API float GetDimmer() const; + + /*! + * Sets the dimmer value for this light. Used to turn the light intensity up or down. + * \param[in] value The new dimmer value. + */ NIFLIB_API void SetDimmer( float value ); /*! - * Ambient color. + * Gets the current ambient color of this light. + * \return The current ambient color. */ NIFLIB_API Color3 GetAmbientColor() const; + + /*! + * Sets the ambient color of this light. + * \param[in] value The new ambient color. + */ NIFLIB_API void SetAmbientColor( Color3 value ); /*! - * Diffuse color. + * Gets the current diffuse color of this light. + * \return The current diffuse color. */ NIFLIB_API Color3 GetDiffuseColor() const; + + /*! + * Sets the diffuse color of this light. + * \param[in] value The new diffuse color. + */ NIFLIB_API void SetDiffuseColor( Color3 value ); /*! - * Specular color. + * Gets the current specular color of this light. + * \return The current specular color. */ NIFLIB_API Color3 GetSpecularColor() const; + + /*! + * Sets the specular color of this light. + * \param[in] value The new specular color. + */ NIFLIB_API void SetSpecularColor( Color3 value ); protected: diff --git a/include/obj/NiLightColorController.h b/include/obj/NiLightColorController.h index 04c66612aa9ea886906bfbffd61fc010c8c3f477..78e2e7f26c7c13749c6ca88fb6a41db3fae6bc6c 100644 --- a/include/obj/NiLightColorController.h +++ b/include/obj/NiLightColorController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiPosData; class NiPoint3Interpolator; diff --git a/include/obj/NiLightDimmerController.h b/include/obj/NiLightDimmerController.h index 35e0b7a1e7fd9f04f561433521cd8b65a41db91c..99a33bcb391890ff8d0bbb955ab90fe0b8569b4c 100644 --- a/include/obj/NiLightDimmerController.h +++ b/include/obj/NiLightDimmerController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiInterpolator; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiLookAtController.h b/include/obj/NiLookAtController.h index c494be8790af75efcb434e734b74bf7a41d3c690..0461f8fbf28b644d967ca922ea8cc4d13d4f90d6 100644 --- a/include/obj/NiLookAtController.h +++ b/include/obj/NiLookAtController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiNode; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiLookAtInterpolator.h b/include/obj/NiLookAtInterpolator.h index c1596198fd1574cb075088610e0ae6e6c651cbe3..3f49e6c6ec092994b8ece54dcfd867a12b3f03be 100644 --- a/include/obj/NiLookAtInterpolator.h +++ b/include/obj/NiLookAtInterpolator.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiNode; class NiPoint3Interpolator; class NiFloatInterpolator; diff --git a/include/obj/NiMaterialColorController.h b/include/obj/NiMaterialColorController.h index 795eccd06e67b732111ddc39066b06674e2d4bcb..c25776f9f65f4bd75d5ff87e1135f6c3fdf39d24 100644 --- a/include/obj/NiMaterialColorController.h +++ b/include/obj/NiMaterialColorController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiPosData; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiMeshPSysData.h b/include/obj/NiMeshPSysData.h index 99da15a9fdce5c7044b3db41af21edff98452cbe..fc5fb7c3c8dbd947462f2179b9efce5e6690ee2c 100644 --- a/include/obj/NiMeshPSysData.h +++ b/include/obj/NiMeshPSysData.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiPSysModifier; class NiNode; diff --git a/include/obj/NiMorphData.h b/include/obj/NiMorphData.h index d65a34accfc51e9a6fa108f263352132eb549943..66f71667a5484a6ac1795148919c640273988be8 100644 --- a/include/obj/NiMorphData.h +++ b/include/obj/NiMorphData.h @@ -35,14 +35,14 @@ public: NIFLIB_HIDDEN virtual list<NiObjectRef> GetRefs() const; /*! - * Retrieves the number of verticies used in the morph targets. This must be the same as the number of verticies in the base mesh that the morph controller for which this block stores data is attatched. This is not done automatically by Niflib. + * Retrieves the number of verticies used in the morph targets. This must be the same as the number of verticies in the base mesh that the morph controller for which this object stores data is attatched. This is not done automatically by Niflib. * \return The number of vertices used in the morph target meshes. * \sa NiMorphData::SetVertexCount */ NIFLIB_API int GetVertexCount() const; /*! - * Sets the number of verticies used in the morph targets. This must be the same as the number of verticies in the base mesh that the morph controller for which this block stores data is attatched. This is not done automatically by Niflib. If the new size is smaller, vertices at the ends of the morph targets will be lost. + * Sets the number of verticies used in the morph targets. This must be the same as the number of verticies in the base mesh that the morph controller for which this object stores data is attatched. This is not done automatically by Niflib. If the new size is smaller, vertices at the ends of the morph targets will be lost. * \param n The new size of the morph target's vertex arrays. * \sa NiMorphData::GetVertexCount */ diff --git a/include/obj/NiMultiTargetTransformController.h b/include/obj/NiMultiTargetTransformController.h index 0d0fdd8653686d1d9374c1032da59c44a3e38bc7..24de3b679729232002c2c75713cc729bec7383ee 100644 --- a/include/obj/NiMultiTargetTransformController.h +++ b/include/obj/NiMultiTargetTransformController.h @@ -8,7 +8,7 @@ All rights reserved. Please see niflib.h for licence. */ namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiNode; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiNode.h b/include/obj/NiNode.h index 0367461e7dffcbee6d271ed2b41db7cba61716fc..6da1067be8b4d2fb574ea8853b82d05673826506 100644 --- a/include/obj/NiNode.h +++ b/include/obj/NiNode.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiAVObject; class NiDynamicEffect; @@ -22,7 +22,7 @@ class NiSkinInstance; typedef Ref<NiNode> NiNodeRef; /*! - * NiNode - Generic node block for grouping. + * NiNode - Generic node object for grouping. */ class NiNode : public NI_NODE_PARENT { diff --git a/include/obj/NiObject.h b/include/obj/NiObject.h index 9c4cad0723af27647335b3bc59cd77a75947a02a..d9311b1e546e107454f94b21b10645546a785ebb 100644 --- a/include/obj/NiObject.h +++ b/include/obj/NiObject.h @@ -84,21 +84,7 @@ public: /*! * Summarizes the information contained in this object in English. * \param[in] verbose Determines whether or not detailed information about large areas of data will be printed out. - * \return A string containing a summary of the information within the block in English. This is the function that Niflyze calls to generate its analysis, so the output is the same. - * - * <b>Example:</b> - * \code - * blk_ref my_block = ReadNifTree("test_in.nif"); - * cout << my_block->asString(); - * \endcode - * - * <b>In Python:</b> - * \code - * my_block = ReadNifTree("test_in.nif") - * print block.asString() - * \endcode - * - * \sa IAttr::asString, SetVerboseMode + * \return A string containing a summary of the information within the object in English. This is the function that Niflyze calls to generate its analysis, so the output is the same. */ NIFLIB_API virtual string asString( bool verbose = false ) const; diff --git a/include/obj/NiObjectNET.h b/include/obj/NiObjectNET.h index e0002d0f8b0be97296b26074ff109ca75f336ce9..9db6eb51649f89b6d5166b2148cb4190fb2b1e2c 100644 --- a/include/obj/NiObjectNET.h +++ b/include/obj/NiObjectNET.h @@ -8,7 +8,7 @@ All rights reserved. Please see niflib.h for licence. */ namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiExtraData; class NiTimeController; diff --git a/include/obj/NiPSysAgeDeathModifier.h b/include/obj/NiPSysAgeDeathModifier.h index 90a27613d6494715b4082c9fce7c176800114d1f..9c5cc75d82ccd3087a934e02b994a85835b03b03 100644 --- a/include/obj/NiPSysAgeDeathModifier.h +++ b/include/obj/NiPSysAgeDeathModifier.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiPSysSpawnModifier; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiPSysBombModifier.h b/include/obj/NiPSysBombModifier.h index 17008e4be07635a79d7ea988edc8d82bbf4512e7..31aca5d950e5a514e49027e96c0be8599737b24a 100644 --- a/include/obj/NiPSysBombModifier.h +++ b/include/obj/NiPSysBombModifier.h @@ -7,7 +7,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "NiPSysModifier.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiNode; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiPSysColliderManager.h b/include/obj/NiPSysColliderManager.h index c2053595b8faaa32138e9e0ae7e9e8b4906a467c..c7210acf32478bbf74430b2857cdf27b449806ce 100644 --- a/include/obj/NiPSysColliderManager.h +++ b/include/obj/NiPSysColliderManager.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiPSysPlanarCollider; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiPSysColorModifier.h b/include/obj/NiPSysColorModifier.h index 8d1a7e0b483772af38b811bd586ecd9d4a094660..33615427ef861f3b2b3f7ac4c0ef621a6424c9ab 100644 --- a/include/obj/NiPSysColorModifier.h +++ b/include/obj/NiPSysColorModifier.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiColorData; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiPSysDragModifier.h b/include/obj/NiPSysDragModifier.h index ae6553c018be400151c0cb35b530173ea5595a8f..c1e42dfa0b642d698c4249136df1d1d68666bb77 100644 --- a/include/obj/NiPSysDragModifier.h +++ b/include/obj/NiPSysDragModifier.h @@ -7,7 +7,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "NiPSysModifier.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiObject; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiPSysEmitterCtlr.h b/include/obj/NiPSysEmitterCtlr.h index c5c9fb0cf877a72c7714627963fb8e3afa30f097..f232faec5098b88bbe6de0a96c047ac484167f59 100644 --- a/include/obj/NiPSysEmitterCtlr.h +++ b/include/obj/NiPSysEmitterCtlr.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiPSysEmitterCtlrData; class NiInterpolator; diff --git a/include/obj/NiPSysEmitterLifeSpanCtlr.h b/include/obj/NiPSysEmitterLifeSpanCtlr.h index 0f92ef92502b0bad25fb03268f6d1bc983dd2c15..c787b62762ca5e154f96e642531b49f0003f8e90 100644 --- a/include/obj/NiPSysEmitterLifeSpanCtlr.h +++ b/include/obj/NiPSysEmitterLifeSpanCtlr.h @@ -10,7 +10,7 @@ namespace Niflib { //#include "../gen/obj_defines.h" -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiFloatData; class NiPSysEmitterLifeSpanCtlr; diff --git a/include/obj/NiPSysEmitterSpeedCtlr.h b/include/obj/NiPSysEmitterSpeedCtlr.h index a45127f7c682836d3baf9a613fe65aa018bdf63d..be5ab9debdf309e67a512d9aa302b83a2be23c8a 100644 --- a/include/obj/NiPSysEmitterSpeedCtlr.h +++ b/include/obj/NiPSysEmitterSpeedCtlr.h @@ -7,7 +7,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "APSysCtlr.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiFloatData; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiPSysGravityModifier.h b/include/obj/NiPSysGravityModifier.h index 091f51ef82d7cf30eb1f21f1da1fbce3ccd26162..79794fb18ce7b3b258edf00013c85a8f01881c4c 100644 --- a/include/obj/NiPSysGravityModifier.h +++ b/include/obj/NiPSysGravityModifier.h @@ -7,7 +7,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "NiPSysModifier.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiNode; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiPSysGravityStrengthCtlr.h b/include/obj/NiPSysGravityStrengthCtlr.h index 0f3aa7e5c9c51d3537469fc73bb803f4e872319d..beffe909020492647e6afb8a93ebbbb500135a4d 100644 --- a/include/obj/NiPSysGravityStrengthCtlr.h +++ b/include/obj/NiPSysGravityStrengthCtlr.h @@ -7,7 +7,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "APSysCtlr.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiFloatData; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiPSysMeshEmitter.h b/include/obj/NiPSysMeshEmitter.h index a98aec5369f17e139f518e4cfc016f904767783b..0c8f72b2f68a535640a3af7fab796adc4bffef8e 100644 --- a/include/obj/NiPSysMeshEmitter.h +++ b/include/obj/NiPSysMeshEmitter.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiTriBasedGeom; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiPSysMeshUpdateModifier.h b/include/obj/NiPSysMeshUpdateModifier.h index 6545240e5acb66e18857a6a8758b9dbe7f89e584..6a69d23c51ed9ff47691eaf094ebdc87303f6357 100644 --- a/include/obj/NiPSysMeshUpdateModifier.h +++ b/include/obj/NiPSysMeshUpdateModifier.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiNode; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiPSysModifier.h b/include/obj/NiPSysModifier.h index 2acafa5d4ca0ad78e799a661b1272e0cb65a9240..af8770c162e46d69924d15f3c73b2ff5ea3c3cd4 100644 --- a/include/obj/NiPSysModifier.h +++ b/include/obj/NiPSysModifier.h @@ -7,7 +7,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "NiObject.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiParticleSystem; //#include "../gen/obj_defines.h" @@ -16,7 +16,7 @@ class NiPSysModifier; typedef Ref<NiPSysModifier> NiPSysModifierRef; /*! - * NiPSysModifier - Generic particle system modifier block. + * NiPSysModifier - Generic particle system modifier object. */ class NiPSysModifier : public NI_P_SYS_MODIFIER_PARENT { diff --git a/include/obj/NiPSysPlanarCollider.h b/include/obj/NiPSysPlanarCollider.h index a67254480680c66fff3eb55dd3a90048d32f01e6..fecc5bc51b5caa1f73a4e10f6a9c203feb7ec8ae 100644 --- a/include/obj/NiPSysPlanarCollider.h +++ b/include/obj/NiPSysPlanarCollider.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiPSysSpawnModifier; class NiObject; class NiNode; diff --git a/include/obj/NiPSysVolumeEmitter.h b/include/obj/NiPSysVolumeEmitter.h index d47ea75aa6ad35d28451b2e3edc92383963b9d94..31e5f18e6af843dbe8796f0083bfb86743427617 100644 --- a/include/obj/NiPSysVolumeEmitter.h +++ b/include/obj/NiPSysVolumeEmitter.h @@ -7,7 +7,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "NiPSysEmitter.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiNode; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiPalette.h b/include/obj/NiPalette.h index c658080716defc36819758b405703946bfc79eb4..6813dd75a3d27fd75e2465fc311518557804598a 100644 --- a/include/obj/NiPalette.h +++ b/include/obj/NiPalette.h @@ -32,13 +32,13 @@ public: NIFLIB_HIDDEN virtual void FixLinks( const map<unsigned int,NiObjectRef> & objects, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual list<NiObjectRef> GetRefs() const; - /*! Retrieves the palette data from this palette block. + /*! Retrieves the palette data from this palette object. * \return A vector containing the the colors stored in the palette. * \sa NiPalette::SetPalette */ NIFLIB_API vector<Color4> GetPalette() const; - /*! Sets the palette data for this palette block. + /*! Sets the palette data for this palette object. * \param new_pal A vector containing the the new colors to be stored in the palette. * \sa NiPalette::GetPalette */ diff --git a/include/obj/NiParticleColorModifier.h b/include/obj/NiParticleColorModifier.h index 4e331acd421558a5bae8ac6fd02886434f90e162..4308f5729775bec54f224dcd8723a5e0f94263df 100644 --- a/include/obj/NiParticleColorModifier.h +++ b/include/obj/NiParticleColorModifier.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiColorData; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiParticleMeshModifier.h b/include/obj/NiParticleMeshModifier.h index 0f8991b8272895d529c31b549327ba91b8ded4d4..d04d97fa5b39c96ee6d0cb2d24fd6c34cad4dd28 100644 --- a/include/obj/NiParticleMeshModifier.h +++ b/include/obj/NiParticleMeshModifier.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiAVObject; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiParticleMeshesData.h b/include/obj/NiParticleMeshesData.h index a4b2c32e669aade06362fbf265d2f0fc158ba593..2c1971143fb6d40e30cf4c8c6a16826e46835e95 100644 --- a/include/obj/NiParticleMeshesData.h +++ b/include/obj/NiParticleMeshesData.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiAVObject; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiParticleSystem.h b/include/obj/NiParticleSystem.h index 375c2498a0fec1a4924fdb1286a97c56c77fc524..08b380360060e5a2b9a7485bf58c36f656bbf803 100644 --- a/include/obj/NiParticleSystem.h +++ b/include/obj/NiParticleSystem.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiPSysModifier; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiParticleSystemController.h b/include/obj/NiParticleSystemController.h index 5563bf777a12a5dcd32e832d5e402e4b67af29ab..1045db99e68cf58f60ba91323c77c96b535178f1 100644 --- a/include/obj/NiParticleSystemController.h +++ b/include/obj/NiParticleSystemController.h @@ -11,7 +11,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../gen/Particle.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiObject; class AParticleModifier; @@ -22,7 +22,7 @@ typedef Ref<NiParticleSystemController> NiParticleSystemControllerRef; /*! * NiParticleSystemController - A generic particle system time controller - * block. + * object. */ class NiParticleSystemController : public NI_PARTICLE_SYSTEM_CONTROLLER_PARENT { diff --git a/include/obj/NiParticlesData.h b/include/obj/NiParticlesData.h index fceadde10c883d9ac0c1d9ff9e96328d25a75b09..28889f817677f5ec9e6ea6f3f8566a50993c7ad5 100644 --- a/include/obj/NiParticlesData.h +++ b/include/obj/NiParticlesData.h @@ -14,7 +14,7 @@ class NiParticlesData; typedef Ref<NiParticlesData> NiParticlesDataRef; /*! - * NiParticlesData - Generic rotating particles data block. + * NiParticlesData - Generic rotating particles data object. */ class NiParticlesData : public NI_PARTICLES_DATA_PARENT { diff --git a/include/obj/NiPathController.h b/include/obj/NiPathController.h index f4602a80f31662b9af3396869fc34053042c43b4..6c66a5d6705ba3673a6c5761ba6e0140a2ca7c3a 100644 --- a/include/obj/NiPathController.h +++ b/include/obj/NiPathController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiPosData; class NiFloatData; diff --git a/include/obj/NiPathInterpolator.h b/include/obj/NiPathInterpolator.h index 6155bff2814ca5e51a158eac64184b3b09be2516..57b2b7ecfbd5af23e75026f39fa042cf35463f0d 100644 --- a/include/obj/NiPathInterpolator.h +++ b/include/obj/NiPathInterpolator.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiPosData; class NiFloatData; diff --git a/include/obj/NiPixelData.h b/include/obj/NiPixelData.h index d979a8efade49c636c7a3abb428293c9309cc0f6..2de7cf827c33d144f553c66d04ba48c580660433 100644 --- a/include/obj/NiPixelData.h +++ b/include/obj/NiPixelData.h @@ -11,7 +11,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../gen/ByteArray.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiPalette; //#include "../gen/obj_defines.h" @@ -39,20 +39,20 @@ public: NIFLIB_HIDDEN virtual void FixLinks( const map<unsigned int,NiObjectRef> & objects, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual list<NiObjectRef> GetRefs() const; - /*! Retrieves the height of the texture image stored in this block. - * \return The height of the texture image stored in this block. + /*! Retrieves the height of the texture image stored in this object. + * \return The height of the texture image stored in this object. * \sa NiPixelData::GetWidth, NiPixelData::GetPixelFormat */ NIFLIB_API int GetHeight() const; - /*! Retrieves the width of the texture image stored in this block. - * \return The width of the texture image stored in this block. + /*! Retrieves the width of the texture image stored in this object. + * \return The width of the texture image stored in this object. * \sa NiPixelData::GetHeight, NiPixelData::GetPixelFormat */ NIFLIB_API int GetWidth() const; - /*! Retrieves the pixel format of the texture image stored in this block. - * \return The pixel format of the texture image stored in this block. + /*! Retrieves the pixel format of the texture image stored in this object. + * \return The pixel format of the texture image stored in this object. * \sa NiPixelData::GetWidth, NiPixelData::GetHeight */ NIFLIB_API PixelFormat GetPixelFormat() const; @@ -65,14 +65,14 @@ public: */ NIFLIB_API void Reset( int new_width, int new_height, PixelFormat px_fmt ); - /*! Retrieves the the pixels of the texture image stored in this block. This function does not work on palettized textures. - * \return A vector containing the colors of each pixel in the texture image stored in this block, one row after another starting from the bottom of the image. The width of the image must be used to interpret them correctly. + /*! Retrieves the the pixels of the texture image stored in this object. This function does not work on palettized textures. + * \return A vector containing the colors of each pixel in the texture image stored in this object, one row after another starting from the bottom of the image. The width of the image must be used to interpret them correctly. * \sa NiPixelData::SetColors, NiPixelData::GetWidth */ NIFLIB_API vector<Color4> GetColors() const; - /*! Sets the the pixels of the texture image stored in this block and optionally generates mipmaps. This function does not work for palettized textures. - * \param new_pixels A vector containing the colors of each new pixel to be set in the texture image stored in this block, one row after another starting from the botom of the image. + /*! Sets the the pixels of the texture image stored in this object and optionally generates mipmaps. This function does not work for palettized textures. + * \param new_pixels A vector containing the colors of each new pixel to be set in the texture image stored in this object, one row after another starting from the botom of the image. * \param generate_mipmaps If true, mipmaps will be generated for the new image and stored in the file. * \sa NiPixelData::GetColors, NiPixelData::GetWidth */ diff --git a/include/obj/NiPoint3Interpolator.h b/include/obj/NiPoint3Interpolator.h index 19b21bd5571f7f09163c1af81d270fa50a2dd75b..9bdde06dcf6c3427b9d4803bf2dde6a112ed6018 100644 --- a/include/obj/NiPoint3Interpolator.h +++ b/include/obj/NiPoint3Interpolator.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiPosData; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiPointLight.h b/include/obj/NiPointLight.h index fcf59ba74ff4f14268dd8e4c31ccc0d6a793a4cf..8fdc2c17c83e3e61a72c9123d1994466d58f5bd6 100644 --- a/include/obj/NiPointLight.h +++ b/include/obj/NiPointLight.h @@ -34,21 +34,39 @@ public: NIFLIB_HIDDEN virtual list<NiObjectRef> GetRefs() const; /*! - * Constant Attenuation + * Gets the current constant attenuation of this point light. + * \return The constant attentuation. */ NIFLIB_API float GetConstantAttenuation() const; + + /*! + * Sets the constant attenuation of this point light. + * \param[in] value The new constant attentuation. + */ NIFLIB_API void SetConstantAttenuation( float value ); /*! - * Linear Attenuation + * Gets the current linear attenuation of this point light. + * \return The linear attentuation. */ NIFLIB_API float GetLinearAttenuation() const; + + /*! + * Sets the linear attenuation of this point light. + * \param[in] value The new linear attentuation. + */ NIFLIB_API void SetLinearAttenuation( float value ); /*! - * Quadratic Attenuation (see glLight) + * Gets the current quadratic attenuation of this point light. + * \return The quadratic attentuation. */ NIFLIB_API float GetQuadraticAttenuation() const; + + /*! + * Sets the quadratic attenuation of this point light. + * \param[in] value The new quadratic attentuation. + */ NIFLIB_API void SetQuadraticAttenuation( float value ); protected: diff --git a/include/obj/NiProperty.h b/include/obj/NiProperty.h index feed68035bf9ac2ea22c9e4870db28656df6ef6d..29012bf894c5bc5f5cb8105511a1666f499c5dab 100644 --- a/include/obj/NiProperty.h +++ b/include/obj/NiProperty.h @@ -13,7 +13,7 @@ class NiProperty; typedef Ref<NiProperty> NiPropertyRef; /*! - * NiProperty - A generic property block. + * NiProperty - A generic property object. */ class NiProperty : public NI_PROPERTY_PARENT { diff --git a/include/obj/NiRotatingParticlesData.h b/include/obj/NiRotatingParticlesData.h index e88ab9602e7266f69a72264944194b555b085228..52689a61d1da1441f6e081f45799dac78684615e 100644 --- a/include/obj/NiRotatingParticlesData.h +++ b/include/obj/NiRotatingParticlesData.h @@ -13,7 +13,7 @@ class NiRotatingParticlesData; typedef Ref<NiRotatingParticlesData> NiRotatingParticlesDataRef; /*! - * NiRotatingParticlesData - Rotating particles data block. + * NiRotatingParticlesData - Rotating particles data object. */ class NiRotatingParticlesData : public NI_ROTATING_PARTICLES_DATA_PARENT { diff --git a/include/obj/NiSingleInterpolatorController.h b/include/obj/NiSingleInterpolatorController.h index ada6f8f94210a436105e42fec1259fbc1900da79..47c6f7b7283c812598be95dfe938a0ad0070e2fd 100644 --- a/include/obj/NiSingleInterpolatorController.h +++ b/include/obj/NiSingleInterpolatorController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiInterpolator; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiSkinData.h b/include/obj/NiSkinData.h index d4978f0ca39cd485db88f2b6fe6cbd0075424487..99221d6b1384bfee83ead11958e618f1d3430339 100644 --- a/include/obj/NiSkinData.h +++ b/include/obj/NiSkinData.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../gen/SkinData.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiSkinPartition; class NiGeometry; diff --git a/include/obj/NiSkinInstance.h b/include/obj/NiSkinInstance.h index 764ca5ec6e62596c2e16cb94c10643abc7079f58..1c3eec1aadc164c725d023fba6274923e12351fa 100644 --- a/include/obj/NiSkinInstance.h +++ b/include/obj/NiSkinInstance.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiSkinData; class NiSkinPartition; class NiNode; diff --git a/include/obj/NiSourceTexture.h b/include/obj/NiSourceTexture.h index 5c4549bcae0f5f55f37f0004b668219a9f3a6fee..9f48213e0400f391fc695af4982ed4da2a18478c 100644 --- a/include/obj/NiSourceTexture.h +++ b/include/obj/NiSourceTexture.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiObject; class NiPixelData; diff --git a/include/obj/NiSpotLight.h b/include/obj/NiSpotLight.h index c9d2ab05093570d4052a9b89b50eb10a229e57c0..ad37962782add82eaa533d71bb51444f80d16f43 100644 --- a/include/obj/NiSpotLight.h +++ b/include/obj/NiSpotLight.h @@ -34,15 +34,27 @@ public: NIFLIB_HIDDEN virtual list<NiObjectRef> GetRefs() const; /*! - * The opening angle of the spot. + * Retrieves the opening angle of the spot light. + * \return The cutoff angle. */ NIFLIB_API float GetCutoffAngle() const; + + /*! + * Sets the opening angle of the spot light. + * \param[in] value The new cutoff angle. + */ NIFLIB_API void SetCutoffAngle( float value ); /*! - * Describes the distribution of light. (see: glLight) + * Retrieves the exponent of this spot light. This describes the distribution of light. See glLight in OpenGL. + * \return The exponent value. */ NIFLIB_API float GetExponent() const; + + /*! + * Sets the exponent of this spot light. This describes the distribution of light. See glLight in OpenGL. + * \param[in] value The new exponent value. + */ NIFLIB_API void SetExponent( float value ); protected: diff --git a/include/obj/NiStringExtraData.h b/include/obj/NiStringExtraData.h index 38daa541ce1ba284a9005a39e871e2f8136248c0..41c430b2997eb9ddd899fbd65810b1fb7c864d5f 100644 --- a/include/obj/NiStringExtraData.h +++ b/include/obj/NiStringExtraData.h @@ -16,7 +16,7 @@ typedef Ref<NiStringExtraData> NiStringExtraDataRef; /*! * NiStringExtraData - Apparently commands for an optimizer instructing * it to keep things it would normally discard. Also refers to NiNode - * blocks (through their name) in animation .kf files. + * objects (through their name) in animation .kf files. */ class NiStringExtraData : public NI_STRING_EXTRA_DATA_PARENT { diff --git a/include/obj/NiStringPalette.h b/include/obj/NiStringPalette.h index 329e25d6bf9213771034e800256a42e99f34e7de..e23f6bfbaeb9736654f52a9d15fa0b3f92d22ac1 100644 --- a/include/obj/NiStringPalette.h +++ b/include/obj/NiStringPalette.h @@ -18,7 +18,7 @@ typedef Ref<NiStringPalette> NiStringPaletteRef; /*! * NiStringPalette - List of 0x00-seperated strings, which are names of - * controlled blocks and controller types. Used in .kf files in + * controlled objects and controller types. Used in .kf files in * conjunction with NiControllerSequence. */ diff --git a/include/obj/NiTextureEffect.h b/include/obj/NiTextureEffect.h index 596ed37e3100bb929ab7a0573edabc88ad14bd2c..08e071123a6cb07ae31129cc4af77eade0ddc314 100644 --- a/include/obj/NiTextureEffect.h +++ b/include/obj/NiTextureEffect.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiSourceTexture; //#include "../gen/obj_defines.h" @@ -20,9 +20,9 @@ typedef Ref<NiTextureEffect> NiTextureEffectRef; /*! * NiTextureEffect - Enables environment mapping. Should be in both the - * children list and effects list of the NiTriShape block. For Morrowind: + * children list and effects list of the NiTriShape object. For Morrowind: * the bump map can be used to bump the environment map (note that the - * bump map is ignored if no NiTextureEffect block is present). + * bump map is ignored if no NiTextureEffect object is present). */ class NiTextureEffect : public NI_TEXTURE_EFFECT_PARENT { @@ -42,68 +42,145 @@ public: NIFLIB_HIDDEN virtual list<NiObjectRef> GetRefs() const; /*! - * Model projection matrix. Always identity? + * Retrives the model projection matrix of this effect. This always seems to be set to the identity. + * \return The model projection matrix. */ NIFLIB_API Matrix33 GetModelProjectionMatrix() const; + + /*! + * Sets the model projection matrix of this effect. This always seems to be set to the identity. + * \param[in] value The new model projection matrix. + */ NIFLIB_API void SetModelProjectionMatrix( Matrix33 value ); /*! - * Model projection transform. Always (0,0,0)? + * Retrieves the model projection transform of this effect. This always seems to be set to (0,0,0). + * \return The model projection transform. */ NIFLIB_API Vector3 GetModelProjectionTransform() const; + + /*! + * Sets the model projection transform of this effect. This always seems to be set to (0,0,0). + * \param[in] value The new model projection transform. + */ NIFLIB_API void SetModelProjectionTransform( Vector3 value ); /*! - * 0: FILTER_NEAREST 1: FILTER_BILERP 2: FILTER_TRILERP (Usual value) 3: - * FILTER_NEAREST_MIPNEAREST 4: FILTER_NEAREST_MIPLERP 5: - * FILTER_BILERP_MIPNAREST + * Retrieves the texture filtering mode used by this effect. + * \return The texture filtering mode. */ NIFLIB_API TexFilterMode GetTextureFiltering() const; + + /*! + * Sets the texture filtering mode used by this effect. + * \param[in] value The new texture filtering mode. + */ NIFLIB_API void SetTextureFiltering( TexFilterMode value ); /*! - * 0: CLAMP_S_CLAMP (Common value) 1: CLAMP_S_WRAP 2: WRAP_S_CLAMP_T 3: - * WRAP_S_WRAP_T (Common value) + * Retrieves the texture clamping mode used by this effect. + * \return The texture clamping mode. */ NIFLIB_API TexClampMode GetTextureClamping() const; + + /*! + * Sets the texture clamping mode used by this effect. + * \param[in] value The new texture clamping mode. + */ NIFLIB_API void SetTextureClamping( TexClampMode value ); /*! - * 0: PROJECTED_LIGHT 1: PROJECTED_SHADOW 2: ENVIRONMENT_MAP (Usual - * value) 3: FOG_MAP + * Retrieves the texture type used by this effect. Valid values are: + * 0: PROJECTED_LIGHT + * 1: PROJECTED_SHADOW + * 2: ENVIRONMENT_MAP (Usual value) + * 3: FOG_MAP + * \return The texture type. */ NIFLIB_API unsigned int GetTextureType() const; + + /*! + * Sets the texture type used by this effect. Valid values are: + * 0: PROJECTED_LIGHT + * 1: PROJECTED_SHADOW + * 2: ENVIRONMENT_MAP (Usual value) + * 3: FOG_MAP + * \param[in] value The new texture type. + */ NIFLIB_API void SetTextureType( unsigned int value ); /*! - * 0: WORLD_PARALLEL 1: WORLD_PERSPECTIVE 2: SPHERE_MAP (Usual value) 3: - * SPECULAR_CUBE_MAP 4: DIFFUSE_CUBE_MAP + * Retrieves the texture coordinate generation mode. Valid values are: + * 0: WORLD_PARALLEL + * 1: WORLD_PERSPECTIVE + * 2: SPHERE_MAP (Usual value) + * 3: SPECULAR_CUBE_MAP + * 4: DIFFUSE_CUBE_MAP + * \return The texture coordinate generation mode. */ NIFLIB_API unsigned int GetCoordinateGenerationType() const; + + /*! + * Sets the texture coordinate generation mode. Valid values are: + * 0: WORLD_PARALLEL + * 1: WORLD_PERSPECTIVE + * 2: SPHERE_MAP (Usual value) + * 3: SPECULAR_CUBE_MAP + * 4: DIFFUSE_CUBE_MAP + * \return The new texture coordinate generation mode. + */ NIFLIB_API void SetCoordinateGenerationType( unsigned int value ); /*! - * Source texture index. + * Retrieves the source texture index. + * \return The source texture index. */ NIFLIB_API Ref<NiSourceTexture > GetSourceTexture() const; + + /*! + * Sets the source texture index. + * \param[in] value The new source texture index. + */ NIFLIB_API void SetSourceTexture( Ref<NiSourceTexture > value ); /*! - * 0: Disabled (Usual value) 1: Enabled + * Retrieves the clipping plane behavior. Valid values are: + * 0: Disabled (Usual value) + * 1: Enabled + * \return The clipping plane behavior. */ NIFLIB_API byte GetClippingPlane() const; + + /*! + * Sets the clipping plane behavior. Valid values are: + * 0: Disabled (Usual value) + * 1: Enabled + * \param[in] value The new clipping plane behavior. + */ NIFLIB_API void SetClippingPlane( byte value ); /*! - * 0? + * Retrieves a Playstation 2 - specific value. Can just be left at the default of 0. + * \return The PS2 L value. */ NIFLIB_API unsigned short GetPs2L() const; + + /*! + * Sets a Playstation 2 - specific value. Can just be left at the default of 0. + * \param[in] The new PS2 L value. + */ NIFLIB_API void SetPs2L( unsigned short value ); /*! - * 0xFFB5? + * Retrieves a Playstation 2 - specific value. Can just be left at the default of 0xFFB5. + * \return The PS2 K value. */ NIFLIB_API unsigned short GetPs2K() const; + + /*! + * Sets a Playstation 2 - specific value. Can just be left at the default of 0xFFB5. + * \param[in] The new PS2 K value. + */ NIFLIB_API void SetPs2K( unsigned short value ); protected: diff --git a/include/obj/NiTextureProperty.h b/include/obj/NiTextureProperty.h index 033110481fba5645bc3ffa03bd7911bb2f295bde..76fd82ed600b4af31dbce5b786e76cd42198e0e0 100644 --- a/include/obj/NiTextureProperty.h +++ b/include/obj/NiTextureProperty.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiImage; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiTextureTransformController.h b/include/obj/NiTextureTransformController.h index 0bf12570934244177f4e551aacec40d7dbcdc50c..486faadf158a228e695a379f99457e37e463ddcb 100644 --- a/include/obj/NiTextureTransformController.h +++ b/include/obj/NiTextureTransformController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiFloatData; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiTimeController.h b/include/obj/NiTimeController.h index b34a646b4efedd5dbffbdf05f4140ce55504df32..feed93d53de069db6ce58de9ecf25f1962ac4ebb 100644 --- a/include/obj/NiTimeController.h +++ b/include/obj/NiTimeController.h @@ -18,7 +18,7 @@ class NiObjectNET; typedef Ref<NiTimeController> NiTimeControllerRef; /*! - * NiTimeController - A generic time controller block. + * NiTimeController - A generic time controller object. */ class NiTimeController : public NI_TIME_CONTROLLER_PARENT { diff --git a/include/obj/NiTransformInterpolator.h b/include/obj/NiTransformInterpolator.h index 1f20d42f8d08b74374c28e2c84fde2dbc45638d1..2bb8d78e0b560f02fb724750a1bfee11d4741cf2 100644 --- a/include/obj/NiTransformInterpolator.h +++ b/include/obj/NiTransformInterpolator.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiTransformData; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiTriBasedGeom.h b/include/obj/NiTriBasedGeom.h index 98176509e18ecf229fb78a27ed46fa352bbeb52e..5ea67e342393d276c799ae454ad1da724664b09d 100644 --- a/include/obj/NiTriBasedGeom.h +++ b/include/obj/NiTriBasedGeom.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects //#include "../gen/obj_defines.h" @@ -40,7 +40,7 @@ public: NIFLIB_API void GenHardwareSkinInfo( int max_bones_per_partition = 4, int max_bones_per_vertex = 4 ); /*! - * Generate or update a NiStringExtraData block with precalculated + * Generate or update a NiStringExtraData object with precalculated * tangent and binormal data (Oblivion specific) */ NIFLIB_API void UpdateTangentSpace(); diff --git a/include/obj/NiTriBasedGeomData.h b/include/obj/NiTriBasedGeomData.h index 638b55cfab7aa46d6cf8b5816cb03ffc48a9fe0d..930cefd4a4b0b41f67753d9aa8876c2a3af49334 100644 --- a/include/obj/NiTriBasedGeomData.h +++ b/include/obj/NiTriBasedGeomData.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiObject; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiUVController.h b/include/obj/NiUVController.h index b540a142c45ec94678fd08ba9b915e5999e56bd0..4d5c55d125d72c0c58c3fe98c5ccaa723bbc8691 100644 --- a/include/obj/NiUVController.h +++ b/include/obj/NiUVController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiUVData; //#include "../gen/obj_defines.h" diff --git a/include/obj/NiVertexColorProperty.h b/include/obj/NiVertexColorProperty.h index e8efb86a2c998dfb810fa3cf0cd70c7c033241f6..fb0ee1dd7c5419c2a972647fb025087dc06d26cc 100644 --- a/include/obj/NiVertexColorProperty.h +++ b/include/obj/NiVertexColorProperty.h @@ -14,9 +14,9 @@ class NiVertexColorProperty; typedef Ref<NiVertexColorProperty> NiVertexColorPropertyRef; /*! - * NiVertexColorProperty - Property of vertex colors. This block is - * referred to by the root block of the NIF file whenever some - * NiTriShapeData block has vertex colors with non-default settings; if + * NiVertexColorProperty - Property of vertex colors. This object is + * referred to by the root object of the NIF file whenever some + * NiTriShapeData object has vertex colors with non-default settings; if * not present, vertex colors have vertex_mode=2 and lighting_mode=1. */ diff --git a/include/obj/NiVisController.h b/include/obj/NiVisController.h index c308fc97613997f1aff72b4fa32005900427b0b4..93c160072d92b655dfabb0cf0dee50c4bba7633d 100644 --- a/include/obj/NiVisController.h +++ b/include/obj/NiVisController.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiVisData; //#include "../gen/obj_defines.h" diff --git a/include/obj/bhkEntity.h b/include/obj/bhkEntity.h index 6f244acd34ad40d2bff7df804aac02cc698e94a4..c4d118671c4f7f689fb26079dc05c8ffaadaebf1 100644 --- a/include/obj/bhkEntity.h +++ b/include/obj/bhkEntity.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class bhkShape; //#include "../gen/obj_defines.h" diff --git a/include/obj/bhkListShape.h b/include/obj/bhkListShape.h index 2e4603757c59871ce39ae3d19222c0b990b3aae4..af8270f10d5f185488fd849acd6fd825b1360f52 100644 --- a/include/obj/bhkListShape.h +++ b/include/obj/bhkListShape.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class bhkShape; //#include "../gen/obj_defines.h" diff --git a/include/obj/bhkMalleableConstraint.h b/include/obj/bhkMalleableConstraint.h index 4d98f6630bc2cb7dc060f1f44b237df93f3a5bf5..7975d1f4823374258cd87b93f4458bb164c10ddf 100644 --- a/include/obj/bhkMalleableConstraint.h +++ b/include/obj/bhkMalleableConstraint.h @@ -12,7 +12,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../gen/LimitedHingeDescriptor.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiObject; //#include "../gen/obj_defines.h" diff --git a/include/obj/bhkMoppBvTreeShape.h b/include/obj/bhkMoppBvTreeShape.h index 66694f89333ad5231a32642e7ea99f3a6a823510..5a8fa1d8e89f9655cb11e82ba08f62af672f4b72 100644 --- a/include/obj/bhkMoppBvTreeShape.h +++ b/include/obj/bhkMoppBvTreeShape.h @@ -10,7 +10,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class bhkShape; //#include "../gen/obj_defines.h" diff --git a/include/obj/bhkNiTriStripsShape.h b/include/obj/bhkNiTriStripsShape.h index f7f77dfef920c51ca51a059dcf92ca40da7235ca..2f6acfc80d5a8d59d94b52da748c60ce02e854ee 100644 --- a/include/obj/bhkNiTriStripsShape.h +++ b/include/obj/bhkNiTriStripsShape.h @@ -11,7 +11,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../gen/OblivionColFilter.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class NiTriStripsData; //#include "../gen/obj_defines.h" diff --git a/include/obj/bhkPackedNiTriStripsShape.h b/include/obj/bhkPackedNiTriStripsShape.h index 77d77a87a270398e4496e60eaaf2e0e6f3ff7e4e..f006efa8b08be0f321377de848bb12571a342aa7 100644 --- a/include/obj/bhkPackedNiTriStripsShape.h +++ b/include/obj/bhkPackedNiTriStripsShape.h @@ -11,7 +11,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../gen/OblivionSubShape.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class hkPackedNiTriStripsData; //#include "../gen/obj_defines.h" diff --git a/include/obj/bhkRigidBody.h b/include/obj/bhkRigidBody.h index dcd212372bac29d7cabc7892815a0bab8e78c750..0de39e883a0f888f977731ba1ff17292159c0e97 100644 --- a/include/obj/bhkRigidBody.h +++ b/include/obj/bhkRigidBody.h @@ -11,7 +11,7 @@ All rights reserved. Please see niflib.h for licence. */ #include "../Ref.h" namespace Niflib { -// Forward define of referenced blocks +// Forward define of referenced NIF objects class AbhkConstraint; //#include "../gen/obj_defines.h" diff --git a/src/ComplexShape.cpp b/src/ComplexShape.cpp index dba9dcaf0ec096c5426ff20b356de8419604527f..8a39b6a915af247a5224150e6b68579a997dfdf1 100644 --- a/src/ComplexShape.cpp +++ b/src/ComplexShape.cpp @@ -504,90 +504,6 @@ void ComplexShape::Merge( NiAVObject * root ) { //Done Merging } -//void ComplexShape::CombineTriShapes( list<blk_ref> & tri_shapes ) { -// //Clear all internal datea -// _vertices.clear(); -// _colors.clear(); -// _normals.clear(); -// _materials.clear(); -// _uvs.clear(); -// _faces.clear(); -// _bones.clear(); -// -// //Create a temporary spot to hold the triangle lists from each TriShape -// vector< vector<Triangle> > ts_faces; -// -// //Create lists to hold the lookup tables -// vector<int> tri_lookup, nor_lookup, col_lookup; -// map<string, vector<int> > mat_lookup, uv_lookup; -// -// //--Cycle through all the TriShapes, adding their data to the lists--// -// list<blk_ref>::iterator it; -// -// for (it = tri_shapes.begin(); it != tri_shapes.end(); ++it) { -// ITriShapeData * data = QueryTriShapeData(*it); -// -// //Vertices -// vector<Vector3> ts_verts = data->GetVertices(); -// _vertices.insert(_vertices.end(), ts_verts.begin(), ts_verts.end(); -// -// //Normals -// vector<Vector3> ts_norms = data->GetNormals(); -// _normals.insert(_normals.end(), ts_norms.begin(), ts_norms.end(); -// -// //Colors -// vector<Colors> ts_cols = data->GetColors(); -// _colors.insert(_colors.end(), ts_colors.begin(), ts_colors.end(); -// -// //Triangles -// ts_faces[i] = data->GetTriangles(); -// -// //UV Coords -// vector< vector<TexCoords> > uvs(data->GetUVSetCount()); -// for (int i = 0; i < data->GetUVSetCount(); ++i) { -// uvs[i] = data->GetUVSet(i); -// } -// -// //Associate UV Coord Data with proper map name -// blk_ref tx_prop = par["Properties"]->FindLink( "NiTexturingProperty"); -// if ( tx_prop.is_null() == false ) { -// int uv_set = 0; -// for (int i = 0; i < 7; ++i) { -// string attr_name, map; -// switch(i) { -// case 0: attr_name = "Base Texture"; map = "map1"; break; -// case 1: attr_name = "Dark Texture"; map = "dark"; break; -// case 2: attr_name = "Detail Texture"; map = "detail"; break; -// case 3: attr_name = "Gloss Texture"; map = "gloss"; break; -// case 4: attr_name = "Glow Texture"; map = "glow"; break; -// case 5: attr_name = "Bump Map Texture"; map = "bump"; break; -// case 6: attr_name = "Decal 0 Texture"; map = "decal0"; -// } -// -// if ( tx_prop[attr_name]->asTexDesc().isUsed == true ) { -// //How to merge all UVs? -// } -// -// } -// -// -// //blk_ref material = (*it)->GetAttr("Propreties")->FindLink("NiMaterialProperty"); -// //blk_ref skin_inst = (*it)->GetAttr("Skin Instance")->asLink(); -// //blk_ref skin_data; -// //vector<blk_ref> bones; -// //map<int, float> weights; -// //if ( skin_inst.is_null() == false ) { -// // skin_block = skin_inst->GetAttr("Data"); -// // if (skin_block.is_null() == false ) { -// // ISkinData * skin_data = QuerySkinData(skin_block); -// // weights = skin_data->GetWeights(); -// // bones = skin_data->GetBones(); -// // } -// //} -// -// } -//} - Ref<NiAVObject> ComplexShape::Split( NiNode * parent, Matrix44 & transform, int max_bones_per_partition, bool stripify, bool tangent_space ) const { //Make sure parent is not NULL diff --git a/src/gen/obj_factories.cpp b/src/gen/obj_factories.cpp index 5f5ea55220d8fba86e68105da3d568183d015625..8a9e43161f5f9078e23f935bebab0df0cf452ca9 100644 --- a/src/gen/obj_factories.cpp +++ b/src/gen/obj_factories.cpp @@ -10,7 +10,7 @@ using namespace Niflib; using namespace std; namespace Niflib { typedef NiObject*(*blk_factory_func)(); -extern map<string, blk_factory_func> global_block_map; +extern map<string, blk_factory_func> global_object_map; } #include "../../include/obj/bhkBlendCollisionObject.h" @@ -387,193 +387,193 @@ NiObject * CreateNiZBufferProperty() { return new NiZBufferProperty; } NiObject * CreateRootCollisionNode() { return new RootCollisionNode; } namespace Niflib { -//This function registers the factory functions with global_block_map which is used by CreateNiObject -void RegisterBlockFactories() { - global_block_map["bhkBlendCollisionObject"] = CreatebhkBlendCollisionObject; - global_block_map["bhkBlendController"] = CreatebhkBlendController; - global_block_map["bhkBoxShape"] = CreatebhkBoxShape; - global_block_map["bhkCapsuleShape"] = CreatebhkCapsuleShape; - global_block_map["bhkCollisionObject"] = CreatebhkCollisionObject; - global_block_map["bhkConvexVerticesShape"] = CreatebhkConvexVerticesShape; - global_block_map["bhkHingeConstraint"] = CreatebhkHingeConstraint; - global_block_map["bhkLimitedHingeConstraint"] = CreatebhkLimitedHingeConstraint; - global_block_map["bhkListShape"] = CreatebhkListShape; - global_block_map["bhkMalleableConstraint"] = CreatebhkMalleableConstraint; - global_block_map["bhkMoppBvTreeShape"] = CreatebhkMoppBvTreeShape; - global_block_map["bhkMultiSphereShape"] = CreatebhkMultiSphereShape; - global_block_map["bhkNiTriStripsShape"] = CreatebhkNiTriStripsShape; - global_block_map["bhkPackedNiTriStripsShape"] = CreatebhkPackedNiTriStripsShape; - global_block_map["bhkPrismaticConstraint"] = CreatebhkPrismaticConstraint; - global_block_map["bhkRagdollConstraint"] = CreatebhkRagdollConstraint; - global_block_map["bhkRigidBody"] = CreatebhkRigidBody; - global_block_map["bhkRigidBodyT"] = CreatebhkRigidBodyT; - global_block_map["bhkSimpleShapePhantom"] = CreatebhkSimpleShapePhantom; - global_block_map["bhkSPCollisionObject"] = CreatebhkSPCollisionObject; - global_block_map["bhkSphereShape"] = CreatebhkSphereShape; - global_block_map["bhkStiffSpringConstraint"] = CreatebhkStiffSpringConstraint; - global_block_map["bhkTransformShape"] = CreatebhkTransformShape; - global_block_map["bhkConvexTransformShape"] = CreatebhkConvexTransformShape; - global_block_map["BSBound"] = CreateBSBound; - global_block_map["BSFurnitureMarker"] = CreateBSFurnitureMarker; - global_block_map["BSParentVelocityModifier"] = CreateBSParentVelocityModifier; - global_block_map["BSPSysArrayEmitter"] = CreateBSPSysArrayEmitter; - global_block_map["BSXFlags"] = CreateBSXFlags; - global_block_map["hkPackedNiTriStripsData"] = CreatehkPackedNiTriStripsData; - global_block_map["NiAlphaController"] = CreateNiAlphaController; - global_block_map["NiAlphaProperty"] = CreateNiAlphaProperty; - global_block_map["NiAmbientLight"] = CreateNiAmbientLight; - global_block_map["NiAutoNormalParticlesData"] = CreateNiAutoNormalParticlesData; - global_block_map["NiBinaryExtraData"] = CreateNiBinaryExtraData; - global_block_map["NiBlendBoolInterpolator"] = CreateNiBlendBoolInterpolator; - global_block_map["NiBlendFloatInterpolator"] = CreateNiBlendFloatInterpolator; - global_block_map["NiBlendPoint3Interpolator"] = CreateNiBlendPoint3Interpolator; - global_block_map["NiBlendTransformInterpolator"] = CreateNiBlendTransformInterpolator; - global_block_map["NiBoneLODController"] = CreateNiBoneLODController; - global_block_map["NiBoolData"] = CreateNiBoolData; - global_block_map["NiBooleanExtraData"] = CreateNiBooleanExtraData; - global_block_map["NiBoolInterpolator"] = CreateNiBoolInterpolator; - global_block_map["NiBoolTimelineInterpolator"] = CreateNiBoolTimelineInterpolator; - global_block_map["NiBSBoneLODController"] = CreateNiBSBoneLODController; - global_block_map["NiBSplineBasisData"] = CreateNiBSplineBasisData; - global_block_map["NiBSplineCompFloatInterpolator"] = CreateNiBSplineCompFloatInterpolator; - global_block_map["NiBSplineCompPoint3Interpolator"] = CreateNiBSplineCompPoint3Interpolator; - global_block_map["NiBSplineCompTransformInterpolator"] = CreateNiBSplineCompTransformInterpolator; - global_block_map["NiBSplineData"] = CreateNiBSplineData; - global_block_map["NiCamera"] = CreateNiCamera; - global_block_map["NiCollisionData"] = CreateNiCollisionData; - global_block_map["NiColorData"] = CreateNiColorData; - global_block_map["NiColorExtraData"] = CreateNiColorExtraData; - global_block_map["NiControllerManager"] = CreateNiControllerManager; - global_block_map["NiControllerSequence"] = CreateNiControllerSequence; - global_block_map["NiDefaultAVObjectPalette"] = CreateNiDefaultAVObjectPalette; - global_block_map["NiDirectionalLight"] = CreateNiDirectionalLight; - global_block_map["NiDitherProperty"] = CreateNiDitherProperty; - global_block_map["NiFlipController"] = CreateNiFlipController; - global_block_map["NiFloatData"] = CreateNiFloatData; - global_block_map["NiFloatExtraData"] = CreateNiFloatExtraData; - global_block_map["NiFloatExtraDataController"] = CreateNiFloatExtraDataController; - global_block_map["NiFloatInterpolator"] = CreateNiFloatInterpolator; - global_block_map["NiFloatsExtraData"] = CreateNiFloatsExtraData; - global_block_map["NiFogProperty"] = CreateNiFogProperty; - global_block_map["NiGeomMorpherController"] = CreateNiGeomMorpherController; - global_block_map["NiGravity"] = CreateNiGravity; - global_block_map["NiIntegerExtraData"] = CreateNiIntegerExtraData; - global_block_map["NiIntegersExtraData"] = CreateNiIntegersExtraData; - global_block_map["NiKeyframeController"] = CreateNiKeyframeController; - global_block_map["BSKeyframeController"] = CreateBSKeyframeController; - global_block_map["NiKeyframeData"] = CreateNiKeyframeData; - global_block_map["NiLightColorController"] = CreateNiLightColorController; - global_block_map["NiLightDimmerController"] = CreateNiLightDimmerController; - global_block_map["NiLookAtController"] = CreateNiLookAtController; - global_block_map["NiLookAtInterpolator"] = CreateNiLookAtInterpolator; - global_block_map["NiMaterialColorController"] = CreateNiMaterialColorController; - global_block_map["NiMaterialProperty"] = CreateNiMaterialProperty; - global_block_map["NiMeshPSysData"] = CreateNiMeshPSysData; - global_block_map["NiMorphData"] = CreateNiMorphData; - global_block_map["NiMultiTargetTransformController"] = CreateNiMultiTargetTransformController; - global_block_map["NiNode"] = CreateNiNode; - global_block_map["AvoidNode"] = CreateAvoidNode; - global_block_map["FxWidget"] = CreateFxWidget; - global_block_map["FxButton"] = CreateFxButton; - global_block_map["FxRadioButton"] = CreateFxRadioButton; - global_block_map["NiBillboardNode"] = CreateNiBillboardNode; - global_block_map["NiBSAnimationNode"] = CreateNiBSAnimationNode; - global_block_map["NiBSParticleNode"] = CreateNiBSParticleNode; - global_block_map["NiLODNode"] = CreateNiLODNode; - global_block_map["NiPalette"] = CreateNiPalette; - global_block_map["NiParticleBomb"] = CreateNiParticleBomb; - global_block_map["NiParticleColorModifier"] = CreateNiParticleColorModifier; - global_block_map["NiParticleGrowFade"] = CreateNiParticleGrowFade; - global_block_map["NiParticleMeshModifier"] = CreateNiParticleMeshModifier; - global_block_map["NiParticleRotation"] = CreateNiParticleRotation; - global_block_map["NiParticles"] = CreateNiParticles; - global_block_map["NiAutoNormalParticles"] = CreateNiAutoNormalParticles; - global_block_map["NiParticleMeshes"] = CreateNiParticleMeshes; - global_block_map["NiParticlesData"] = CreateNiParticlesData; - global_block_map["NiParticleMeshesData"] = CreateNiParticleMeshesData; - global_block_map["NiParticleSystem"] = CreateNiParticleSystem; - global_block_map["NiMeshParticleSystem"] = CreateNiMeshParticleSystem; - global_block_map["NiParticleSystemController"] = CreateNiParticleSystemController; - global_block_map["NiBSPArrayController"] = CreateNiBSPArrayController; - global_block_map["NiPathController"] = CreateNiPathController; - global_block_map["NiPathInterpolator"] = CreateNiPathInterpolator; - global_block_map["NiPixelData"] = CreateNiPixelData; - global_block_map["NiPlanarCollider"] = CreateNiPlanarCollider; - global_block_map["NiPoint3Interpolator"] = CreateNiPoint3Interpolator; - global_block_map["NiPointLight"] = CreateNiPointLight; - global_block_map["NiPosData"] = CreateNiPosData; - global_block_map["NiPSysAgeDeathModifier"] = CreateNiPSysAgeDeathModifier; - global_block_map["NiPSysBombModifier"] = CreateNiPSysBombModifier; - global_block_map["NiPSysBoundUpdateModifier"] = CreateNiPSysBoundUpdateModifier; - global_block_map["NiPSysBoxEmitter"] = CreateNiPSysBoxEmitter; - global_block_map["NiPSysColliderManager"] = CreateNiPSysColliderManager; - global_block_map["NiPSysColorModifier"] = CreateNiPSysColorModifier; - global_block_map["NiPSysCylinderEmitter"] = CreateNiPSysCylinderEmitter; - global_block_map["NiPSysData"] = CreateNiPSysData; - global_block_map["NiPSysDragModifier"] = CreateNiPSysDragModifier; - global_block_map["NiPSysEmitterCtlr"] = CreateNiPSysEmitterCtlr; - global_block_map["NiPSysEmitterCtlrData"] = CreateNiPSysEmitterCtlrData; - global_block_map["NiPSysEmitterDeclinationCtlr"] = CreateNiPSysEmitterDeclinationCtlr; - global_block_map["NiPSysEmitterDeclinationVarCtlr"] = CreateNiPSysEmitterDeclinationVarCtlr; - global_block_map["NiPSysEmitterInitialRadiusCtlr"] = CreateNiPSysEmitterInitialRadiusCtlr; - global_block_map["NiPSysEmitterLifeSpanCtlr"] = CreateNiPSysEmitterLifeSpanCtlr; - global_block_map["NiPSysEmitterSpeedCtlr"] = CreateNiPSysEmitterSpeedCtlr; - global_block_map["NiPSysGravityModifier"] = CreateNiPSysGravityModifier; - global_block_map["NiPSysGravityStrengthCtlr"] = CreateNiPSysGravityStrengthCtlr; - global_block_map["NiPSysGrowFadeModifier"] = CreateNiPSysGrowFadeModifier; - global_block_map["NiPSysMeshEmitter"] = CreateNiPSysMeshEmitter; - global_block_map["NiPSysMeshUpdateModifier"] = CreateNiPSysMeshUpdateModifier; - global_block_map["NiPSysModifierActiveCtlr"] = CreateNiPSysModifierActiveCtlr; - global_block_map["NiPSysPlanarCollider"] = CreateNiPSysPlanarCollider; - global_block_map["NiPSysPositionModifier"] = CreateNiPSysPositionModifier; - global_block_map["NiPSysResetOnLoopCtlr"] = CreateNiPSysResetOnLoopCtlr; - global_block_map["NiPSysRotationModifier"] = CreateNiPSysRotationModifier; - global_block_map["NiPSysSpawnModifier"] = CreateNiPSysSpawnModifier; - global_block_map["NiPSysSphereEmitter"] = CreateNiPSysSphereEmitter; - global_block_map["NiPSysUpdateCtlr"] = CreateNiPSysUpdateCtlr; - global_block_map["NiRangeLODData"] = CreateNiRangeLODData; - global_block_map["NiScreenLODData"] = CreateNiScreenLODData; - global_block_map["NiRotatingParticles"] = CreateNiRotatingParticles; - global_block_map["NiRotatingParticlesData"] = CreateNiRotatingParticlesData; - global_block_map["NiSequenceStreamHelper"] = CreateNiSequenceStreamHelper; - global_block_map["NiShadeProperty"] = CreateNiShadeProperty; - global_block_map["NiSkinData"] = CreateNiSkinData; - global_block_map["NiSkinInstance"] = CreateNiSkinInstance; - global_block_map["NiClodSkinInstance"] = CreateNiClodSkinInstance; - global_block_map["NiSkinPartition"] = CreateNiSkinPartition; - global_block_map["NiSourceTexture"] = CreateNiSourceTexture; - global_block_map["NiSpecularProperty"] = CreateNiSpecularProperty; - global_block_map["NiSphericalCollider"] = CreateNiSphericalCollider; - global_block_map["NiSpotLight"] = CreateNiSpotLight; - global_block_map["NiStencilProperty"] = CreateNiStencilProperty; - global_block_map["NiStringExtraData"] = CreateNiStringExtraData; - global_block_map["NiStringPalette"] = CreateNiStringPalette; - global_block_map["NiStringsExtraData"] = CreateNiStringsExtraData; - global_block_map["NiTextKeyExtraData"] = CreateNiTextKeyExtraData; - global_block_map["NiTextureEffect"] = CreateNiTextureEffect; - global_block_map["NiTextureTransformController"] = CreateNiTextureTransformController; - global_block_map["NiTextureModeProperty"] = CreateNiTextureModeProperty; - global_block_map["NiImage"] = CreateNiImage; - global_block_map["NiTextureProperty"] = CreateNiTextureProperty; - global_block_map["NiTexturingProperty"] = CreateNiTexturingProperty; - global_block_map["NiTransformController"] = CreateNiTransformController; - global_block_map["NiTransformData"] = CreateNiTransformData; - global_block_map["NiTransformInterpolator"] = CreateNiTransformInterpolator; - global_block_map["NiTriShape"] = CreateNiTriShape; - global_block_map["NiTriShapeData"] = CreateNiTriShapeData; - global_block_map["NiTriStrips"] = CreateNiTriStrips; - global_block_map["NiTriStripsData"] = CreateNiTriStripsData; - global_block_map["NiClod"] = CreateNiClod; - global_block_map["NiClodData"] = CreateNiClodData; - global_block_map["NiUVController"] = CreateNiUVController; - global_block_map["NiUVData"] = CreateNiUVData; - global_block_map["NiVectorExtraData"] = CreateNiVectorExtraData; - global_block_map["NiVertexColorProperty"] = CreateNiVertexColorProperty; - global_block_map["NiVertWeightsExtraData"] = CreateNiVertWeightsExtraData; - global_block_map["NiVisController"] = CreateNiVisController; - global_block_map["NiVisData"] = CreateNiVisData; - global_block_map["NiWireframeProperty"] = CreateNiWireframeProperty; - global_block_map["NiZBufferProperty"] = CreateNiZBufferProperty; - global_block_map["RootCollisionNode"] = CreateRootCollisionNode; +//This function registers the factory functions with global_object_map which is used by CreateNiObject +void RegisterObjectFactories() { + global_object_map["bhkBlendCollisionObject"] = CreatebhkBlendCollisionObject; + global_object_map["bhkBlendController"] = CreatebhkBlendController; + global_object_map["bhkBoxShape"] = CreatebhkBoxShape; + global_object_map["bhkCapsuleShape"] = CreatebhkCapsuleShape; + global_object_map["bhkCollisionObject"] = CreatebhkCollisionObject; + global_object_map["bhkConvexVerticesShape"] = CreatebhkConvexVerticesShape; + global_object_map["bhkHingeConstraint"] = CreatebhkHingeConstraint; + global_object_map["bhkLimitedHingeConstraint"] = CreatebhkLimitedHingeConstraint; + global_object_map["bhkListShape"] = CreatebhkListShape; + global_object_map["bhkMalleableConstraint"] = CreatebhkMalleableConstraint; + global_object_map["bhkMoppBvTreeShape"] = CreatebhkMoppBvTreeShape; + global_object_map["bhkMultiSphereShape"] = CreatebhkMultiSphereShape; + global_object_map["bhkNiTriStripsShape"] = CreatebhkNiTriStripsShape; + global_object_map["bhkPackedNiTriStripsShape"] = CreatebhkPackedNiTriStripsShape; + global_object_map["bhkPrismaticConstraint"] = CreatebhkPrismaticConstraint; + global_object_map["bhkRagdollConstraint"] = CreatebhkRagdollConstraint; + global_object_map["bhkRigidBody"] = CreatebhkRigidBody; + global_object_map["bhkRigidBodyT"] = CreatebhkRigidBodyT; + global_object_map["bhkSimpleShapePhantom"] = CreatebhkSimpleShapePhantom; + global_object_map["bhkSPCollisionObject"] = CreatebhkSPCollisionObject; + global_object_map["bhkSphereShape"] = CreatebhkSphereShape; + global_object_map["bhkStiffSpringConstraint"] = CreatebhkStiffSpringConstraint; + global_object_map["bhkTransformShape"] = CreatebhkTransformShape; + global_object_map["bhkConvexTransformShape"] = CreatebhkConvexTransformShape; + global_object_map["BSBound"] = CreateBSBound; + global_object_map["BSFurnitureMarker"] = CreateBSFurnitureMarker; + global_object_map["BSParentVelocityModifier"] = CreateBSParentVelocityModifier; + global_object_map["BSPSysArrayEmitter"] = CreateBSPSysArrayEmitter; + global_object_map["BSXFlags"] = CreateBSXFlags; + global_object_map["hkPackedNiTriStripsData"] = CreatehkPackedNiTriStripsData; + global_object_map["NiAlphaController"] = CreateNiAlphaController; + global_object_map["NiAlphaProperty"] = CreateNiAlphaProperty; + global_object_map["NiAmbientLight"] = CreateNiAmbientLight; + global_object_map["NiAutoNormalParticlesData"] = CreateNiAutoNormalParticlesData; + global_object_map["NiBinaryExtraData"] = CreateNiBinaryExtraData; + global_object_map["NiBlendBoolInterpolator"] = CreateNiBlendBoolInterpolator; + global_object_map["NiBlendFloatInterpolator"] = CreateNiBlendFloatInterpolator; + global_object_map["NiBlendPoint3Interpolator"] = CreateNiBlendPoint3Interpolator; + global_object_map["NiBlendTransformInterpolator"] = CreateNiBlendTransformInterpolator; + global_object_map["NiBoneLODController"] = CreateNiBoneLODController; + global_object_map["NiBoolData"] = CreateNiBoolData; + global_object_map["NiBooleanExtraData"] = CreateNiBooleanExtraData; + global_object_map["NiBoolInterpolator"] = CreateNiBoolInterpolator; + global_object_map["NiBoolTimelineInterpolator"] = CreateNiBoolTimelineInterpolator; + global_object_map["NiBSBoneLODController"] = CreateNiBSBoneLODController; + global_object_map["NiBSplineBasisData"] = CreateNiBSplineBasisData; + global_object_map["NiBSplineCompFloatInterpolator"] = CreateNiBSplineCompFloatInterpolator; + global_object_map["NiBSplineCompPoint3Interpolator"] = CreateNiBSplineCompPoint3Interpolator; + global_object_map["NiBSplineCompTransformInterpolator"] = CreateNiBSplineCompTransformInterpolator; + global_object_map["NiBSplineData"] = CreateNiBSplineData; + global_object_map["NiCamera"] = CreateNiCamera; + global_object_map["NiCollisionData"] = CreateNiCollisionData; + global_object_map["NiColorData"] = CreateNiColorData; + global_object_map["NiColorExtraData"] = CreateNiColorExtraData; + global_object_map["NiControllerManager"] = CreateNiControllerManager; + global_object_map["NiControllerSequence"] = CreateNiControllerSequence; + global_object_map["NiDefaultAVObjectPalette"] = CreateNiDefaultAVObjectPalette; + global_object_map["NiDirectionalLight"] = CreateNiDirectionalLight; + global_object_map["NiDitherProperty"] = CreateNiDitherProperty; + global_object_map["NiFlipController"] = CreateNiFlipController; + global_object_map["NiFloatData"] = CreateNiFloatData; + global_object_map["NiFloatExtraData"] = CreateNiFloatExtraData; + global_object_map["NiFloatExtraDataController"] = CreateNiFloatExtraDataController; + global_object_map["NiFloatInterpolator"] = CreateNiFloatInterpolator; + global_object_map["NiFloatsExtraData"] = CreateNiFloatsExtraData; + global_object_map["NiFogProperty"] = CreateNiFogProperty; + global_object_map["NiGeomMorpherController"] = CreateNiGeomMorpherController; + global_object_map["NiGravity"] = CreateNiGravity; + global_object_map["NiIntegerExtraData"] = CreateNiIntegerExtraData; + global_object_map["NiIntegersExtraData"] = CreateNiIntegersExtraData; + global_object_map["NiKeyframeController"] = CreateNiKeyframeController; + global_object_map["BSKeyframeController"] = CreateBSKeyframeController; + global_object_map["NiKeyframeData"] = CreateNiKeyframeData; + global_object_map["NiLightColorController"] = CreateNiLightColorController; + global_object_map["NiLightDimmerController"] = CreateNiLightDimmerController; + global_object_map["NiLookAtController"] = CreateNiLookAtController; + global_object_map["NiLookAtInterpolator"] = CreateNiLookAtInterpolator; + global_object_map["NiMaterialColorController"] = CreateNiMaterialColorController; + global_object_map["NiMaterialProperty"] = CreateNiMaterialProperty; + global_object_map["NiMeshPSysData"] = CreateNiMeshPSysData; + global_object_map["NiMorphData"] = CreateNiMorphData; + global_object_map["NiMultiTargetTransformController"] = CreateNiMultiTargetTransformController; + global_object_map["NiNode"] = CreateNiNode; + global_object_map["AvoidNode"] = CreateAvoidNode; + global_object_map["FxWidget"] = CreateFxWidget; + global_object_map["FxButton"] = CreateFxButton; + global_object_map["FxRadioButton"] = CreateFxRadioButton; + global_object_map["NiBillboardNode"] = CreateNiBillboardNode; + global_object_map["NiBSAnimationNode"] = CreateNiBSAnimationNode; + global_object_map["NiBSParticleNode"] = CreateNiBSParticleNode; + global_object_map["NiLODNode"] = CreateNiLODNode; + global_object_map["NiPalette"] = CreateNiPalette; + global_object_map["NiParticleBomb"] = CreateNiParticleBomb; + global_object_map["NiParticleColorModifier"] = CreateNiParticleColorModifier; + global_object_map["NiParticleGrowFade"] = CreateNiParticleGrowFade; + global_object_map["NiParticleMeshModifier"] = CreateNiParticleMeshModifier; + global_object_map["NiParticleRotation"] = CreateNiParticleRotation; + global_object_map["NiParticles"] = CreateNiParticles; + global_object_map["NiAutoNormalParticles"] = CreateNiAutoNormalParticles; + global_object_map["NiParticleMeshes"] = CreateNiParticleMeshes; + global_object_map["NiParticlesData"] = CreateNiParticlesData; + global_object_map["NiParticleMeshesData"] = CreateNiParticleMeshesData; + global_object_map["NiParticleSystem"] = CreateNiParticleSystem; + global_object_map["NiMeshParticleSystem"] = CreateNiMeshParticleSystem; + global_object_map["NiParticleSystemController"] = CreateNiParticleSystemController; + global_object_map["NiBSPArrayController"] = CreateNiBSPArrayController; + global_object_map["NiPathController"] = CreateNiPathController; + global_object_map["NiPathInterpolator"] = CreateNiPathInterpolator; + global_object_map["NiPixelData"] = CreateNiPixelData; + global_object_map["NiPlanarCollider"] = CreateNiPlanarCollider; + global_object_map["NiPoint3Interpolator"] = CreateNiPoint3Interpolator; + global_object_map["NiPointLight"] = CreateNiPointLight; + global_object_map["NiPosData"] = CreateNiPosData; + global_object_map["NiPSysAgeDeathModifier"] = CreateNiPSysAgeDeathModifier; + global_object_map["NiPSysBombModifier"] = CreateNiPSysBombModifier; + global_object_map["NiPSysBoundUpdateModifier"] = CreateNiPSysBoundUpdateModifier; + global_object_map["NiPSysBoxEmitter"] = CreateNiPSysBoxEmitter; + global_object_map["NiPSysColliderManager"] = CreateNiPSysColliderManager; + global_object_map["NiPSysColorModifier"] = CreateNiPSysColorModifier; + global_object_map["NiPSysCylinderEmitter"] = CreateNiPSysCylinderEmitter; + global_object_map["NiPSysData"] = CreateNiPSysData; + global_object_map["NiPSysDragModifier"] = CreateNiPSysDragModifier; + global_object_map["NiPSysEmitterCtlr"] = CreateNiPSysEmitterCtlr; + global_object_map["NiPSysEmitterCtlrData"] = CreateNiPSysEmitterCtlrData; + global_object_map["NiPSysEmitterDeclinationCtlr"] = CreateNiPSysEmitterDeclinationCtlr; + global_object_map["NiPSysEmitterDeclinationVarCtlr"] = CreateNiPSysEmitterDeclinationVarCtlr; + global_object_map["NiPSysEmitterInitialRadiusCtlr"] = CreateNiPSysEmitterInitialRadiusCtlr; + global_object_map["NiPSysEmitterLifeSpanCtlr"] = CreateNiPSysEmitterLifeSpanCtlr; + global_object_map["NiPSysEmitterSpeedCtlr"] = CreateNiPSysEmitterSpeedCtlr; + global_object_map["NiPSysGravityModifier"] = CreateNiPSysGravityModifier; + global_object_map["NiPSysGravityStrengthCtlr"] = CreateNiPSysGravityStrengthCtlr; + global_object_map["NiPSysGrowFadeModifier"] = CreateNiPSysGrowFadeModifier; + global_object_map["NiPSysMeshEmitter"] = CreateNiPSysMeshEmitter; + global_object_map["NiPSysMeshUpdateModifier"] = CreateNiPSysMeshUpdateModifier; + global_object_map["NiPSysModifierActiveCtlr"] = CreateNiPSysModifierActiveCtlr; + global_object_map["NiPSysPlanarCollider"] = CreateNiPSysPlanarCollider; + global_object_map["NiPSysPositionModifier"] = CreateNiPSysPositionModifier; + global_object_map["NiPSysResetOnLoopCtlr"] = CreateNiPSysResetOnLoopCtlr; + global_object_map["NiPSysRotationModifier"] = CreateNiPSysRotationModifier; + global_object_map["NiPSysSpawnModifier"] = CreateNiPSysSpawnModifier; + global_object_map["NiPSysSphereEmitter"] = CreateNiPSysSphereEmitter; + global_object_map["NiPSysUpdateCtlr"] = CreateNiPSysUpdateCtlr; + global_object_map["NiRangeLODData"] = CreateNiRangeLODData; + global_object_map["NiScreenLODData"] = CreateNiScreenLODData; + global_object_map["NiRotatingParticles"] = CreateNiRotatingParticles; + global_object_map["NiRotatingParticlesData"] = CreateNiRotatingParticlesData; + global_object_map["NiSequenceStreamHelper"] = CreateNiSequenceStreamHelper; + global_object_map["NiShadeProperty"] = CreateNiShadeProperty; + global_object_map["NiSkinData"] = CreateNiSkinData; + global_object_map["NiSkinInstance"] = CreateNiSkinInstance; + global_object_map["NiClodSkinInstance"] = CreateNiClodSkinInstance; + global_object_map["NiSkinPartition"] = CreateNiSkinPartition; + global_object_map["NiSourceTexture"] = CreateNiSourceTexture; + global_object_map["NiSpecularProperty"] = CreateNiSpecularProperty; + global_object_map["NiSphericalCollider"] = CreateNiSphericalCollider; + global_object_map["NiSpotLight"] = CreateNiSpotLight; + global_object_map["NiStencilProperty"] = CreateNiStencilProperty; + global_object_map["NiStringExtraData"] = CreateNiStringExtraData; + global_object_map["NiStringPalette"] = CreateNiStringPalette; + global_object_map["NiStringsExtraData"] = CreateNiStringsExtraData; + global_object_map["NiTextKeyExtraData"] = CreateNiTextKeyExtraData; + global_object_map["NiTextureEffect"] = CreateNiTextureEffect; + global_object_map["NiTextureTransformController"] = CreateNiTextureTransformController; + global_object_map["NiTextureModeProperty"] = CreateNiTextureModeProperty; + global_object_map["NiImage"] = CreateNiImage; + global_object_map["NiTextureProperty"] = CreateNiTextureProperty; + global_object_map["NiTexturingProperty"] = CreateNiTexturingProperty; + global_object_map["NiTransformController"] = CreateNiTransformController; + global_object_map["NiTransformData"] = CreateNiTransformData; + global_object_map["NiTransformInterpolator"] = CreateNiTransformInterpolator; + global_object_map["NiTriShape"] = CreateNiTriShape; + global_object_map["NiTriShapeData"] = CreateNiTriShapeData; + global_object_map["NiTriStrips"] = CreateNiTriStrips; + global_object_map["NiTriStripsData"] = CreateNiTriStripsData; + global_object_map["NiClod"] = CreateNiClod; + global_object_map["NiClodData"] = CreateNiClodData; + global_object_map["NiUVController"] = CreateNiUVController; + global_object_map["NiUVData"] = CreateNiUVData; + global_object_map["NiVectorExtraData"] = CreateNiVectorExtraData; + global_object_map["NiVertexColorProperty"] = CreateNiVertexColorProperty; + global_object_map["NiVertWeightsExtraData"] = CreateNiVertWeightsExtraData; + global_object_map["NiVisController"] = CreateNiVisController; + global_object_map["NiVisData"] = CreateNiVisData; + global_object_map["NiWireframeProperty"] = CreateNiWireframeProperty; + global_object_map["NiZBufferProperty"] = CreateNiZBufferProperty; + global_object_map["RootCollisionNode"] = CreateRootCollisionNode; } } diff --git a/src/niflib.cpp b/src/niflib.cpp index c210c77992fa6466c27a2563de056b48fd5e95de..5f3729718502a08cb334bcf0dec58efe76e01eb3 100644 --- a/src/niflib.cpp +++ b/src/niflib.cpp @@ -38,72 +38,71 @@ namespace Niflib { //Stores the mapping between object names and factory function pointers to create them typedef NiObject * (*blk_factory_func)(); -bool global_block_map_init = false; -map<string, blk_factory_func> global_block_map; +bool global_object_map_init = false; +map<string, blk_factory_func> global_object_map; //Utility Functions void EnumerateObjects( NiObject * root, map<Type*,unsigned int> & type_map, map<NiObjectRef, unsigned int> & link_map, bool reverse = false ); -NiObjectRef FindRoot( vector<NiObjectRef> const & blocks ); -void RegisterBlockFactories (); +NiObjectRef FindRoot( vector<NiObjectRef> const & objects ); +void RegisterObjectFactories (); NiObjectRef GetObjectByType( NiObject * root, const Type & type ); /*! - * Helper function to split off animation from a nif tree. If no animation groups are defined, then both xnif_root and xkf_root will be null blocks. - * \param root_block The root block of the full tree. + * Helper function to split off animation from a nif tree. If no animation groups are defined, then both xnif_root and xkf_root will be NULL. + * \param root_object The root object of the full tree. * \param xnif_root The root object of the tree without animation. * \param xkf_roots The root objects of the animation trees. * \param kfm The KFM structure (if required by style). * \param kf_type What type of keyframe tree to write (Morrowind style, DAoC style, ...). * \param info A NifInfo structure that contains information such as the version of the NIF file to create. */ -static void SplitNifTree( NiObject * root_block, NiObject * xnif_root, list<NiObjectRef> & xkf_roots, Kfm & kfm, int kf_type, const NifInfo & info ); +static void SplitNifTree( NiObject * root_object, NiObject * xnif_root, list<NiObjectRef> & xkf_roots, Kfm & kfm, int kf_type, const NifInfo & info ); //--Function Bodies--// -NiObjectRef CreateObject( string block_type ) { +NiObjectRef CreateObject( string obj_type ) { - //Initialize the global block list if it hasn't been done yet - if ( global_block_map_init == false ) { - RegisterBlockFactories(); - global_block_map_init = true; + //Initialize the global object list if it hasn't been done yet + if ( global_object_map_init == false ) { + RegisterObjectFactories(); + global_object_map_init = true; } - NiObject * block = NULL; + NiObject * object = NULL; map<string, blk_factory_func>::iterator it; - it = global_block_map.find(block_type); + it = global_object_map.find(obj_type); - if ( it != global_block_map.end() ) { + if ( it != global_object_map.end() ) { //Requested type has been registered - block = it->second(); + object = it->second(); } else { //An unknown type has been encountered - return NULL; //Return null block_ref - //block = new UnknownBlock( block_type ); + return NULL; //Return null } - return NiObjectRef(block); + return NiObjectRef(object); } NiObjectRef ReadNifTree( string const & file_name, NifInfo * info ) { - //Read block list - vector<NiObjectRef> blocks = ReadNifList( file_name, info ); - return FindRoot( blocks ); + //Read object list + vector<NiObjectRef> objects = ReadNifList( file_name, info ); + return FindRoot( objects ); } NiObjectRef ReadNifTree( istream & in, NifInfo * info ) { - //Read block list - vector<NiObjectRef> blocks = ReadNifList( in, info ); - return FindRoot( blocks ); + //Read object list + vector<NiObjectRef> objects = ReadNifList( in, info ); + return FindRoot( objects ); } -NiObjectRef FindRoot( vector<NiObjectRef> const & blocks ) { +NiObjectRef FindRoot( vector<NiObjectRef> const & objects ) { //--Look for a NiNode that has no parents--// //Find the first NiObjectNET derived object NiAVObjectRef root; - for (unsigned int i = 0; i < blocks.size(); ++i) { - root = DynamicCast<NiAVObject>(blocks[i]); + for (unsigned int i = 0; i < objects.size(); ++i) { + root = DynamicCast<NiAVObject>(objects[i]); if ( root != NULL ) { break; } @@ -111,7 +110,7 @@ NiObjectRef FindRoot( vector<NiObjectRef> const & blocks ) { //Make sure a node was found, if not return first node if ( root == NULL ) - return blocks[0]; + return objects[0]; //Move up the chain to the root node while ( root->GetParent() != NULL ) { @@ -221,7 +220,7 @@ vector<NiObjectRef> ReadNifList( istream & in, NifInfo * info ) { } } - // Find which block type this is by using the header arrays + // Find which NIF object type this is by using the header arrays objectType = header.blockTypes[ header.blockTypeIndex[i] ]; #ifdef PRINT_OBJECT_NAMES @@ -349,7 +348,7 @@ vector<NiObjectRef> ReadNifList( istream & in, NifInfo * info ) { #ifdef DEBUG_LINK_PHASE cout << "Fixing Links:" << endl; #endif - //--Now that all blocks are read, go back and fix the links--// + //--Now that all objects are read, go back and fix the links--// vector<NiObjectRef> obj_list; for ( map<unsigned,NiObjectRef>::iterator it = objects.begin(); it != objects.end(); ++it ) { @@ -368,15 +367,12 @@ vector<NiObjectRef> ReadNifList( istream & in, NifInfo * info ) { delete info; } - //Return completed block list + //Return completed object list return obj_list; } // Writes a valid Nif File given an ostream, a list to the root objects of a file tree void WriteNifTree( ostream & out, list<NiObjectRef> const & roots, const NifInfo & info ) { - // Walk tree, resetting all block numbers - //int block_count = ResetBlockNums( 0, root_block ); - //Enumerate all objects in tree map<Type*,unsigned int> type_map; map<NiObjectRef, unsigned int> link_map; @@ -416,7 +412,7 @@ void WriteNifTree( ostream & out, list<NiObjectRef> const & roots, const NifInfo } - //Set type number of each block + //Set type number of each object header.blockTypeIndex.resize( objects.size() ); for ( unsigned int i = 0; i < objects.size(); ++i ) { header.blockTypeIndex[i] = type_map[(Type*)&(objects[i]->GetType())]; @@ -470,13 +466,13 @@ void WriteNifTree( ostream & out, list<NiObjectRef> const & roots, const NifInfo footer.Write( out, link_map, info ); } -// Writes a valid Nif File given a file name, a pointer to the root block of a file tree -void WriteNifTree( string const & file_name, NiObject * root_block, const NifInfo & info ) { +// Writes a valid Nif File given a file name, a pointer to the root object of a file tree +void WriteNifTree( string const & file_name, NiObject * root, const NifInfo & info ) { //Open output file ofstream out( file_name.c_str(), ofstream::binary ); list<NiObjectRef> roots; - roots.push_back(root_block); + roots.push_back(root); WriteNifTree( out, roots, info ); //Close file @@ -514,7 +510,7 @@ void EnumerateObjects( NiObject * root, map<Type*,unsigned int> & type_map, map< type_map[ (Type*)&(root->GetType()) ] = n; } - // Oblivion has very rigid requirements about block ordering and the bhkRigidBody + // Oblivion has very rigid requirements about object ordering and the bhkRigidBody // must be after its children. Hopefully this can be removed and replaced with // a more generic mechanism in the future. Type *t = (Type*)&(root->GetType()); @@ -546,32 +542,6 @@ void EnumerateObjects( NiObject * root, map<Type*,unsigned int> & type_map, map< } } -//void BuildUpBindPositions( const NiAVObjectRef & root ) { -// -// //Get parent if there is one -// NiNodeRef par = root->GetParent(); -// if ( par != NULL ) { -// //There is a node parent -// -// //Post-multipy the block's bind matrix with the parent's bind matrix -// Matrix44 result = root->GetWorldBindPos() * par->GetWorldBindPos(); -// -// //Store result back to block bind position -// root->SetWorldBindPos( result ); -// } -// -// //If this is a NiNode, call this function for all child AVObjects -// NiNodeRef node = DynamicCast<NiNode>(root); -// if ( node != NULL ) { -// vector<NiAVObjectRef> children = node->GetChildren(); -// for (vector<NiAVObjectRef>::iterator it = children.begin(); it != children.end(); ++it) { -// if ( *it != NULL ) { -// BuildUpBindPositions( *it ); -// } -// } -// } -//} - //TODO: Should this be returning an object of a derived type too? // Searches for the first object in the hierarchy of type. NiObjectRef GetObjectByType( NiObject * root, const Type & type ) { @@ -607,21 +577,7 @@ list<NiObjectRef> GetAllObjectsByType( NiObject * root, const Type & type ) { return result; }; -//TODO: Is this function used anywhere? Does it need to be re-done? -//list<NiObjectRef> GetNifTree( NiObjectRef const & root_block ) { -// list<NiObjectRef> result; -// result.push_back( root_block ); -// list<NiObjectRef> links = root_block->GetRefs(); -// for (list<NiObjectRef>::iterator it = links.begin(); it != links.end(); ++it ) { -// if ( it->is_null() == false && (*it)->GetParent() == root_block ) { -// list<NiObjectRef> childresult = GetNifTree( *it ); -// result.merge( childresult ); -// }; -// }; -// return result; -//}; - -// Create a valid +// Create a valid file name static std::string CreateFileName(std::string name) { std::string retname = name; std::string::size_type off = 0; @@ -637,19 +593,19 @@ static std::string CreateFileName(std::string name) { } //TODO: This was written by Amorilia. Figure out how to fix it. -static void SplitNifTree( NiObject * root_block, NiObject * xnif_root, list<NiObjectRef> & xkf_roots, Kfm & kfm, int kf_type, const NifInfo & info ) { - // Do we have animation groups (a NiTextKeyExtraData block)? +static void SplitNifTree( NiObject * root_object, NiObject * xnif_root, list<NiObjectRef> & xkf_roots, Kfm & kfm, int kf_type, const NifInfo & info ) { + // Do we have animation groups (a NiTextKeyExtraData object)? // If so, create XNif and XKf trees. - NiObjectRef txtkey = GetObjectByType( root_block, NiTextKeyExtraData::TypeConst() ); - NiTextKeyExtraDataRef txtkey_block; + NiObjectRef txtkey = GetObjectByType( root_object, NiTextKeyExtraData::TypeConst() ); + NiTextKeyExtraDataRef txtkey_obj; if ( txtkey != NULL ) { - txtkey_block = DynamicCast<NiTextKeyExtraData>(txtkey); + txtkey_obj = DynamicCast<NiTextKeyExtraData>(txtkey); } - if ( txtkey_block != NULL ) { + if ( txtkey_obj != NULL ) { if ( kf_type == KF_MW ) { // Construct the XNif file... - xnif_root = CloneNifTree( root_block, info.version, info.userVersion ); + xnif_root = CloneNifTree( root_object, info.version, info.userVersion ); // Now search and locate newer timeframe controllers and convert to keyframecontrollers list<NiObjectRef> mgrs = GetAllObjectsByType( xnif_root, NiControllerManager::TypeConst() ); @@ -672,7 +628,7 @@ static void SplitNifTree( NiObject * root_block, NiObject * xnif_root, list<NiOb NiSequenceStreamHelperRef xkf_stream_helper = new NiSequenceStreamHelper; xkf_roots.push_back( StaticCast<NiObject>(xkf_stream_helper) ); - // Append NiNodes with a NiKeyFrameController as NiStringExtraData blocks. + // Append NiNodes with a NiKeyFrameController as NiStringExtraData objects. list< pair< NiNodeRef, NiKeyframeControllerRef> > node_controllers; list<NiObjectRef> nodes = GetAllObjectsByType( xnif_root, NiNode::TypeConst() ); @@ -740,14 +696,14 @@ static void SplitNifTree( NiObject * root_block, NiObject * xnif_root, list<NiOb xkf_stream_helper->AddController( StaticCast<NiTimeController>(controller) ); } - // Add a copy of the NiTextKeyExtraData block to the XKf header. - NiTextKeyExtraDataRef xkf_txtkey_block = new NiTextKeyExtraData; - xkf_stream_helper->AddExtraData( StaticCast<NiExtraData>(xkf_txtkey_block), info.version ); - xkf_txtkey_block->SetKeys( txtkey_block->GetKeys() ); + // Add a copy of the NiTextKeyExtraData object to the XKf header. + NiTextKeyExtraDataRef xkf_txtkey_obj = new NiTextKeyExtraData; + xkf_stream_helper->AddExtraData( StaticCast<NiExtraData>(xkf_txtkey_obj), info.version ); + xkf_txtkey_obj->SetKeys( txtkey_obj->GetKeys() ); } else if (kf_type == KF_CIV4) { // Construct the Nif file without transform controllers ... - xnif_root = CloneNifTree( root_block, info.version, info.userVersion ); + xnif_root = CloneNifTree( root_object, info.version, info.userVersion ); list<NiObjectRef> mgrs = GetAllObjectsByType( xnif_root, NiControllerManager::TypeConst() ); for ( list<NiObjectRef>::iterator it = mgrs.begin(); it != mgrs.end(); ++it) { @@ -767,12 +723,12 @@ static void SplitNifTree( NiObject * root_block, NiObject * xnif_root, list<NiOb } } else { // no animation groups: nothing to do - xnif_root = root_block; + xnif_root = root_object; }; } //TODO: This was written by Amorilia. Figure out how to fix it. -void WriteFileGroup( string const & file_name, NiObject * root_block, const NifInfo & info, ExportOptions export_files, NifGame kf_type ) { +void WriteFileGroup( string const & file_name, NiObject * root_object, const NifInfo & info, ExportOptions export_files, NifGame kf_type ) { // Get base filename. unsigned int file_name_slash = (unsigned int)(file_name.rfind("\\") + 1); string file_name_path = file_name.substr(0, file_name_slash); @@ -782,16 +738,16 @@ void WriteFileGroup( string const & file_name, NiObject * root_block, const NifI // Deal with the simple case first if ( export_files == EXPORT_NIF ) - WriteNifTree( file_name_path + file_name_base + ".nif", root_block, info ); // simply export the NIF file! + WriteNifTree( file_name_path + file_name_base + ".nif", root_object, info ); // simply export the NIF file! // Now consider all other cases else if ( kf_type == KF_MW ) { if ( export_files == EXPORT_NIF_KF ) { // for Morrowind we must also write the full NIF file - WriteNifTree( file_name_path + file_name_base + ".nif", root_block, info ); // simply export the NIF file! + WriteNifTree( file_name_path + file_name_base + ".nif", root_object, info ); // simply export the NIF file! NiObjectRef xnif_root; list<NiObjectRef> xkf_roots; Kfm kfm; // dummy - SplitNifTree( root_block, xnif_root, xkf_roots, kfm, kf_type, info ); + SplitNifTree( root_object, xnif_root, xkf_roots, kfm, kf_type, info ); if ( xnif_root != NULL && !xkf_roots.empty()) { WriteNifTree( file_name_path + "x" + file_name_base + ".nif", xnif_root, info ); WriteNifTree( file_name_path + "x" + file_name_base + ".kf", xkf_roots.front(), info ); @@ -803,7 +759,7 @@ void WriteFileGroup( string const & file_name, NiObject * root_block, const NifI NiObjectRef xnif_root; list<NiObjectRef> xkf_roots; Kfm kfm; // dummy - SplitNifTree( root_block, xnif_root, xkf_roots, kfm, kf_type, info ); + SplitNifTree( root_object, xnif_root, xkf_roots, kfm, kf_type, info ); if ( export_files == EXPORT_NIF || export_files == EXPORT_NIF_KF || export_files == EXPORT_NIF_KF_MULTI ) { WriteNifTree( file_name_path + file_name_base + ".nif", xnif_root, info ); } @@ -836,31 +792,15 @@ void MapNodeNames( map<string,NiNodeRef> & name_map, NiNode * par ) { }; } -void ReassignTreeCrossRefs( map<string,NiNodeRef> & name_map, NiAVObject * par ) { - //TODO: Decide how cross refs are going to work - ////Reassign any cross references on this block - //((ABlock*)par.get_block())->ReassignCrossRefs( name_map ); - - //list<NiObjectRef> links = par->GetRefs(); - //for (list <NiObjectRef>::iterator it = links.begin(); it != links.end(); ++it) { - // // if the link is not null, and if the child's first parent is root_block - // // (this makes sure we only check every child once, even if it is shared by multiple parents), - // // then look for a match in the tree starting from the child. - // if ( it->is_null() == false && (*it)->GetParent() == par ) { - // ReassignTreeCrossRefs( name_map, *it ); - // }; - //}; -} - //This function will merge two scene graphs by attatching new objects to the correct position //on the existing scene graph. In other words, it deals only with adding new nodes, not altering //existing nodes by changing their data or attatched properties void MergeSceneGraph( map<string,NiNodeRef> & name_map, NiNode * root, NiAVObject * par ) { - //Check if this block's name exists in the block map + //Check if this object's name exists in the object map string name = par->GetName(); if ( name_map.find(name) != name_map.end() ) { - //This block already exists in the original file, so continue on to its children, if it is a NiNode + //This object already exists in the original file, so continue on to its children, if it is a NiNode NiNodeRef par_node = DynamicCast<NiNode>(par); if ( par_node != NULL ) { @@ -874,13 +814,13 @@ void MergeSceneGraph( map<string,NiNodeRef> & name_map, NiNode * root, NiAVObjec return; } - //This block has a new name and either it has no parent or its parent has a name that is - // in the list. Attatch it to the block with the same name as its parent - //all child blocks will follow along. + //This object has a new name and either it has no parent or its parent has a name that is + // in the list. Attatch it to the object with the same name as its parent + //all child objects will follow along. NiNodeRef par_par = par->GetParent(); if ( par_par == NULL) { - //This block has a new name and no parents. That means it is the root block + //This object has a new name and no parents. That means it is the root object. //of a disimilar Nif file. //Check whether we have a NiNode ( a node that might have children) or not. @@ -897,19 +837,19 @@ void MergeSceneGraph( map<string,NiNodeRef> & name_map, NiNode * root, NiAVObjec } } } else { - //This block has a new name and has a parent with a name that already exists. - //Attatch it to the block in the target tree that matches the name of its + //This object has a new name and has a parent with a name that already exists. + //Attatch it to the object in the target tree that matches the name of its //parent //TODO: Implement children - ////Remove this block from its old parent + ////Remove this object from its old parent //par_par->GetAttr("Children")->RemoveLinks( par ); - //Get the block to attatch to + //Get the object to attatch to NiObjectRef attatch = DynamicCast<NiObject>(name_map[par_par->GetName()]); //TODO: Implement children - ////Add this block as new child + ////Add this object as new child //attatch->GetAttr("Children")->AddLink( par ); } } @@ -927,9 +867,9 @@ void MergeNifTrees( NiNode * target, NiAVObject * right, unsigned version, unsig map<string,NiNodeRef> name_map; MapNodeNames( name_map, target ); - //Reassign any cross references in the new tree to point to blocks in the - //target tree with the same names - ReassignTreeCrossRefs( name_map, new_tree ); + ////Reassign any cross references in the new tree to point to objects in the + ////target tree with the same names + //ReassignTreeCrossRefs( name_map, new_tree ); //Use the name map to merge the Scene Graphs MergeSceneGraph( name_map, target, new_tree ); diff --git a/src/obj/NiAVObject.cpp b/src/obj/NiAVObject.cpp index d2ebb2daa8a7c6052af734f8df674dc66da04296..e31506261daa8d655e74f227b0d7dfcd3aaa8c5a 100644 --- a/src/obj/NiAVObject.cpp +++ b/src/obj/NiAVObject.cpp @@ -78,11 +78,11 @@ Ref<NiNode> NiAVObject::GetParent() const { return parent; } -void NiAVObject::AddProperty( const Ref<NiProperty> & obj ) { +void NiAVObject::AddProperty( NiProperty * obj ) { properties.push_back( obj ); } -void NiAVObject::RemoveProperty( Ref<NiProperty> obj ) { +void NiAVObject::RemoveProperty( NiProperty * obj ) { //Search property list for the one to remove for ( vector< NiPropertyRef >::iterator it = properties.begin(); it != properties.end(); ) { if ( *it == obj ) { diff --git a/src/obj/NiControllerSequence.cpp b/src/obj/NiControllerSequence.cpp index 1bc1f3c4a2f52b30deab41da2e8944ada2fc5ea9..c0c88f0b92d6710d4b123ed15165463dd887c245 100644 --- a/src/obj/NiControllerSequence.cpp +++ b/src/obj/NiControllerSequence.cpp @@ -65,7 +65,7 @@ void NiControllerSequence::SetTextKey( NiTextKeyExtraData * txt_key ) { void NiControllerSequence::AddController( NiTimeController * obj ) { //Make sure the link isn't null if ( obj == NULL ) { - throw runtime_error("Attempted to add a null controller to NiControllerSequence block."); + throw runtime_error("Attempted to add a null controller to NiControllerSequence."); } NiObjectNETRef target = obj->GetTarget(); diff --git a/src/obj/NiDynamicEffect.cpp b/src/obj/NiDynamicEffect.cpp index d8ba154fffed97d7685bf5eee637a5cff7c4180d..89ff11caa284ab2d958cc699282b4f68d3e3d7b1 100644 --- a/src/obj/NiDynamicEffect.cpp +++ b/src/obj/NiDynamicEffect.cpp @@ -52,14 +52,6 @@ void NiDynamicEffect::SetAffectedNodes( const vector<Ref<NiAVObject > >& value ) affectedNodes = value; } -vector<unsigned int> NiDynamicEffect::GetAffectedNodeListPointers() const { - return affectedNodeListPointers; -} - -void NiDynamicEffect::SetAffectedNodeListPointers( const vector<unsigned int >& value ) { - affectedNodeListPointers = value; -} - const Type & NiDynamicEffect::TypeConst() { return TYPE; } diff --git a/src/obj/NiObject.cpp b/src/obj/NiObject.cpp index 33ef41d50a403bf5bd0605f5334f2837a467d0a8..45e3c59f74fcc1711b33d7792c7e3154fd86ea42 100644 --- a/src/obj/NiObject.cpp +++ b/src/obj/NiObject.cpp @@ -66,7 +66,7 @@ string NiObject::GetIDString() const { } NiObjectRef NiObject::Clone( unsigned int version, unsigned int user_version ) { - //Create a string stream to temporarily hold the state-save of this block + //Create a string stream to temporarily hold the state-save of this object stringstream tmp; //Create a new object of the same type