diff --git a/include/obj/ABoneLODController.h b/include/obj/ABoneLODController.h index 29127e8f8b67e31673bce585bf631adab2ce5aee..a06790e1eb64f6cf289cde24c16401e0d527484d 100644 --- a/include/obj/ABoneLODController.h +++ b/include/obj/ABoneLODController.h @@ -26,6 +26,7 @@ public: NIFLIB_API ~ABoneLODController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/AKeyedData.h b/include/obj/AKeyedData.h index d9f6062338f59a8cdf99347ec3856204f340d87f..e37e3a7a1b7aa2eba59d9c59bcea830df2ecd662 100644 --- a/include/obj/AKeyedData.h +++ b/include/obj/AKeyedData.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~AKeyedData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/APSysCtlr.h b/include/obj/APSysCtlr.h index 39ecbc0b5b2beef06e7e18dbf4cea348653478ee..8ec0c42c178b5a695f16f3d3df38ae6677ef5636 100644 --- a/include/obj/APSysCtlr.h +++ b/include/obj/APSysCtlr.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~APSysCtlr(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/APSysData.h b/include/obj/APSysData.h index 41191aca96d55cb382dc2b9b8ea1ad150c241140..461b6d264bd6ed84207d9287d65921621986f8c5 100644 --- a/include/obj/APSysData.h +++ b/include/obj/APSysData.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~APSysData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/AParticleModifier.h b/include/obj/AParticleModifier.h index e0cdcc207e7c4a2e87b569f9e05b72cb777c0c9a..920fc2ef357c3c431f8bbfd5a7080ea7b633d26d 100644 --- a/include/obj/AParticleModifier.h +++ b/include/obj/AParticleModifier.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~AParticleModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/AbhkConstraint.h b/include/obj/AbhkConstraint.h index b01bd53f0bd7f0fd53856520c53b8963fcd320aa..e075a901ab3a1a952c98afc105712db3de740cde 100644 --- a/include/obj/AbhkConstraint.h +++ b/include/obj/AbhkConstraint.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~AbhkConstraint(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/AbhkRagdollConstraint.h b/include/obj/AbhkRagdollConstraint.h index 6dcc7e819541edb30ca22812871fdaaa77dc3acd..cd769777c287da2cf45e200a82de93ff47073163 100644 --- a/include/obj/AbhkRagdollConstraint.h +++ b/include/obj/AbhkRagdollConstraint.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~AbhkRagdollConstraint(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/AbhkShapeCollection.h b/include/obj/AbhkShapeCollection.h index 5b0c18aeb3d92b90c2b53747037db4c55ce01937..84478cdffd31d0372fb73f7d4ef3783caf4f6f23 100644 --- a/include/obj/AbhkShapeCollection.h +++ b/include/obj/AbhkShapeCollection.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~AbhkShapeCollection(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/AvoidNode.h b/include/obj/AvoidNode.h index 9a4097b8db728adee5f146ce9efa5e08b6436946..2c20b1c8b842664419f08d40ceee01a1fa3a51c2 100644 --- a/include/obj/AvoidNode.h +++ b/include/obj/AvoidNode.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~AvoidNode(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/BSBound.h b/include/obj/BSBound.h index 0dccd0e2537f5270416ccfff1252f8244a6b9e75..d841bc80f4730759c5dc67bdb21f36da16a7ef36 100644 --- a/include/obj/BSBound.h +++ b/include/obj/BSBound.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~BSBound(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/BSFurnitureMarker.h b/include/obj/BSFurnitureMarker.h index 7d128de4674616424e87c169643d378865725145..4b841bf1855ba07333e57067c845da468a34c1f1 100644 --- a/include/obj/BSFurnitureMarker.h +++ b/include/obj/BSFurnitureMarker.h @@ -26,6 +26,7 @@ public: NIFLIB_API ~BSFurnitureMarker(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/BSKeyframeController.h b/include/obj/BSKeyframeController.h index 0fc0f7fedf9affe9135d1a1363373d68efc8d3e6..42b42603b161cd64a78805076732ba219b5bf205 100644 --- a/include/obj/BSKeyframeController.h +++ b/include/obj/BSKeyframeController.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~BSKeyframeController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/BSPSysArrayEmitter.h b/include/obj/BSPSysArrayEmitter.h index fa69f7bd9c9f8dd825f07c0487bac8801e4583cc..4fbc83e0b050bfcf78c0dcb9fda865cb1f582b11 100644 --- a/include/obj/BSPSysArrayEmitter.h +++ b/include/obj/BSPSysArrayEmitter.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~BSPSysArrayEmitter(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/BSParentVelocityModifier.h b/include/obj/BSParentVelocityModifier.h index 86cc9bfaef1044dcf432f873c8f8fd03c52d1fe8..01b34b9a6d680c5faa8a29ae6a154609314d892b 100644 --- a/include/obj/BSParentVelocityModifier.h +++ b/include/obj/BSParentVelocityModifier.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~BSParentVelocityModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/BSXFlags.h b/include/obj/BSXFlags.h index b00f47593b109442756c3f52b5720a7a5c7109cc..dcf023e98b1fe2ab9a1fbda70b8d30ad71b1e63a 100644 --- a/include/obj/BSXFlags.h +++ b/include/obj/BSXFlags.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~BSXFlags(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/FxButton.h b/include/obj/FxButton.h index a398e0279532767c8073a2316923f023d29bbd15..3a60968019395ba1023eba48e16a0c92f4a180b0 100644 --- a/include/obj/FxButton.h +++ b/include/obj/FxButton.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~FxButton(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/FxRadioButton.h b/include/obj/FxRadioButton.h index 88559fee44def5d1a3ad65010b5341616f8ff056..da88e343913267aa840c34f27243e443a4167db2 100644 --- a/include/obj/FxRadioButton.h +++ b/include/obj/FxRadioButton.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~FxRadioButton(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/FxWidget.h b/include/obj/FxWidget.h index 8bd4ad4fc225f19b21a3c4888ee53625b60add63..2d7c1cd6afe6ef62e0f3c9512025b546744e204e 100644 --- a/include/obj/FxWidget.h +++ b/include/obj/FxWidget.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~FxWidget(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiAVObject.h b/include/obj/NiAVObject.h index 20c2bfbfb825d320178e0ccd8d57472d5560762e..33599cac12de56a1d16cdb2a530068e06780d27f 100644 --- a/include/obj/NiAVObject.h +++ b/include/obj/NiAVObject.h @@ -31,6 +31,7 @@ public: NIFLIB_API ~NiAVObject(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiAlphaController.h b/include/obj/NiAlphaController.h index f609fe31dcfadb4399f5b0cfadeeb6982cc36d0f..465d46bd7daa204bf57d3bcb95efa83bf1c91d7e 100644 --- a/include/obj/NiAlphaController.h +++ b/include/obj/NiAlphaController.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiAlphaController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiAlphaProperty.h b/include/obj/NiAlphaProperty.h index 1aef9043428651449c268f65789eec71563d13ae..68562c83fc36099557282abac2b8785a6d30a56e 100644 --- a/include/obj/NiAlphaProperty.h +++ b/include/obj/NiAlphaProperty.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiAlphaProperty(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiAmbientLight.h b/include/obj/NiAmbientLight.h index 5cbfb6f71884f7814752dbae60ae9b577449be82..36f2d0568f8d71aa9ef8a881e58366cc826bf214 100644 --- a/include/obj/NiAmbientLight.h +++ b/include/obj/NiAmbientLight.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiAmbientLight(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiAutoNormalParticles.h b/include/obj/NiAutoNormalParticles.h index 77a0ed0ce3405aead70ecd332ea28d35743265d0..ba8f36f20300b0ef883e548155b3377a2a49b0ed 100644 --- a/include/obj/NiAutoNormalParticles.h +++ b/include/obj/NiAutoNormalParticles.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiAutoNormalParticles(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiAutoNormalParticlesData.h b/include/obj/NiAutoNormalParticlesData.h index f1afdc9e203dd6fc25c2cd4b6eb3c6e0222ccd5e..940511f735216d580a6eaa4b02f8ccfa6c8955a5 100644 --- a/include/obj/NiAutoNormalParticlesData.h +++ b/include/obj/NiAutoNormalParticlesData.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiAutoNormalParticlesData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBSAnimationNode.h b/include/obj/NiBSAnimationNode.h index 5496e740f1fcb57800aa96e0a587a6006a84c06f..2b78cbc682d888e0dfd4cfaf077f39ec6e02cf96 100644 --- a/include/obj/NiBSAnimationNode.h +++ b/include/obj/NiBSAnimationNode.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiBSAnimationNode(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBSBoneLODController.h b/include/obj/NiBSBoneLODController.h index 5ebce2efc47e58b03708ead37485a8aca1825ad3..67e677071464abe2565bb130d8f7f0d11ec0deea 100644 --- a/include/obj/NiBSBoneLODController.h +++ b/include/obj/NiBSBoneLODController.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiBSBoneLODController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBSPArrayController.h b/include/obj/NiBSPArrayController.h index d147fd04f4b790137cfecf32bb94de505f6cfb3d..07d9793cddef8dafcd43eb38fb3621238b2d5d8c 100644 --- a/include/obj/NiBSPArrayController.h +++ b/include/obj/NiBSPArrayController.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiBSPArrayController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBSParticleNode.h b/include/obj/NiBSParticleNode.h index c4fe79b26d8a1877efa867fd0eefe0dbd4dd9d66..8939bf20b518b8b452de50447483a6ed8af78d9b 100644 --- a/include/obj/NiBSParticleNode.h +++ b/include/obj/NiBSParticleNode.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiBSParticleNode(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBSplineBasisData.h b/include/obj/NiBSplineBasisData.h index 5db389ab1fd7e6e31eb28d43d7050a4bd59343a1..5cc5f2cc118cd1f11df94387209c028d671a4cf7 100644 --- a/include/obj/NiBSplineBasisData.h +++ b/include/obj/NiBSplineBasisData.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiBSplineBasisData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBSplineCompFloatInterpolator.h b/include/obj/NiBSplineCompFloatInterpolator.h index b150dfc4ebf33b989bd4b35ffb7dbfff98633a70..84f9d894cd20ae2b11dac13d2fe6069fb95ffea6 100644 --- a/include/obj/NiBSplineCompFloatInterpolator.h +++ b/include/obj/NiBSplineCompFloatInterpolator.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiBSplineCompFloatInterpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBSplineCompPoint3Interpolator.h b/include/obj/NiBSplineCompPoint3Interpolator.h index 1f0a41cab6c7c0400e295c0ff6b0b658079a24d3..bd2309992e9b5c753c6d91a2f2c4160cc94279f2 100644 --- a/include/obj/NiBSplineCompPoint3Interpolator.h +++ b/include/obj/NiBSplineCompPoint3Interpolator.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~NiBSplineCompPoint3Interpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBSplineCompTransformInterpolator.h b/include/obj/NiBSplineCompTransformInterpolator.h index f67b7ae662bb8311d43121112ccae915ac24b6e4..eaf36c161713055c377889f9ef3a3be1574ce9c6 100644 --- a/include/obj/NiBSplineCompTransformInterpolator.h +++ b/include/obj/NiBSplineCompTransformInterpolator.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiBSplineCompTransformInterpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBSplineData.h b/include/obj/NiBSplineData.h index 14b27ff8018090797f36a602260e4e3ed265878d..150e5aac92e03393f9bb9051ac05e86d22e093ec 100644 --- a/include/obj/NiBSplineData.h +++ b/include/obj/NiBSplineData.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiBSplineData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBSplineInterpolator.h b/include/obj/NiBSplineInterpolator.h index 68ffc5860956daa249ccd84661abac4a226ff834..404ba2c9fb2b8ca954dbbcc497242b06d054d74d 100644 --- a/include/obj/NiBSplineInterpolator.h +++ b/include/obj/NiBSplineInterpolator.h @@ -26,6 +26,7 @@ public: NIFLIB_API ~NiBSplineInterpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBillboardNode.h b/include/obj/NiBillboardNode.h index c32facf0edff0476db21a42dc02c1be6403c1da2..84ee53cafac08a40cf3d106f1ba6835de8655dc0 100644 --- a/include/obj/NiBillboardNode.h +++ b/include/obj/NiBillboardNode.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiBillboardNode(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBinaryExtraData.h b/include/obj/NiBinaryExtraData.h index 696335ae87704f1bf2c4021912f4a6ec587e5594..a3829beee90dfde0f90e87a60e0f865830309cb5 100644 --- a/include/obj/NiBinaryExtraData.h +++ b/include/obj/NiBinaryExtraData.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~NiBinaryExtraData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBlendBoolInterpolator.h b/include/obj/NiBlendBoolInterpolator.h index 30f99784e10a8758d864116b1ff3a3e064cb55ce..1b77f2a8a9361724ba2dfa3dbc3f73ffaa5fad29 100644 --- a/include/obj/NiBlendBoolInterpolator.h +++ b/include/obj/NiBlendBoolInterpolator.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiBlendBoolInterpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBlendFloatInterpolator.h b/include/obj/NiBlendFloatInterpolator.h index f783fc322be252d4378b8e367dcbda5b50bdc379..cdfb23ac9aae888f5165e3dcb0aa840e7f810d2d 100644 --- a/include/obj/NiBlendFloatInterpolator.h +++ b/include/obj/NiBlendFloatInterpolator.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiBlendFloatInterpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBlendInterpolator.h b/include/obj/NiBlendInterpolator.h index fd386fa97686366f0cdc74130167884dc039ce30..5d977df4b423ef9615b61d9883a2009a69e13213 100644 --- a/include/obj/NiBlendInterpolator.h +++ b/include/obj/NiBlendInterpolator.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiBlendInterpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBlendPoint3Interpolator.h b/include/obj/NiBlendPoint3Interpolator.h index c8a0d0e806114cf8d65250ed64f3eb9435d86559..b9aea723fb1b2a654b6f151dfded8f2d16a9f86b 100644 --- a/include/obj/NiBlendPoint3Interpolator.h +++ b/include/obj/NiBlendPoint3Interpolator.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiBlendPoint3Interpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBlendTransformInterpolator.h b/include/obj/NiBlendTransformInterpolator.h index 5dd7e8c4b63897b3c130375b1c92d0de1d7dcfbc..f791927b628e07aac6c8c89031a2d6903138a93e 100644 --- a/include/obj/NiBlendTransformInterpolator.h +++ b/include/obj/NiBlendTransformInterpolator.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiBlendTransformInterpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBoneLODController.h b/include/obj/NiBoneLODController.h index 6bc472bd8deedc62c40fce34f0217bbaeb5cf63f..2fbcb18dfb19ddcaeb1310d3811e98d57327d9f4 100644 --- a/include/obj/NiBoneLODController.h +++ b/include/obj/NiBoneLODController.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiBoneLODController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBoolData.h b/include/obj/NiBoolData.h index c6a3b640eda1afdd90bf49fbc579714145013a36..b86c8b28e65c5ee15649e461234705a7a72e8c17 100644 --- a/include/obj/NiBoolData.h +++ b/include/obj/NiBoolData.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiBoolData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBoolInterpolator.h b/include/obj/NiBoolInterpolator.h index b3d3bd9d861ab6494197f566dffc1458438f7692..4bd83ee59e111bc9dc95c64d24ce02dfc9686970 100644 --- a/include/obj/NiBoolInterpolator.h +++ b/include/obj/NiBoolInterpolator.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiBoolInterpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBoolTimelineInterpolator.h b/include/obj/NiBoolTimelineInterpolator.h index c2bd46898b8cda009e01d08623db6c457f8056d4..e020983ece9c6102a59beb308a86d46e91b282ff 100644 --- a/include/obj/NiBoolTimelineInterpolator.h +++ b/include/obj/NiBoolTimelineInterpolator.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiBoolTimelineInterpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiBooleanExtraData.h b/include/obj/NiBooleanExtraData.h index c5ccb7607dd73c55f8adc82dfc8c081fbda747f3..64a2d2868dd270429c1f937a9e659e7bd6866d86 100644 --- a/include/obj/NiBooleanExtraData.h +++ b/include/obj/NiBooleanExtraData.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiBooleanExtraData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiCamera.h b/include/obj/NiCamera.h index 0bc365a0825ee6d8fb9f52e1b2a20c94e51b7fe1..5e91498099445946531c579536b45f35beab2490 100644 --- a/include/obj/NiCamera.h +++ b/include/obj/NiCamera.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiCamera(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiClod.h b/include/obj/NiClod.h index 7bb65198f391c4f09de5e92cae3bba71bf9850b5..a24d1b35f7acb15797d18f8c61612ff95f8ba0f4 100644 --- a/include/obj/NiClod.h +++ b/include/obj/NiClod.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiClod(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiClodData.h b/include/obj/NiClodData.h index 59c51185ba2c3f0d240f000b4765d5446df64a26..3c3c5795cafaa7780b5a69d957cbc7d3db261323 100644 --- a/include/obj/NiClodData.h +++ b/include/obj/NiClodData.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiClodData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiClodSkinInstance.h b/include/obj/NiClodSkinInstance.h index 8a1d8aea0a5a625d609cd115248a152177ed6ea3..6a14fde77684780dfadf931e5038db76f6d7bef4 100644 --- a/include/obj/NiClodSkinInstance.h +++ b/include/obj/NiClodSkinInstance.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiClodSkinInstance(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiCollisionData.h b/include/obj/NiCollisionData.h index 74ede186e7aa8b6559bcf7d02f9f38564eaafde2..38d3b6287873ed5fe8327c949fb052ed41a082ba 100644 --- a/include/obj/NiCollisionData.h +++ b/include/obj/NiCollisionData.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~NiCollisionData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiCollisionObject.h b/include/obj/NiCollisionObject.h index 07303f1529a8fed2a8cbb74846c55c5f4babdde9..cf26860d5ff2fe371cee8ab866631e250ecf786f 100644 --- a/include/obj/NiCollisionObject.h +++ b/include/obj/NiCollisionObject.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiCollisionObject(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiColorData.h b/include/obj/NiColorData.h index 8de64eecbb0947c9509f9c678d522f4915ca7eb2..3833fa8c9b0b6cbdfe70bdd900e8c8e9320882d2 100644 --- a/include/obj/NiColorData.h +++ b/include/obj/NiColorData.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiColorData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiColorExtraData.h b/include/obj/NiColorExtraData.h index 2c034e935533e0c56c130c49297a7a907094edb7..5452b6949c55fb2f20b65c9924b56944bee86306 100644 --- a/include/obj/NiColorExtraData.h +++ b/include/obj/NiColorExtraData.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiColorExtraData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiControllerManager.h b/include/obj/NiControllerManager.h index 264fdf57dba544d1cad8c74171aeffcc58382f55..cbf5692aee88109ab4459ca9faea1d1b182f2966 100644 --- a/include/obj/NiControllerManager.h +++ b/include/obj/NiControllerManager.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiControllerManager(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiControllerSequence.h b/include/obj/NiControllerSequence.h index c8d4a5442ad9609e9b819e4c96dc778f8bb53e29..45b9ad93358d28cdecaf44a6a868f422189618b7 100644 --- a/include/obj/NiControllerSequence.h +++ b/include/obj/NiControllerSequence.h @@ -32,6 +32,7 @@ public: NIFLIB_API ~NiControllerSequence(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiDefaultAVObjectPalette.h b/include/obj/NiDefaultAVObjectPalette.h index 527aa3a54877e7c6145463c7d749571d42f6be4e..4ec328ec3285d17ac366c665bf6562cbc6ecea86 100644 --- a/include/obj/NiDefaultAVObjectPalette.h +++ b/include/obj/NiDefaultAVObjectPalette.h @@ -27,6 +27,7 @@ public: NIFLIB_API ~NiDefaultAVObjectPalette(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiDirectionalLight.h b/include/obj/NiDirectionalLight.h index 0fc79ddd7ef0f61bcb28385d853bfdce74a3d4b6..f8cfab3dc07cf4976056ea8b07d55b6f166e37d5 100644 --- a/include/obj/NiDirectionalLight.h +++ b/include/obj/NiDirectionalLight.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiDirectionalLight(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiDitherProperty.h b/include/obj/NiDitherProperty.h index aa124fe8ab078740bb25144a789ce502f9bb5cdd..7313c753389fb53016b80dbbd8bfa46813101d40 100644 --- a/include/obj/NiDitherProperty.h +++ b/include/obj/NiDitherProperty.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiDitherProperty(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiDynamicEffect.h b/include/obj/NiDynamicEffect.h index f348ac36a5732c341b406b884ec3514b5832b0e8..679ac192f0a6741ea961a7e788c71cba1025d709 100644 --- a/include/obj/NiDynamicEffect.h +++ b/include/obj/NiDynamicEffect.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiDynamicEffect(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiExtraData.h b/include/obj/NiExtraData.h index 849169512a8ba1677ce26c25e49506d48ceb6e1f..e0d4cf5f232b38f761a7fa0185688dd25158f426 100644 --- a/include/obj/NiExtraData.h +++ b/include/obj/NiExtraData.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~NiExtraData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiFlipController.h b/include/obj/NiFlipController.h index 47efe7c11b8a82bec65aee94ac3ef63bfba5ebe0..e8d50c8818e587f85fa551164b6960f384ac09fd 100644 --- a/include/obj/NiFlipController.h +++ b/include/obj/NiFlipController.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiFlipController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiFloatData.h b/include/obj/NiFloatData.h index 5d0c048378e2423152336c9675e6b64fe208cca7..de46879a9a8f5d5404a1d827563194b41d619498 100644 --- a/include/obj/NiFloatData.h +++ b/include/obj/NiFloatData.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiFloatData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiFloatExtraData.h b/include/obj/NiFloatExtraData.h index 77284aff113648eaffe2b97df50231b9bb3029af..662bc69f75c16c0272039d1be718fd6cae3e9679 100644 --- a/include/obj/NiFloatExtraData.h +++ b/include/obj/NiFloatExtraData.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiFloatExtraData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiFloatExtraDataController.h b/include/obj/NiFloatExtraDataController.h index 2f7c9b399d9aa108facccd2ea4171973d8c6012c..5d19feef7786520a089401d510df5178657f274b 100644 --- a/include/obj/NiFloatExtraDataController.h +++ b/include/obj/NiFloatExtraDataController.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiFloatExtraDataController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiFloatInterpolator.h b/include/obj/NiFloatInterpolator.h index 9e2f25c3a0abeda23921929f49e7e4bafd7b4823..460a34bd21378bd9fdeeb42dd2c8b42dd49d48dd 100644 --- a/include/obj/NiFloatInterpolator.h +++ b/include/obj/NiFloatInterpolator.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiFloatInterpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiFloatsExtraData.h b/include/obj/NiFloatsExtraData.h index d0b6082c986ed85a673ce2f3b98dc546d99e57fb..ff815c3e3a2e1683d6e5b4f8f4acf330764d7ef7 100644 --- a/include/obj/NiFloatsExtraData.h +++ b/include/obj/NiFloatsExtraData.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiFloatsExtraData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiFogProperty.h b/include/obj/NiFogProperty.h index b6d26ea594b2f1c86d370665948fe07d38a0c20f..c71ffbf0085bd97700f7c47de6532d6b34ca93ae 100644 --- a/include/obj/NiFogProperty.h +++ b/include/obj/NiFogProperty.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiFogProperty(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiGeomMorpherController.h b/include/obj/NiGeomMorpherController.h index 2cad8ec08b9bd974e987fae46a4615804dc22ef1..ebc058080621ed7ce95edc0060797cfa8ac2e04f 100644 --- a/include/obj/NiGeomMorpherController.h +++ b/include/obj/NiGeomMorpherController.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiGeomMorpherController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiGeometry.h b/include/obj/NiGeometry.h index f1f77c939ff2b653f69e71bef2cba9ae0c8b7750..00e8c0313cc267ff1f26771f3beb2443ce63362c 100644 --- a/include/obj/NiGeometry.h +++ b/include/obj/NiGeometry.h @@ -34,6 +34,7 @@ public: NIFLIB_API ~NiGeometry(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiGeometryData.h b/include/obj/NiGeometryData.h index e18a6cc12ee87d18ca4bc8255ca87a99fe2b3314..b268864faf4ef04ec8c13ac0891c5d5a1164f76b 100644 --- a/include/obj/NiGeometryData.h +++ b/include/obj/NiGeometryData.h @@ -32,6 +32,7 @@ public: NIFLIB_API ~NiGeometryData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiGravity.h b/include/obj/NiGravity.h index bec76a57bf43ca1468649bb5f9e962aabdd91c34..39f0fe7486c33211d46153ce0e558cfb38e8909f 100644 --- a/include/obj/NiGravity.h +++ b/include/obj/NiGravity.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiGravity(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiImage.h b/include/obj/NiImage.h index 641a21e57b5efcf7f7bc3f253dadf16c1a45041f..5981963685f15fe66f5e0964da5ae2063f6e2fd1 100644 --- a/include/obj/NiImage.h +++ b/include/obj/NiImage.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiImage(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiIntegerExtraData.h b/include/obj/NiIntegerExtraData.h index 93932ae23163fa1b995759e338960d0263976aac..1b12207f9a41ab941a9993159d3b71a17dd5fe6c 100644 --- a/include/obj/NiIntegerExtraData.h +++ b/include/obj/NiIntegerExtraData.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiIntegerExtraData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiIntegersExtraData.h b/include/obj/NiIntegersExtraData.h index 51421ecb1f9891dafd19dd3d02c86a148e0f6acf..1e46530b1a5d0558fb822f791b609fd06f75a7b5 100644 --- a/include/obj/NiIntegersExtraData.h +++ b/include/obj/NiIntegersExtraData.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiIntegersExtraData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiInterpolator.h b/include/obj/NiInterpolator.h index 97259320170568ea6b659b3f7630b3b2f4f64eea..032582e7e0989873d26cc6f494bc81f60552083f 100644 --- a/include/obj/NiInterpolator.h +++ b/include/obj/NiInterpolator.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiInterpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiKeyframeController.h b/include/obj/NiKeyframeController.h index 2dfac325154cd0e72a5f4e48cc753bd1c1cdeb22..2c0e43ee309b30836d805557dcfbd612f6fd437c 100644 --- a/include/obj/NiKeyframeController.h +++ b/include/obj/NiKeyframeController.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiKeyframeController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiKeyframeData.h b/include/obj/NiKeyframeData.h index f198f58e2373d75ee6f2cddbdfab31adbe9895fc..c764107a35147752c2a641ce7061ca2c87701775 100644 --- a/include/obj/NiKeyframeData.h +++ b/include/obj/NiKeyframeData.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiKeyframeData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiLODData.h b/include/obj/NiLODData.h index 349c94c4803bdb3e26e8fd12e90cb8d1d804d398..28c077bc8078acb1041337f4bb6e561954bed787 100644 --- a/include/obj/NiLODData.h +++ b/include/obj/NiLODData.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiLODData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiLODNode.h b/include/obj/NiLODNode.h index 47c559d0e4385d1355544158d3279055f81cb2ca..152b027e27118f6fb065486f2f446601e2bd5901 100644 --- a/include/obj/NiLODNode.h +++ b/include/obj/NiLODNode.h @@ -31,6 +31,7 @@ public: NIFLIB_API ~NiLODNode(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiLight.h b/include/obj/NiLight.h index dbbaa8d29246b8dbbb6c54d6584a0753efe82f10..e4995223f72e66428c0a7e3283c8427be0043f62 100644 --- a/include/obj/NiLight.h +++ b/include/obj/NiLight.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiLight(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiLightColorController.h b/include/obj/NiLightColorController.h index 2544f8a08b12f1a0bc495593905be4dca5d410db..7cb4fd21d0f504e390a5504cfcfb38b78e2ca4e6 100644 --- a/include/obj/NiLightColorController.h +++ b/include/obj/NiLightColorController.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiLightColorController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiLightDimmerController.h b/include/obj/NiLightDimmerController.h index 04d45aa01a1124e7d54cc4120f9316eccedbd351..1b99c98337183d0a1e4f56aeddc9e8e1474588d5 100644 --- a/include/obj/NiLightDimmerController.h +++ b/include/obj/NiLightDimmerController.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiLightDimmerController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiLookAtController.h b/include/obj/NiLookAtController.h index 4f8dae8685e0425ca5f225e602eb78e5bc5f39db..8882650820d05e012b18168b5c3168a9cf8a1766 100644 --- a/include/obj/NiLookAtController.h +++ b/include/obj/NiLookAtController.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiLookAtController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiLookAtInterpolator.h b/include/obj/NiLookAtInterpolator.h index e525e06ca49a97aeaa6060cddd0f7fb89ab14281..2651e3b5baa23f564d4a783184cf2fbeb0c520b5 100644 --- a/include/obj/NiLookAtInterpolator.h +++ b/include/obj/NiLookAtInterpolator.h @@ -30,6 +30,7 @@ public: NIFLIB_API ~NiLookAtInterpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiMaterialColorController.h b/include/obj/NiMaterialColorController.h index 2ca593b7d3c2631918c4f42f90d781477d259768..cd1c902f1e6eb822193929d8db5327af660bc324 100644 --- a/include/obj/NiMaterialColorController.h +++ b/include/obj/NiMaterialColorController.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiMaterialColorController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiMaterialProperty.h b/include/obj/NiMaterialProperty.h index 96bb073cf9e15c21a7ca77bce5eea8537bcc5c88..374ae6ff1ae77deb8e3926b84de33d60c4685a4c 100644 --- a/include/obj/NiMaterialProperty.h +++ b/include/obj/NiMaterialProperty.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiMaterialProperty(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiMeshPSysData.h b/include/obj/NiMeshPSysData.h index d97b4041f1e78f69c5e1ab4d81e47cf1bfd6f850..389f58e6d553010dcb7a3bbc05d5189d316eb8d9 100644 --- a/include/obj/NiMeshPSysData.h +++ b/include/obj/NiMeshPSysData.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiMeshPSysData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiMeshParticleSystem.h b/include/obj/NiMeshParticleSystem.h index bcc234d115e28db167a0162898a3613b3878e394..3c203f465e0079d8707afec92449b673151aed14 100644 --- a/include/obj/NiMeshParticleSystem.h +++ b/include/obj/NiMeshParticleSystem.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiMeshParticleSystem(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiMorphData.h b/include/obj/NiMorphData.h index cc95c43e710c5c5858e8090ff6575d1d2f8f0460..0e22d64ab333241b43e1e9fc9994c9b6ba55aa2d 100644 --- a/include/obj/NiMorphData.h +++ b/include/obj/NiMorphData.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiMorphData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiMultiTargetTransformController.h b/include/obj/NiMultiTargetTransformController.h index 9689358c352a46a828c78e13ac8c78f7a9003735..05cb0662dc22640df11e09e17654b016fb19c732 100644 --- a/include/obj/NiMultiTargetTransformController.h +++ b/include/obj/NiMultiTargetTransformController.h @@ -26,6 +26,7 @@ public: NIFLIB_API ~NiMultiTargetTransformController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiNode.h b/include/obj/NiNode.h index 910e4cfd880b5e34316bf2022e9382184ae646dd..ef8fc8d57917d8c7b27490da8ba33178c1738351 100644 --- a/include/obj/NiNode.h +++ b/include/obj/NiNode.h @@ -31,6 +31,7 @@ public: NIFLIB_API ~NiNode(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiObject.h b/include/obj/NiObject.h index 51c6eb8aa640f9f164a9a09901ddb463aae28b6c..aef9fddcd841ecd7ae42c9b847912b6431c3b945 100644 --- a/include/obj/NiObject.h +++ b/include/obj/NiObject.h @@ -130,6 +130,7 @@ public: NIFLIB_HIDDEN virtual void FixLinks( const map<unsigned int,NiObjectRef> & objects, list<unsigned int> & link_stack, const NifInfo & info ) {} NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); private: mutable unsigned int _ref_count; diff --git a/include/obj/NiObjectNET.h b/include/obj/NiObjectNET.h index e06dd403be39e97e0586c4d07591d1563ce6e372..03f05770a8aa1f12aae90dccf83d9bf8a54f3cb7 100644 --- a/include/obj/NiObjectNET.h +++ b/include/obj/NiObjectNET.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiObjectNET(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysAgeDeathModifier.h b/include/obj/NiPSysAgeDeathModifier.h index e604f686b4df710aff2e99f6c8a09629aa78b6a4..b7b9340074fa5095e3ad12cf5996d2ab744db116 100644 --- a/include/obj/NiPSysAgeDeathModifier.h +++ b/include/obj/NiPSysAgeDeathModifier.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiPSysAgeDeathModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysBombModifier.h b/include/obj/NiPSysBombModifier.h index 0784f2b53c15585efbe251d68f5d70cc0ec15e0e..0b4683e6e7edb63979dd7bf0385561c7f13fd646 100644 --- a/include/obj/NiPSysBombModifier.h +++ b/include/obj/NiPSysBombModifier.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~NiPSysBombModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysBoundUpdateModifier.h b/include/obj/NiPSysBoundUpdateModifier.h index 91e67eb4eed0a3a8db1665e0fe2529f5108f18b6..c93c67e0601a4822513b1ec6291404176f03373b 100644 --- a/include/obj/NiPSysBoundUpdateModifier.h +++ b/include/obj/NiPSysBoundUpdateModifier.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPSysBoundUpdateModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysBoxEmitter.h b/include/obj/NiPSysBoxEmitter.h index 3858e39dcb83536c8de82ba05633f59d036b963d..6245aa20fb4be541e93d96a641e22257e899cfcd 100644 --- a/include/obj/NiPSysBoxEmitter.h +++ b/include/obj/NiPSysBoxEmitter.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPSysBoxEmitter(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysColliderManager.h b/include/obj/NiPSysColliderManager.h index 61b95d1c9c5e14617c34c19b47a2f1150ee3bb0d..89074efb4042b780ae8c0fa1adcbdd74983d32c0 100644 --- a/include/obj/NiPSysColliderManager.h +++ b/include/obj/NiPSysColliderManager.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiPSysColliderManager(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysColorModifier.h b/include/obj/NiPSysColorModifier.h index 6ca73a1bd829538da94b1677bdaf0fa325a79871..5b9b404f74953313fae1fba6f719e509c0ce5698 100644 --- a/include/obj/NiPSysColorModifier.h +++ b/include/obj/NiPSysColorModifier.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiPSysColorModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysCylinderEmitter.h b/include/obj/NiPSysCylinderEmitter.h index c3f2c5c34b15acc8ad3fe94d15586eea960a19de..8631657979cbbb9e8d37138dcf58f3a9a7fbb693 100644 --- a/include/obj/NiPSysCylinderEmitter.h +++ b/include/obj/NiPSysCylinderEmitter.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPSysCylinderEmitter(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysData.h b/include/obj/NiPSysData.h index 8621b1dc6c2b1234c971427f9d96faff0eb25ed5..fe7e5acc527a9542ac4af0b350a3b4117fb68f24 100644 --- a/include/obj/NiPSysData.h +++ b/include/obj/NiPSysData.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiPSysData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysDragModifier.h b/include/obj/NiPSysDragModifier.h index 10cf987f5cef0e8180ac55162d870d6bb9586d79..b9c6aa1c52bc985a561b82d45bd0879858cad1ae 100644 --- a/include/obj/NiPSysDragModifier.h +++ b/include/obj/NiPSysDragModifier.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~NiPSysDragModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysEmitter.h b/include/obj/NiPSysEmitter.h index 91614700f08b61d9fa84b5810e0892667cb00a83..824f700e8f380a577e9a1d5d3e32965f3164389f 100644 --- a/include/obj/NiPSysEmitter.h +++ b/include/obj/NiPSysEmitter.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPSysEmitter(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysEmitterCtlr.h b/include/obj/NiPSysEmitterCtlr.h index cb74e99c8b6030d420466547714b420354ad7c6c..d2a26de2d723452d0ff60521b543c62d89f09f6c 100644 --- a/include/obj/NiPSysEmitterCtlr.h +++ b/include/obj/NiPSysEmitterCtlr.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiPSysEmitterCtlr(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysEmitterCtlrData.h b/include/obj/NiPSysEmitterCtlrData.h index ec7c66d03b92e615f4b9c3f1645c8ea356106e16..6c22d0e082f839c077cb7a8fc750164bbd21a8d2 100644 --- a/include/obj/NiPSysEmitterCtlrData.h +++ b/include/obj/NiPSysEmitterCtlrData.h @@ -26,6 +26,7 @@ public: NIFLIB_API ~NiPSysEmitterCtlrData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysEmitterDeclinationCtlr.h b/include/obj/NiPSysEmitterDeclinationCtlr.h index 2b8111118048c962de97a33068e436e9d3869b40..b8d5c46a7691e8a8942334ac9ab3f91a676a44d7 100644 --- a/include/obj/NiPSysEmitterDeclinationCtlr.h +++ b/include/obj/NiPSysEmitterDeclinationCtlr.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPSysEmitterDeclinationCtlr(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysEmitterDeclinationVarCtlr.h b/include/obj/NiPSysEmitterDeclinationVarCtlr.h index 6b6729a71dc2e9fde214b94e30c96121b5da5f7e..e5ccc027c3c71ff1e63d03c5049f5620656ef267 100644 --- a/include/obj/NiPSysEmitterDeclinationVarCtlr.h +++ b/include/obj/NiPSysEmitterDeclinationVarCtlr.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPSysEmitterDeclinationVarCtlr(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysEmitterInitialRadiusCtlr.h b/include/obj/NiPSysEmitterInitialRadiusCtlr.h index e567d29b6c2f04efa245d800e46680ab04dcabcd..e83f1ec393662275bd2e9443f48976fa3e8347c9 100644 --- a/include/obj/NiPSysEmitterInitialRadiusCtlr.h +++ b/include/obj/NiPSysEmitterInitialRadiusCtlr.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPSysEmitterInitialRadiusCtlr(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysEmitterLifeSpanCtlr.h b/include/obj/NiPSysEmitterLifeSpanCtlr.h index 01f54fc597409b41b2ada9db5b5757ee95e8da75..f48ea3907ead39a2a048733dfc0919df12a878a6 100644 --- a/include/obj/NiPSysEmitterLifeSpanCtlr.h +++ b/include/obj/NiPSysEmitterLifeSpanCtlr.h @@ -26,6 +26,7 @@ public: NIFLIB_API ~NiPSysEmitterLifeSpanCtlr(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysEmitterSpeedCtlr.h b/include/obj/NiPSysEmitterSpeedCtlr.h index 8578233c52d05126bf69565cc9b3dbc6cfac82cb..72e72afedfab52853b2bbb4ab77b3d5026d2a3e8 100644 --- a/include/obj/NiPSysEmitterSpeedCtlr.h +++ b/include/obj/NiPSysEmitterSpeedCtlr.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~NiPSysEmitterSpeedCtlr(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysGravityModifier.h b/include/obj/NiPSysGravityModifier.h index e590eb08a62529251ac0f0eba72943b634063365..3cd6a8e699f8bc99fa3d5f4207469ef950868564 100644 --- a/include/obj/NiPSysGravityModifier.h +++ b/include/obj/NiPSysGravityModifier.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~NiPSysGravityModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysGravityStrengthCtlr.h b/include/obj/NiPSysGravityStrengthCtlr.h index 6ea0d1474a69c4ed1ca37125a3ea96f4e588ab36..96cb7fa5c4b0415ef01a2fbe1612afd5b5989307 100644 --- a/include/obj/NiPSysGravityStrengthCtlr.h +++ b/include/obj/NiPSysGravityStrengthCtlr.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~NiPSysGravityStrengthCtlr(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysGrowFadeModifier.h b/include/obj/NiPSysGrowFadeModifier.h index 970a0f2b1c338013d16106f5dec9ce29efc6ab4a..864347ee908a7d4c09561589e5f5c805f5b50a93 100644 --- a/include/obj/NiPSysGrowFadeModifier.h +++ b/include/obj/NiPSysGrowFadeModifier.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPSysGrowFadeModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysMeshEmitter.h b/include/obj/NiPSysMeshEmitter.h index a6facb020f421579d6a6f23229aa2408ae2f9c96..54b1cdfa878aef6d67be7988964d9d4875ed9064 100644 --- a/include/obj/NiPSysMeshEmitter.h +++ b/include/obj/NiPSysMeshEmitter.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiPSysMeshEmitter(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysMeshUpdateModifier.h b/include/obj/NiPSysMeshUpdateModifier.h index e70660ac7d6609b572bb14b84a74d072d5c3fe49..c32e856c3bc34ecf1c477a95808ee448d7f8f168 100644 --- a/include/obj/NiPSysMeshUpdateModifier.h +++ b/include/obj/NiPSysMeshUpdateModifier.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiPSysMeshUpdateModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysModifier.h b/include/obj/NiPSysModifier.h index f82b1ddca12f7d3619eb687f7cf78fe6dec2d37e..b73f947cc287a6f0f371560edd1b92c6f911018b 100644 --- a/include/obj/NiPSysModifier.h +++ b/include/obj/NiPSysModifier.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~NiPSysModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysModifierActiveCtlr.h b/include/obj/NiPSysModifierActiveCtlr.h index de7a623bffd28c2caf1292e5b5cf08c6d6a63421..f968c46cbd9442da03fa6c75817eb4a8ea411c6e 100644 --- a/include/obj/NiPSysModifierActiveCtlr.h +++ b/include/obj/NiPSysModifierActiveCtlr.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPSysModifierActiveCtlr(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysPlanarCollider.h b/include/obj/NiPSysPlanarCollider.h index 3a24aef791e5c344ad4f681db7ff30541b5e3fcf..55e503d6d8ee6c24686fb686496dada5f443c50e 100644 --- a/include/obj/NiPSysPlanarCollider.h +++ b/include/obj/NiPSysPlanarCollider.h @@ -30,6 +30,7 @@ public: NIFLIB_API ~NiPSysPlanarCollider(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysPositionModifier.h b/include/obj/NiPSysPositionModifier.h index ce5e0490437079cc4fe534e3e16f33bfd60a7b75..0c3ea45bf5721f31785d5eb3859d583ba75448c3 100644 --- a/include/obj/NiPSysPositionModifier.h +++ b/include/obj/NiPSysPositionModifier.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiPSysPositionModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysResetOnLoopCtlr.h b/include/obj/NiPSysResetOnLoopCtlr.h index a063da9eb381e9b556999fed2179eaefc454c576..067b7c7fdd2fcde1af950bb44e93c4be1288c42b 100644 --- a/include/obj/NiPSysResetOnLoopCtlr.h +++ b/include/obj/NiPSysResetOnLoopCtlr.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPSysResetOnLoopCtlr(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysRotationModifier.h b/include/obj/NiPSysRotationModifier.h index 0e1f744932a03387f079dd3fc4a08d0f01f6713d..cede80f3c365904308b352bdd417e7cc7c154d81 100644 --- a/include/obj/NiPSysRotationModifier.h +++ b/include/obj/NiPSysRotationModifier.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPSysRotationModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysSpawnModifier.h b/include/obj/NiPSysSpawnModifier.h index 699b3f3b888d6db8a22e52a26ed01110a22efc02..3f68f38c8c5dc62849178f6ae812cc40dbc6f61e 100644 --- a/include/obj/NiPSysSpawnModifier.h +++ b/include/obj/NiPSysSpawnModifier.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPSysSpawnModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysSphereEmitter.h b/include/obj/NiPSysSphereEmitter.h index 084d280d9edbacd118c0b5f345316b1b40a3437e..4df9cbeee1d25f01c99d7332eeea68266f372b2d 100644 --- a/include/obj/NiPSysSphereEmitter.h +++ b/include/obj/NiPSysSphereEmitter.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPSysSphereEmitter(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysUpdateCtlr.h b/include/obj/NiPSysUpdateCtlr.h index 33bc64cedb8e37d973985ca82d40ba28e8e45025..c631f4f127fe8ca42d827f13f8327ba079615ac2 100644 --- a/include/obj/NiPSysUpdateCtlr.h +++ b/include/obj/NiPSysUpdateCtlr.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPSysUpdateCtlr(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPSysVolumeEmitter.h b/include/obj/NiPSysVolumeEmitter.h index 823848a8bb46cec7cb0ba54e73bf5a1e1411b7b8..285248d89dec02524d4c8f7e0bb77d308493e2c7 100644 --- a/include/obj/NiPSysVolumeEmitter.h +++ b/include/obj/NiPSysVolumeEmitter.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~NiPSysVolumeEmitter(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPalette.h b/include/obj/NiPalette.h index e03513273051dc03e17de900e1ffd05bf3819050..c28d8197aab1d6ee69c78bb791e93bb87dba2c52 100644 --- a/include/obj/NiPalette.h +++ b/include/obj/NiPalette.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiPalette(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiParticleBomb.h b/include/obj/NiParticleBomb.h index df1c2827d45d0d88b6f232106acd645fdbf007c5..434466edc3944b0dae273c5812cd2e4797849411 100644 --- a/include/obj/NiParticleBomb.h +++ b/include/obj/NiParticleBomb.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiParticleBomb(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiParticleColorModifier.h b/include/obj/NiParticleColorModifier.h index 19d53eb9cc698db3251118a765d20b058f32ddb9..c5b88ecdaa0c08509b2f9c266281c2fa8f19df02 100644 --- a/include/obj/NiParticleColorModifier.h +++ b/include/obj/NiParticleColorModifier.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiParticleColorModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiParticleGrowFade.h b/include/obj/NiParticleGrowFade.h index ff61ff6ae7e9b5ceef01373946d46e73b7209354..37787c8f2102c42ec2c01c0945fc45a1507a0122 100644 --- a/include/obj/NiParticleGrowFade.h +++ b/include/obj/NiParticleGrowFade.h @@ -26,6 +26,7 @@ public: NIFLIB_API ~NiParticleGrowFade(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiParticleMeshModifier.h b/include/obj/NiParticleMeshModifier.h index 5c6cbfd8777457f9563f398c93ed41b04ad05fed..0c35e1e3ce3aaded22a080fdd8730915e1ba0e61 100644 --- a/include/obj/NiParticleMeshModifier.h +++ b/include/obj/NiParticleMeshModifier.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiParticleMeshModifier(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiParticleMeshes.h b/include/obj/NiParticleMeshes.h index 8df655042c8e0707f205df4ddd5675145131c623..7209940a8029b258d8eaf7e74c8430372d897da3 100644 --- a/include/obj/NiParticleMeshes.h +++ b/include/obj/NiParticleMeshes.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiParticleMeshes(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiParticleMeshesData.h b/include/obj/NiParticleMeshesData.h index defe206b3124d2ccb2aecbea57de8f5e92eb8ae5..8401766954d2e927624a73dadc625288ada41aa4 100644 --- a/include/obj/NiParticleMeshesData.h +++ b/include/obj/NiParticleMeshesData.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiParticleMeshesData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiParticleRotation.h b/include/obj/NiParticleRotation.h index f9a400fec57974790c31edfa3214104f8712ad14..5f3c808ec71c85f430fe3346fc7f54170adf3a0f 100644 --- a/include/obj/NiParticleRotation.h +++ b/include/obj/NiParticleRotation.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiParticleRotation(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiParticleSystem.h b/include/obj/NiParticleSystem.h index 9332a7c25ee11afea10e2eb998ab1ed9a147fa71..ee7cba94a0599c4e48d01a4995db3ba99408d358 100644 --- a/include/obj/NiParticleSystem.h +++ b/include/obj/NiParticleSystem.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiParticleSystem(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiParticleSystemController.h b/include/obj/NiParticleSystemController.h index a02c2ed26f56b7e4a35992221d7a2ef2cdc9a3b8..a8f8da7f427140722d7dcb9069e4d56a13b52f79 100644 --- a/include/obj/NiParticleSystemController.h +++ b/include/obj/NiParticleSystemController.h @@ -31,6 +31,7 @@ public: NIFLIB_API ~NiParticleSystemController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiParticles.h b/include/obj/NiParticles.h index 08cfef00faca7b3b902b4bfe5acebf3ee9b344ff..20987056745fd0f03565579695f005a7ce2d5f56 100644 --- a/include/obj/NiParticles.h +++ b/include/obj/NiParticles.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiParticles(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiParticlesData.h b/include/obj/NiParticlesData.h index e3b002d596d66f38c791adb8b691ca2f17c6bfc6..9b3b258ff867e9f1093644aa4e702b9cb6e46626 100644 --- a/include/obj/NiParticlesData.h +++ b/include/obj/NiParticlesData.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiParticlesData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPathController.h b/include/obj/NiPathController.h index 2cf97588f4dda1153659ab9cf3b0cc5ae4814fcd..2a031ac68bcc4c715fec8dc0e0484273cc6bda54 100644 --- a/include/obj/NiPathController.h +++ b/include/obj/NiPathController.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiPathController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPathInterpolator.h b/include/obj/NiPathInterpolator.h index 0aedd3a8a7eb363cd1e1304c3af5ca3c480ee981..44c2aa224ddea483e85b4b667294b1eeaa7e2be4 100644 --- a/include/obj/NiPathInterpolator.h +++ b/include/obj/NiPathInterpolator.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiPathInterpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPixelData.h b/include/obj/NiPixelData.h index d323760e36017fc3500fed54a2c0a84415eb0514..3675ffbe4349c6eca3897086ceb357fc5fa90509 100644 --- a/include/obj/NiPixelData.h +++ b/include/obj/NiPixelData.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiPixelData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPlanarCollider.h b/include/obj/NiPlanarCollider.h index baf35fb404840064a7d77fadca2db7fe38fc5348..b0ddb27d5cc3a56964c73c5846017725e33d0b51 100644 --- a/include/obj/NiPlanarCollider.h +++ b/include/obj/NiPlanarCollider.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiPlanarCollider(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPoint3Interpolator.h b/include/obj/NiPoint3Interpolator.h index dfc9b5fc5b9f5d7381be712f39da4969bfeaf30c..797b835ba65093e9f0cb6daee478672881fae91a 100644 --- a/include/obj/NiPoint3Interpolator.h +++ b/include/obj/NiPoint3Interpolator.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiPoint3Interpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPointLight.h b/include/obj/NiPointLight.h index 181f54b5166a3bcfe0d25bf6b9d6414e3e26b389..fd53384e31b370af805b1e8ce2c683ca629fb263 100644 --- a/include/obj/NiPointLight.h +++ b/include/obj/NiPointLight.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiPointLight(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiPosData.h b/include/obj/NiPosData.h index b800ee8d5a640be5c71102e963008b0d8c08fddb..f44a48c725509a1950ac6373fd4a7ad9da906bbc 100644 --- a/include/obj/NiPosData.h +++ b/include/obj/NiPosData.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiPosData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiProperty.h b/include/obj/NiProperty.h index 6f42d0688ed13aa03e761e871964899867ff8b30..9f443741705467506c6699a671612037d8bf1a20 100644 --- a/include/obj/NiProperty.h +++ b/include/obj/NiProperty.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiProperty(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiRangeLODData.h b/include/obj/NiRangeLODData.h index 238eca14c57693a16b5b40a1baa5e38bbb2db7f0..ef26bda05ffb30ddaeb504d578d6019ee3415ed6 100644 --- a/include/obj/NiRangeLODData.h +++ b/include/obj/NiRangeLODData.h @@ -27,6 +27,7 @@ public: NIFLIB_API ~NiRangeLODData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiRotatingParticles.h b/include/obj/NiRotatingParticles.h index 63cf99d5732db662497155663e47ef423b42a3ba..d16fcd22af145409b795802dfae374c43bcc182d 100644 --- a/include/obj/NiRotatingParticles.h +++ b/include/obj/NiRotatingParticles.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiRotatingParticles(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiRotatingParticlesData.h b/include/obj/NiRotatingParticlesData.h index e8dd55763dd06d9c9bcb2e50250d83595403d2fb..7865d0e0de8dd711a451de80d2745d8d4ac8ac3c 100644 --- a/include/obj/NiRotatingParticlesData.h +++ b/include/obj/NiRotatingParticlesData.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiRotatingParticlesData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiScreenLODData.h b/include/obj/NiScreenLODData.h index b58fc7a353be19f5e7d5753ec03e8be84b63e7c2..2d1bfc308d3d60802f2724b08e85191777c32518 100644 --- a/include/obj/NiScreenLODData.h +++ b/include/obj/NiScreenLODData.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiScreenLODData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiSequenceStreamHelper.h b/include/obj/NiSequenceStreamHelper.h index e0a2d8bbd8b48899aee6c331634afe957bce49e9..64c3be50cd64429f210d0af9d38fa037a0977bca 100644 --- a/include/obj/NiSequenceStreamHelper.h +++ b/include/obj/NiSequenceStreamHelper.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiSequenceStreamHelper(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiShadeProperty.h b/include/obj/NiShadeProperty.h index 5ee61161ec7b6834af47070e52a594f076b6d0ec..aef3e932dbd6efd73e45ad1fe0119d7265c47a41 100644 --- a/include/obj/NiShadeProperty.h +++ b/include/obj/NiShadeProperty.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiShadeProperty(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiSingleInterpolatorController.h b/include/obj/NiSingleInterpolatorController.h index 7a99f2c778a623dfea0207c52aba5c7bfb70a9bd..39671b7c440e1587c59edd5e19e33faa3016d214 100644 --- a/include/obj/NiSingleInterpolatorController.h +++ b/include/obj/NiSingleInterpolatorController.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiSingleInterpolatorController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiSkinData.h b/include/obj/NiSkinData.h index 8d3ecff2bf52a60c55bdaf0068fcdbe6459aceba..163cab4dea77a29c5966b3f0c9dd98e3c5439e11 100644 --- a/include/obj/NiSkinData.h +++ b/include/obj/NiSkinData.h @@ -37,6 +37,7 @@ public: //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiSkinInstance.h b/include/obj/NiSkinInstance.h index c46927b6a54c9a5be61a08b27cfed9322365e791..2502e3e3af6e7c7fb19ba54e1204d8f2902d86a3 100644 --- a/include/obj/NiSkinInstance.h +++ b/include/obj/NiSkinInstance.h @@ -39,6 +39,7 @@ public: NIFLIB_API ~NiSkinInstance(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiSkinPartition.h b/include/obj/NiSkinPartition.h index 201e07886cf90d78e228eeccca6819964e7daf7b..1ea934761aaaed445cd18716bed41c366e48dbb2 100644 --- a/include/obj/NiSkinPartition.h +++ b/include/obj/NiSkinPartition.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiSkinPartition(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiSourceTexture.h b/include/obj/NiSourceTexture.h index 1581fd0c38d064fe2fdd62ae964efc99b772a1a0..30180bc845215f73e9847b267084b523da2b0400 100644 --- a/include/obj/NiSourceTexture.h +++ b/include/obj/NiSourceTexture.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~NiSourceTexture(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiSpecularProperty.h b/include/obj/NiSpecularProperty.h index 2795333dc81654d26b9527829dba2186e190441b..c98a0b87e9c28e033748774e98af6c34142626cf 100644 --- a/include/obj/NiSpecularProperty.h +++ b/include/obj/NiSpecularProperty.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiSpecularProperty(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiSphericalCollider.h b/include/obj/NiSphericalCollider.h index 50416284a5bd17bbb8ce0139b18c5a9c4fea604a..195da308893c18478163c2788b17e6e20af9abc9 100644 --- a/include/obj/NiSphericalCollider.h +++ b/include/obj/NiSphericalCollider.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiSphericalCollider(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiSpotLight.h b/include/obj/NiSpotLight.h index cf7e1cab9fa600acbb36af731d4f026b45156e87..9dff8aab4910988e136898c6c79885fe9735c349 100644 --- a/include/obj/NiSpotLight.h +++ b/include/obj/NiSpotLight.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiSpotLight(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiStencilProperty.h b/include/obj/NiStencilProperty.h index 713f5ec1635ef6aa07678efa6daa7c773a9a2656..7cf7e12b5b7830bc23df6074c45116d1d48d9b49 100644 --- a/include/obj/NiStencilProperty.h +++ b/include/obj/NiStencilProperty.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiStencilProperty(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiStringExtraData.h b/include/obj/NiStringExtraData.h index e44a0800b26955d23fd0a48e1e946779ec659837..a080f1bce111ddcb57241aff138b4b7875911eff 100644 --- a/include/obj/NiStringExtraData.h +++ b/include/obj/NiStringExtraData.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~NiStringExtraData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiStringPalette.h b/include/obj/NiStringPalette.h index 608f30dacb2d7df7f8cb24e2966082fb986bcc57..46c1baedfe645ac904d9201179f51eb60602d829 100644 --- a/include/obj/NiStringPalette.h +++ b/include/obj/NiStringPalette.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiStringPalette(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiStringsExtraData.h b/include/obj/NiStringsExtraData.h index 6ea62a3e817709972ecc22e9d4514bb55226ceea..9b48c549a7e8eb443225b4cf0045dc0ec3a2f5b6 100644 --- a/include/obj/NiStringsExtraData.h +++ b/include/obj/NiStringsExtraData.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiStringsExtraData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTextKeyExtraData.h b/include/obj/NiTextKeyExtraData.h index 4d693baffdc81dee155c4913a7d6a641bd05d764..dda54a9699c6570bb5a932b98b7b75c7b6e6d98a 100644 --- a/include/obj/NiTextKeyExtraData.h +++ b/include/obj/NiTextKeyExtraData.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiTextKeyExtraData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTextureEffect.h b/include/obj/NiTextureEffect.h index 019e4acbe7ef71e120c8c623b366c3889b7764ea..057296708e721379587f38b981ad67ffd3f17f09 100644 --- a/include/obj/NiTextureEffect.h +++ b/include/obj/NiTextureEffect.h @@ -31,6 +31,7 @@ public: NIFLIB_API ~NiTextureEffect(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTextureModeProperty.h b/include/obj/NiTextureModeProperty.h index 161d5938efceefa0caebbc130e2eb1505359d5cc..52c467d2f50b773ec47158f49f15f92e39ffe04c 100644 --- a/include/obj/NiTextureModeProperty.h +++ b/include/obj/NiTextureModeProperty.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiTextureModeProperty(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTextureProperty.h b/include/obj/NiTextureProperty.h index 20b6c475d1264e83c02803a3f2339a8dadbe7337..dceb90b48df1013675d898aa05f1e01f37da7114 100644 --- a/include/obj/NiTextureProperty.h +++ b/include/obj/NiTextureProperty.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiTextureProperty(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTextureTransformController.h b/include/obj/NiTextureTransformController.h index eaa73d4db0b72161b34f24e13b72bc0dcce9a140..8c95b2306b6e9a2c0bf20eeab3d48b23bedf7f01 100644 --- a/include/obj/NiTextureTransformController.h +++ b/include/obj/NiTextureTransformController.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiTextureTransformController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTexturingProperty.h b/include/obj/NiTexturingProperty.h index 74cb5a19c41dc73870f9f25eb954b925b1e8969d..d5ae063f4eeaa673c464dc5a10ce6e5599dfb37f 100644 --- a/include/obj/NiTexturingProperty.h +++ b/include/obj/NiTexturingProperty.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~NiTexturingProperty(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTimeController.h b/include/obj/NiTimeController.h index 711794df330d09d6876509dfff94a2a39c9152aa..cd0f5a281bff9f0bdc8c5c7732bded8aaf65190c 100644 --- a/include/obj/NiTimeController.h +++ b/include/obj/NiTimeController.h @@ -27,6 +27,7 @@ public: NIFLIB_API ~NiTimeController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTransformController.h b/include/obj/NiTransformController.h index 1c0be2c41cf221a7a3087a12ccf628a9862ba1f2..e264f00cfbfac1d08c284e26cf1677ba625cb538 100644 --- a/include/obj/NiTransformController.h +++ b/include/obj/NiTransformController.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiTransformController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTransformData.h b/include/obj/NiTransformData.h index 2b0e1f0d585c21dfb9dfdfc1bcc8921e6e4e5bbc..a6a0cf131f687a534c09010b36ccdb2423c6728a 100644 --- a/include/obj/NiTransformData.h +++ b/include/obj/NiTransformData.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiTransformData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTransformInterpolator.h b/include/obj/NiTransformInterpolator.h index 0e93ad3fc6875eddae9089cee3eea82f17163eb1..4b3af54618ebb7f31320989caaa04bbcea2c4fd1 100644 --- a/include/obj/NiTransformInterpolator.h +++ b/include/obj/NiTransformInterpolator.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiTransformInterpolator(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTriBasedGeom.h b/include/obj/NiTriBasedGeom.h index 13d1a6982e10853969b4774b55668114f0de2646..7ddab476f580b3217f82904e923dffc7e5d4b44d 100644 --- a/include/obj/NiTriBasedGeom.h +++ b/include/obj/NiTriBasedGeom.h @@ -27,6 +27,7 @@ public: NIFLIB_API ~NiTriBasedGeom(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTriBasedGeomData.h b/include/obj/NiTriBasedGeomData.h index 269499b39af7ca91cc5762e732600a45d93e7266..d8f0a842af09fd8f80957cad5ff65b18b9a2569c 100644 --- a/include/obj/NiTriBasedGeomData.h +++ b/include/obj/NiTriBasedGeomData.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiTriBasedGeomData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTriShape.h b/include/obj/NiTriShape.h index 9da6d1cbd1c761ca06152099dfba5e15373dab74..8aadbfb8b2701ac8956b74d3d8eb4d0fbb102c20 100644 --- a/include/obj/NiTriShape.h +++ b/include/obj/NiTriShape.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiTriShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTriShapeData.h b/include/obj/NiTriShapeData.h index 9c3f43ab8d4cf30553f1c17ae867101192bed3c2..27ca73cfbcf17371c5a58c324b0e065a21b09ea9 100644 --- a/include/obj/NiTriShapeData.h +++ b/include/obj/NiTriShapeData.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiTriShapeData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTriStrips.h b/include/obj/NiTriStrips.h index 21be4b118a4ac25913ccb77bcb68b3c323ddbbdf..8ae7b2e953cb6eab423c22ebd2f4d79262e86820 100644 --- a/include/obj/NiTriStrips.h +++ b/include/obj/NiTriStrips.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiTriStrips(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiTriStripsData.h b/include/obj/NiTriStripsData.h index 5a47319af2ef2686121cb538452b33e37bd1a03d..1e3725709969c4c5a1f7f279bfb241c0cec2fa8f 100644 --- a/include/obj/NiTriStripsData.h +++ b/include/obj/NiTriStripsData.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~NiTriStripsData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiUVController.h b/include/obj/NiUVController.h index 88cd2e83279f78ab836f62f0539e403c79f9d39f..235ca5b8a1e46b75ebe600eedaef4857e14dc43b 100644 --- a/include/obj/NiUVController.h +++ b/include/obj/NiUVController.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiUVController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiUVData.h b/include/obj/NiUVData.h index a91de1419be6bc9f1211ee577378c9d58ec4e67d..2f16adb467962ee5e94ab603dd10f12fa5e21b51 100644 --- a/include/obj/NiUVData.h +++ b/include/obj/NiUVData.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~NiUVData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiVectorExtraData.h b/include/obj/NiVectorExtraData.h index f2a580b71efd06c4aa00e9649e10e913bc823898..898e392525c45e1b5cb43f8009672fa20304d318 100644 --- a/include/obj/NiVectorExtraData.h +++ b/include/obj/NiVectorExtraData.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiVectorExtraData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiVertWeightsExtraData.h b/include/obj/NiVertWeightsExtraData.h index b6d2362e2f78f35d248235400949c186224caf81..7fb48405f611cd3a64c46d1dc0243f524f74350f 100644 --- a/include/obj/NiVertWeightsExtraData.h +++ b/include/obj/NiVertWeightsExtraData.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiVertWeightsExtraData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiVertexColorProperty.h b/include/obj/NiVertexColorProperty.h index a75cc26aa88c757686c1645793c4f80c24022bb3..44876c4d36ca2ff9da5e72cc352003e5263de3c6 100644 --- a/include/obj/NiVertexColorProperty.h +++ b/include/obj/NiVertexColorProperty.h @@ -26,6 +26,7 @@ public: NIFLIB_API ~NiVertexColorProperty(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiVisController.h b/include/obj/NiVisController.h index ee33e77f3c091d402177b83af6473822c49eaea6..4eaf5537084cf327c12ab4bdf48e14b4e9332a47 100644 --- a/include/obj/NiVisController.h +++ b/include/obj/NiVisController.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~NiVisController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiVisData.h b/include/obj/NiVisData.h index d3ccc21f4877dc73fb09a73cc4abad3aef466e92..95394921b7749bcd59d4a64114e61c95e2e8cb6a 100644 --- a/include/obj/NiVisData.h +++ b/include/obj/NiVisData.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiVisData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiWireframeProperty.h b/include/obj/NiWireframeProperty.h index 0bbabff69b8b1eec396114c0cee58927eba509ac..9b01c1b384be8ebeeffc237ef1559e54fac6674c 100644 --- a/include/obj/NiWireframeProperty.h +++ b/include/obj/NiWireframeProperty.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~NiWireframeProperty(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/NiZBufferProperty.h b/include/obj/NiZBufferProperty.h index 1b173b4e27e3640ba41d5439a8c102f6bb0a7263..d89a8f82368c779cc8cd2073c450cc4986cadb68 100644 --- a/include/obj/NiZBufferProperty.h +++ b/include/obj/NiZBufferProperty.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~NiZBufferProperty(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/RootCollisionNode.h b/include/obj/RootCollisionNode.h index cdb25cdcb55a83cce21cb931ab976c4c13383626..0684cc769093089f689163ebea05eaf3de90c428 100644 --- a/include/obj/RootCollisionNode.h +++ b/include/obj/RootCollisionNode.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~RootCollisionNode(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkBlendCollisionObject.h b/include/obj/bhkBlendCollisionObject.h index 9088884907b8ed3421cc6e37dc2e58c5c17c7979..e0e11b6b9ba4ef2305216062bb8998ca7d86caa7 100644 --- a/include/obj/bhkBlendCollisionObject.h +++ b/include/obj/bhkBlendCollisionObject.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkBlendCollisionObject(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkBlendController.h b/include/obj/bhkBlendController.h index 668664c9b293634514fc04cb9eb73701432e952a..6572a59b0029bef1593d1c025458ff2941d7188a 100644 --- a/include/obj/bhkBlendController.h +++ b/include/obj/bhkBlendController.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~bhkBlendController(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkBoxShape.h b/include/obj/bhkBoxShape.h index dc0c9cd1b42779525c756bdb2ff863abd4e238f8..2c8cab6867fc676370808bc9cd2d276103f303f4 100644 --- a/include/obj/bhkBoxShape.h +++ b/include/obj/bhkBoxShape.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~bhkBoxShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkCapsuleShape.h b/include/obj/bhkCapsuleShape.h index c184685827dbb13105f1d4c1ddd5589056dd7d5d..fbc15ae7e7b754cf99a30ce87828db78414e8d52 100644 --- a/include/obj/bhkCapsuleShape.h +++ b/include/obj/bhkCapsuleShape.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~bhkCapsuleShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkCollisionObject.h b/include/obj/bhkCollisionObject.h index c677d3b4c7247cf8431973c9ae80f10418bacf84..ebca9670383dd4c851d53c40b65d9fe23aabe153 100644 --- a/include/obj/bhkCollisionObject.h +++ b/include/obj/bhkCollisionObject.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkCollisionObject(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; NIFLIB_API virtual string asString( bool verbose = false ) const; diff --git a/include/obj/bhkConvexShape.h b/include/obj/bhkConvexShape.h index 57ab99ac32310bd7009348d0179312605c93d154..da88b9ed9477d4e80c8f6b41e8c553bcfca11340 100644 --- a/include/obj/bhkConvexShape.h +++ b/include/obj/bhkConvexShape.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkConvexShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkConvexTransformShape.h b/include/obj/bhkConvexTransformShape.h index b2132e6da3c381a9b1e7d60c7b42335ad4badbb6..1e81df15b48eb026acf6ac1415f45196693ba08d 100644 --- a/include/obj/bhkConvexTransformShape.h +++ b/include/obj/bhkConvexTransformShape.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkConvexTransformShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkConvexVerticesShape.h b/include/obj/bhkConvexVerticesShape.h index c96bf1671088efadbbd1d4847dabe661ac358b24..d269e333531d6d4136413154599155d307c282ce 100644 --- a/include/obj/bhkConvexVerticesShape.h +++ b/include/obj/bhkConvexVerticesShape.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkConvexVerticesShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkEntity.h b/include/obj/bhkEntity.h index 381e3b98e6a4fa3f32065ee84b53128286fca85e..399a3767efde88b19891a06e7cdae004d992e6b0 100644 --- a/include/obj/bhkEntity.h +++ b/include/obj/bhkEntity.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~bhkEntity(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkHingeConstraint.h b/include/obj/bhkHingeConstraint.h index c29b028f62e960409e785c419c2107f92f5fcafd..125b970ca8e0a3a91d90bfeb22f93d62dd2f9ab9 100644 --- a/include/obj/bhkHingeConstraint.h +++ b/include/obj/bhkHingeConstraint.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkHingeConstraint(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkLimitedHingeConstraint.h b/include/obj/bhkLimitedHingeConstraint.h index 31aa5da046427cf5d022ec4aad701148a5c52e0a..54543383680dcd85271708982111ea80409763f1 100644 --- a/include/obj/bhkLimitedHingeConstraint.h +++ b/include/obj/bhkLimitedHingeConstraint.h @@ -26,6 +26,7 @@ public: NIFLIB_API ~bhkLimitedHingeConstraint(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkListShape.h b/include/obj/bhkListShape.h index 8e19ba456549debca605ff8473a611d64a3980c8..5cd4e494fbb2b7849b5a77b0f699ee4dfbc8857e 100644 --- a/include/obj/bhkListShape.h +++ b/include/obj/bhkListShape.h @@ -28,6 +28,7 @@ public: NIFLIB_API ~bhkListShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkMalleableConstraint.h b/include/obj/bhkMalleableConstraint.h index ddf1cb5e2dcd386ee4799104893cff6cdfc85971..0633a85600901054cc22dce677e262c7286428c6 100644 --- a/include/obj/bhkMalleableConstraint.h +++ b/include/obj/bhkMalleableConstraint.h @@ -30,6 +30,7 @@ public: NIFLIB_API ~bhkMalleableConstraint(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkMoppBvTreeShape.h b/include/obj/bhkMoppBvTreeShape.h index 86f47fcc1f9c0d5c97ef1d03da0e256df05df2c7..af5cb7a175e44ef1f2cc03f8eac347a66e3e8709 100644 --- a/include/obj/bhkMoppBvTreeShape.h +++ b/include/obj/bhkMoppBvTreeShape.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~bhkMoppBvTreeShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkMultiSphereShape.h b/include/obj/bhkMultiSphereShape.h index 2526c9952215946cd0b8363336cb6d53f16a8466..96f7bf53f21a903a0bf69e458fab5c839639e66c 100644 --- a/include/obj/bhkMultiSphereShape.h +++ b/include/obj/bhkMultiSphereShape.h @@ -25,6 +25,7 @@ public: NIFLIB_API ~bhkMultiSphereShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkNiTriStripsShape.h b/include/obj/bhkNiTriStripsShape.h index 07d582c40ed70cba31675dd46adeee7994fffa40..3cc4678e8faac21b72b721160a0e22a205b188ae 100644 --- a/include/obj/bhkNiTriStripsShape.h +++ b/include/obj/bhkNiTriStripsShape.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~bhkNiTriStripsShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkPackedNiTriStripsShape.h b/include/obj/bhkPackedNiTriStripsShape.h index adc897fc92f992aea0d552f76a517b50d04571e2..7ac6d9ca4a071330b4cd87c63546d815878cda9e 100644 --- a/include/obj/bhkPackedNiTriStripsShape.h +++ b/include/obj/bhkPackedNiTriStripsShape.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~bhkPackedNiTriStripsShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkPrismaticConstraint.h b/include/obj/bhkPrismaticConstraint.h index b83f6659c77348c7cefde18c6b5fc0a674227802..b0bd1255da1acbc4ecea1de8d675287246c00f15 100644 --- a/include/obj/bhkPrismaticConstraint.h +++ b/include/obj/bhkPrismaticConstraint.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkPrismaticConstraint(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkRagdollConstraint.h b/include/obj/bhkRagdollConstraint.h index 2e9825b2e93cd8c728a45e3b201ea33e7d403fbc..8dbddac1d4b03f4cddba39681109132be2d766b7 100644 --- a/include/obj/bhkRagdollConstraint.h +++ b/include/obj/bhkRagdollConstraint.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkRagdollConstraint(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkRefObject.h b/include/obj/bhkRefObject.h index 6b6be61116b9e570e74c67184e4b94e3024aad0b..2c32d648a2d21d1acee2db2a416d5f8ddb7a0bb3 100644 --- a/include/obj/bhkRefObject.h +++ b/include/obj/bhkRefObject.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkRefObject(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkRigidBody.h b/include/obj/bhkRigidBody.h index 13b1b1d7f9a267f181135265c2f78743c1f6a6b4..32f66e4bf3c479b2eb3e06ad576a03e0a046519f 100644 --- a/include/obj/bhkRigidBody.h +++ b/include/obj/bhkRigidBody.h @@ -29,6 +29,7 @@ public: NIFLIB_API ~bhkRigidBody(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkRigidBodyT.h b/include/obj/bhkRigidBodyT.h index b3f741c48b681fb1b25f7d3740c4d5749ddb8f42..ab9fa631cd58f66b0741b7b20667a92318339ee1 100644 --- a/include/obj/bhkRigidBodyT.h +++ b/include/obj/bhkRigidBodyT.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkRigidBodyT(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkSPCollisionObject.h b/include/obj/bhkSPCollisionObject.h index 8be90ee163502468ff4a257f4b4ac62f843f48dc..c10f6ac17d4a647ca78c07c46c1beda1f05e8aee 100644 --- a/include/obj/bhkSPCollisionObject.h +++ b/include/obj/bhkSPCollisionObject.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkSPCollisionObject(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkSerializable.h b/include/obj/bhkSerializable.h index 9db9ecdcafbc759323c8c253a365b889164065b6..90a6800323c8f12d05b33bf9289b6763a65247c5 100644 --- a/include/obj/bhkSerializable.h +++ b/include/obj/bhkSerializable.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~bhkSerializable(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkShape.h b/include/obj/bhkShape.h index 9c47449cb68bf61e1e38837cfec3c6a7f083ebfd..f5c207a28bbf776f84c375959b90620729914c45 100644 --- a/include/obj/bhkShape.h +++ b/include/obj/bhkShape.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkSimpleShapePhantom.h b/include/obj/bhkSimpleShapePhantom.h index ed5a555611776ed6bf0c1972d0f9ca7f958d43d6..a1dd86fc8773b5cff0712f8a06ffc1ec74f22215 100644 --- a/include/obj/bhkSimpleShapePhantom.h +++ b/include/obj/bhkSimpleShapePhantom.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkSimpleShapePhantom(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkSphereRepShape.h b/include/obj/bhkSphereRepShape.h index 991b281fb7e54cf717f24894524503d6e11e8306..36235578feb7a8d617cf5fac726b4a336b4e334f 100644 --- a/include/obj/bhkSphereRepShape.h +++ b/include/obj/bhkSphereRepShape.h @@ -24,6 +24,7 @@ public: NIFLIB_API ~bhkSphereRepShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkSphereShape.h b/include/obj/bhkSphereShape.h index 020f5f9e0f7b97702213011d0210a9a853bc9475..2626286a805c17c3f7c1df1a0986714d90ba76be 100644 --- a/include/obj/bhkSphereShape.h +++ b/include/obj/bhkSphereShape.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~bhkSphereShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkStiffSpringConstraint.h b/include/obj/bhkStiffSpringConstraint.h index 1aa51ab9ba5066fc21883f35348cda735439418a..a72c49a1e1c3926a675dcf965d9da13efb8d3905 100644 --- a/include/obj/bhkStiffSpringConstraint.h +++ b/include/obj/bhkStiffSpringConstraint.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkStiffSpringConstraint(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkTransformShape.h b/include/obj/bhkTransformShape.h index 5d12b154837636579f5a3e12e7e3c63e536b2cce..35d522e5eff0397b93891c916174f0307efd6e59 100644 --- a/include/obj/bhkTransformShape.h +++ b/include/obj/bhkTransformShape.h @@ -23,6 +23,7 @@ public: NIFLIB_API ~bhkTransformShape(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/bhkWorldObject.h b/include/obj/bhkWorldObject.h index 4f84705b9b1a137f0dfde6345b24ef8b0097e9a6..2c523ee20c1cf8c490f10a43e7b9108ee6abfbb2 100644 --- a/include/obj/bhkWorldObject.h +++ b/include/obj/bhkWorldObject.h @@ -22,6 +22,7 @@ public: NIFLIB_API ~bhkWorldObject(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/include/obj/hkPackedNiTriStripsData.h b/include/obj/hkPackedNiTriStripsData.h index fb6cdf750838e5bc135dddb7a25113d6a8458184..9c6f365237407789e34e60e640bef5b59d2a46b3 100644 --- a/include/obj/hkPackedNiTriStripsData.h +++ b/include/obj/hkPackedNiTriStripsData.h @@ -26,6 +26,7 @@ public: NIFLIB_API ~hkPackedNiTriStripsData(); //Run-Time Type Information NIFLIB_API static const Type TYPE; + NIFLIB_API static NiObject * Create(); NIFLIB_API virtual const Type & GetType() const; NIFLIB_HIDDEN virtual void Read( istream& in, list<unsigned int> & link_stack, const NifInfo & info ); NIFLIB_HIDDEN virtual void Write( ostream& out, const map<NiObjectRef,unsigned int> & link_map, const NifInfo & info ) const; diff --git a/niflib.vcproj b/niflib.vcproj index 5ed78846e9462d4c65feb9f3b13ed15204141347..a5a2c597201f0a0094b8e785c2eefc3b45e1ef5f 100644 --- a/niflib.vcproj +++ b/niflib.vcproj @@ -1298,10 +1298,6 @@ RelativePath=".\src\gen\NodeGroup.cpp" > </File> - <File - RelativePath=".\src\gen\obj_factories.cpp" - > - </File> <File RelativePath=".\src\gen\obj_impl.cpp" > diff --git a/src/gen/obj_factories.cpp b/src/gen/obj_factories.cpp deleted file mode 100644 index 8a9e43161f5f9078e23f935bebab0df0cf452ca9..0000000000000000000000000000000000000000 --- a/src/gen/obj_factories.cpp +++ /dev/null @@ -1,579 +0,0 @@ -/* Copyright (c) 2006, NIF File Format Library and Tools -All rights reserved. Please see niflib.h for license. */ - -//---THIS FILE WAS AUTOMATICALLY GENERATED. DO NOT EDIT---// - -//To change this file, alter the niftools/docsys/nifxml_niflib.py Python script. - -#include "../../include/obj/NiObject.h" -using namespace Niflib; -using namespace std; -namespace Niflib { -typedef NiObject*(*blk_factory_func)(); -extern map<string, blk_factory_func> global_object_map; -} - -#include "../../include/obj/bhkBlendCollisionObject.h" -NiObject * CreatebhkBlendCollisionObject() { return new bhkBlendCollisionObject; } -#include "../../include/obj/bhkBlendController.h" -NiObject * CreatebhkBlendController() { return new bhkBlendController; } -#include "../../include/obj/bhkBoxShape.h" -NiObject * CreatebhkBoxShape() { return new bhkBoxShape; } -#include "../../include/obj/bhkCapsuleShape.h" -NiObject * CreatebhkCapsuleShape() { return new bhkCapsuleShape; } -#include "../../include/obj/bhkCollisionObject.h" -NiObject * CreatebhkCollisionObject() { return new bhkCollisionObject; } -#include "../../include/obj/bhkConvexVerticesShape.h" -NiObject * CreatebhkConvexVerticesShape() { return new bhkConvexVerticesShape; } -#include "../../include/obj/bhkHingeConstraint.h" -NiObject * CreatebhkHingeConstraint() { return new bhkHingeConstraint; } -#include "../../include/obj/bhkLimitedHingeConstraint.h" -NiObject * CreatebhkLimitedHingeConstraint() { return new bhkLimitedHingeConstraint; } -#include "../../include/obj/bhkListShape.h" -NiObject * CreatebhkListShape() { return new bhkListShape; } -#include "../../include/obj/bhkMalleableConstraint.h" -NiObject * CreatebhkMalleableConstraint() { return new bhkMalleableConstraint; } -#include "../../include/obj/bhkMoppBvTreeShape.h" -NiObject * CreatebhkMoppBvTreeShape() { return new bhkMoppBvTreeShape; } -#include "../../include/obj/bhkMultiSphereShape.h" -NiObject * CreatebhkMultiSphereShape() { return new bhkMultiSphereShape; } -#include "../../include/obj/bhkNiTriStripsShape.h" -NiObject * CreatebhkNiTriStripsShape() { return new bhkNiTriStripsShape; } -#include "../../include/obj/bhkPackedNiTriStripsShape.h" -NiObject * CreatebhkPackedNiTriStripsShape() { return new bhkPackedNiTriStripsShape; } -#include "../../include/obj/bhkPrismaticConstraint.h" -NiObject * CreatebhkPrismaticConstraint() { return new bhkPrismaticConstraint; } -#include "../../include/obj/bhkRagdollConstraint.h" -NiObject * CreatebhkRagdollConstraint() { return new bhkRagdollConstraint; } -#include "../../include/obj/bhkRigidBody.h" -NiObject * CreatebhkRigidBody() { return new bhkRigidBody; } -#include "../../include/obj/bhkRigidBodyT.h" -NiObject * CreatebhkRigidBodyT() { return new bhkRigidBodyT; } -#include "../../include/obj/bhkSimpleShapePhantom.h" -NiObject * CreatebhkSimpleShapePhantom() { return new bhkSimpleShapePhantom; } -#include "../../include/obj/bhkSPCollisionObject.h" -NiObject * CreatebhkSPCollisionObject() { return new bhkSPCollisionObject; } -#include "../../include/obj/bhkSphereShape.h" -NiObject * CreatebhkSphereShape() { return new bhkSphereShape; } -#include "../../include/obj/bhkStiffSpringConstraint.h" -NiObject * CreatebhkStiffSpringConstraint() { return new bhkStiffSpringConstraint; } -#include "../../include/obj/bhkTransformShape.h" -NiObject * CreatebhkTransformShape() { return new bhkTransformShape; } -#include "../../include/obj/bhkConvexTransformShape.h" -NiObject * CreatebhkConvexTransformShape() { return new bhkConvexTransformShape; } -#include "../../include/obj/BSBound.h" -NiObject * CreateBSBound() { return new BSBound; } -#include "../../include/obj/BSFurnitureMarker.h" -NiObject * CreateBSFurnitureMarker() { return new BSFurnitureMarker; } -#include "../../include/obj/BSParentVelocityModifier.h" -NiObject * CreateBSParentVelocityModifier() { return new BSParentVelocityModifier; } -#include "../../include/obj/BSPSysArrayEmitter.h" -NiObject * CreateBSPSysArrayEmitter() { return new BSPSysArrayEmitter; } -#include "../../include/obj/BSXFlags.h" -NiObject * CreateBSXFlags() { return new BSXFlags; } -#include "../../include/obj/hkPackedNiTriStripsData.h" -NiObject * CreatehkPackedNiTriStripsData() { return new hkPackedNiTriStripsData; } -#include "../../include/obj/NiAlphaController.h" -NiObject * CreateNiAlphaController() { return new NiAlphaController; } -#include "../../include/obj/NiAlphaProperty.h" -NiObject * CreateNiAlphaProperty() { return new NiAlphaProperty; } -#include "../../include/obj/NiAmbientLight.h" -NiObject * CreateNiAmbientLight() { return new NiAmbientLight; } -#include "../../include/obj/NiAutoNormalParticlesData.h" -NiObject * CreateNiAutoNormalParticlesData() { return new NiAutoNormalParticlesData; } -#include "../../include/obj/NiBinaryExtraData.h" -NiObject * CreateNiBinaryExtraData() { return new NiBinaryExtraData; } -#include "../../include/obj/NiBlendBoolInterpolator.h" -NiObject * CreateNiBlendBoolInterpolator() { return new NiBlendBoolInterpolator; } -#include "../../include/obj/NiBlendFloatInterpolator.h" -NiObject * CreateNiBlendFloatInterpolator() { return new NiBlendFloatInterpolator; } -#include "../../include/obj/NiBlendPoint3Interpolator.h" -NiObject * CreateNiBlendPoint3Interpolator() { return new NiBlendPoint3Interpolator; } -#include "../../include/obj/NiBlendTransformInterpolator.h" -NiObject * CreateNiBlendTransformInterpolator() { return new NiBlendTransformInterpolator; } -#include "../../include/obj/NiBoneLODController.h" -NiObject * CreateNiBoneLODController() { return new NiBoneLODController; } -#include "../../include/obj/NiBoolData.h" -NiObject * CreateNiBoolData() { return new NiBoolData; } -#include "../../include/obj/NiBooleanExtraData.h" -NiObject * CreateNiBooleanExtraData() { return new NiBooleanExtraData; } -#include "../../include/obj/NiBoolInterpolator.h" -NiObject * CreateNiBoolInterpolator() { return new NiBoolInterpolator; } -#include "../../include/obj/NiBoolTimelineInterpolator.h" -NiObject * CreateNiBoolTimelineInterpolator() { return new NiBoolTimelineInterpolator; } -#include "../../include/obj/NiBSBoneLODController.h" -NiObject * CreateNiBSBoneLODController() { return new NiBSBoneLODController; } -#include "../../include/obj/NiBSplineBasisData.h" -NiObject * CreateNiBSplineBasisData() { return new NiBSplineBasisData; } -#include "../../include/obj/NiBSplineCompFloatInterpolator.h" -NiObject * CreateNiBSplineCompFloatInterpolator() { return new NiBSplineCompFloatInterpolator; } -#include "../../include/obj/NiBSplineCompPoint3Interpolator.h" -NiObject * CreateNiBSplineCompPoint3Interpolator() { return new NiBSplineCompPoint3Interpolator; } -#include "../../include/obj/NiBSplineCompTransformInterpolator.h" -NiObject * CreateNiBSplineCompTransformInterpolator() { return new NiBSplineCompTransformInterpolator; } -#include "../../include/obj/NiBSplineData.h" -NiObject * CreateNiBSplineData() { return new NiBSplineData; } -#include "../../include/obj/NiCamera.h" -NiObject * CreateNiCamera() { return new NiCamera; } -#include "../../include/obj/NiCollisionData.h" -NiObject * CreateNiCollisionData() { return new NiCollisionData; } -#include "../../include/obj/NiColorData.h" -NiObject * CreateNiColorData() { return new NiColorData; } -#include "../../include/obj/NiColorExtraData.h" -NiObject * CreateNiColorExtraData() { return new NiColorExtraData; } -#include "../../include/obj/NiControllerManager.h" -NiObject * CreateNiControllerManager() { return new NiControllerManager; } -#include "../../include/obj/NiControllerSequence.h" -NiObject * CreateNiControllerSequence() { return new NiControllerSequence; } -#include "../../include/obj/NiDefaultAVObjectPalette.h" -NiObject * CreateNiDefaultAVObjectPalette() { return new NiDefaultAVObjectPalette; } -#include "../../include/obj/NiDirectionalLight.h" -NiObject * CreateNiDirectionalLight() { return new NiDirectionalLight; } -#include "../../include/obj/NiDitherProperty.h" -NiObject * CreateNiDitherProperty() { return new NiDitherProperty; } -#include "../../include/obj/NiFlipController.h" -NiObject * CreateNiFlipController() { return new NiFlipController; } -#include "../../include/obj/NiFloatData.h" -NiObject * CreateNiFloatData() { return new NiFloatData; } -#include "../../include/obj/NiFloatExtraData.h" -NiObject * CreateNiFloatExtraData() { return new NiFloatExtraData; } -#include "../../include/obj/NiFloatExtraDataController.h" -NiObject * CreateNiFloatExtraDataController() { return new NiFloatExtraDataController; } -#include "../../include/obj/NiFloatInterpolator.h" -NiObject * CreateNiFloatInterpolator() { return new NiFloatInterpolator; } -#include "../../include/obj/NiFloatsExtraData.h" -NiObject * CreateNiFloatsExtraData() { return new NiFloatsExtraData; } -#include "../../include/obj/NiFogProperty.h" -NiObject * CreateNiFogProperty() { return new NiFogProperty; } -#include "../../include/obj/NiGeomMorpherController.h" -NiObject * CreateNiGeomMorpherController() { return new NiGeomMorpherController; } -#include "../../include/obj/NiGravity.h" -NiObject * CreateNiGravity() { return new NiGravity; } -#include "../../include/obj/NiIntegerExtraData.h" -NiObject * CreateNiIntegerExtraData() { return new NiIntegerExtraData; } -#include "../../include/obj/NiIntegersExtraData.h" -NiObject * CreateNiIntegersExtraData() { return new NiIntegersExtraData; } -#include "../../include/obj/NiKeyframeController.h" -NiObject * CreateNiKeyframeController() { return new NiKeyframeController; } -#include "../../include/obj/BSKeyframeController.h" -NiObject * CreateBSKeyframeController() { return new BSKeyframeController; } -#include "../../include/obj/NiKeyframeData.h" -NiObject * CreateNiKeyframeData() { return new NiKeyframeData; } -#include "../../include/obj/NiLightColorController.h" -NiObject * CreateNiLightColorController() { return new NiLightColorController; } -#include "../../include/obj/NiLightDimmerController.h" -NiObject * CreateNiLightDimmerController() { return new NiLightDimmerController; } -#include "../../include/obj/NiLookAtController.h" -NiObject * CreateNiLookAtController() { return new NiLookAtController; } -#include "../../include/obj/NiLookAtInterpolator.h" -NiObject * CreateNiLookAtInterpolator() { return new NiLookAtInterpolator; } -#include "../../include/obj/NiMaterialColorController.h" -NiObject * CreateNiMaterialColorController() { return new NiMaterialColorController; } -#include "../../include/obj/NiMaterialProperty.h" -NiObject * CreateNiMaterialProperty() { return new NiMaterialProperty; } -#include "../../include/obj/NiMeshPSysData.h" -NiObject * CreateNiMeshPSysData() { return new NiMeshPSysData; } -#include "../../include/obj/NiMorphData.h" -NiObject * CreateNiMorphData() { return new NiMorphData; } -#include "../../include/obj/NiMultiTargetTransformController.h" -NiObject * CreateNiMultiTargetTransformController() { return new NiMultiTargetTransformController; } -#include "../../include/obj/NiNode.h" -NiObject * CreateNiNode() { return new NiNode; } -#include "../../include/obj/AvoidNode.h" -NiObject * CreateAvoidNode() { return new AvoidNode; } -#include "../../include/obj/FxWidget.h" -NiObject * CreateFxWidget() { return new FxWidget; } -#include "../../include/obj/FxButton.h" -NiObject * CreateFxButton() { return new FxButton; } -#include "../../include/obj/FxRadioButton.h" -NiObject * CreateFxRadioButton() { return new FxRadioButton; } -#include "../../include/obj/NiBillboardNode.h" -NiObject * CreateNiBillboardNode() { return new NiBillboardNode; } -#include "../../include/obj/NiBSAnimationNode.h" -NiObject * CreateNiBSAnimationNode() { return new NiBSAnimationNode; } -#include "../../include/obj/NiBSParticleNode.h" -NiObject * CreateNiBSParticleNode() { return new NiBSParticleNode; } -#include "../../include/obj/NiLODNode.h" -NiObject * CreateNiLODNode() { return new NiLODNode; } -#include "../../include/obj/NiPalette.h" -NiObject * CreateNiPalette() { return new NiPalette; } -#include "../../include/obj/NiParticleBomb.h" -NiObject * CreateNiParticleBomb() { return new NiParticleBomb; } -#include "../../include/obj/NiParticleColorModifier.h" -NiObject * CreateNiParticleColorModifier() { return new NiParticleColorModifier; } -#include "../../include/obj/NiParticleGrowFade.h" -NiObject * CreateNiParticleGrowFade() { return new NiParticleGrowFade; } -#include "../../include/obj/NiParticleMeshModifier.h" -NiObject * CreateNiParticleMeshModifier() { return new NiParticleMeshModifier; } -#include "../../include/obj/NiParticleRotation.h" -NiObject * CreateNiParticleRotation() { return new NiParticleRotation; } -#include "../../include/obj/NiParticles.h" -NiObject * CreateNiParticles() { return new NiParticles; } -#include "../../include/obj/NiAutoNormalParticles.h" -NiObject * CreateNiAutoNormalParticles() { return new NiAutoNormalParticles; } -#include "../../include/obj/NiParticleMeshes.h" -NiObject * CreateNiParticleMeshes() { return new NiParticleMeshes; } -#include "../../include/obj/NiParticlesData.h" -NiObject * CreateNiParticlesData() { return new NiParticlesData; } -#include "../../include/obj/NiParticleMeshesData.h" -NiObject * CreateNiParticleMeshesData() { return new NiParticleMeshesData; } -#include "../../include/obj/NiParticleSystem.h" -NiObject * CreateNiParticleSystem() { return new NiParticleSystem; } -#include "../../include/obj/NiMeshParticleSystem.h" -NiObject * CreateNiMeshParticleSystem() { return new NiMeshParticleSystem; } -#include "../../include/obj/NiParticleSystemController.h" -NiObject * CreateNiParticleSystemController() { return new NiParticleSystemController; } -#include "../../include/obj/NiBSPArrayController.h" -NiObject * CreateNiBSPArrayController() { return new NiBSPArrayController; } -#include "../../include/obj/NiPathController.h" -NiObject * CreateNiPathController() { return new NiPathController; } -#include "../../include/obj/NiPathInterpolator.h" -NiObject * CreateNiPathInterpolator() { return new NiPathInterpolator; } -#include "../../include/obj/NiPixelData.h" -NiObject * CreateNiPixelData() { return new NiPixelData; } -#include "../../include/obj/NiPlanarCollider.h" -NiObject * CreateNiPlanarCollider() { return new NiPlanarCollider; } -#include "../../include/obj/NiPoint3Interpolator.h" -NiObject * CreateNiPoint3Interpolator() { return new NiPoint3Interpolator; } -#include "../../include/obj/NiPointLight.h" -NiObject * CreateNiPointLight() { return new NiPointLight; } -#include "../../include/obj/NiPosData.h" -NiObject * CreateNiPosData() { return new NiPosData; } -#include "../../include/obj/NiPSysAgeDeathModifier.h" -NiObject * CreateNiPSysAgeDeathModifier() { return new NiPSysAgeDeathModifier; } -#include "../../include/obj/NiPSysBombModifier.h" -NiObject * CreateNiPSysBombModifier() { return new NiPSysBombModifier; } -#include "../../include/obj/NiPSysBoundUpdateModifier.h" -NiObject * CreateNiPSysBoundUpdateModifier() { return new NiPSysBoundUpdateModifier; } -#include "../../include/obj/NiPSysBoxEmitter.h" -NiObject * CreateNiPSysBoxEmitter() { return new NiPSysBoxEmitter; } -#include "../../include/obj/NiPSysColliderManager.h" -NiObject * CreateNiPSysColliderManager() { return new NiPSysColliderManager; } -#include "../../include/obj/NiPSysColorModifier.h" -NiObject * CreateNiPSysColorModifier() { return new NiPSysColorModifier; } -#include "../../include/obj/NiPSysCylinderEmitter.h" -NiObject * CreateNiPSysCylinderEmitter() { return new NiPSysCylinderEmitter; } -#include "../../include/obj/NiPSysData.h" -NiObject * CreateNiPSysData() { return new NiPSysData; } -#include "../../include/obj/NiPSysDragModifier.h" -NiObject * CreateNiPSysDragModifier() { return new NiPSysDragModifier; } -#include "../../include/obj/NiPSysEmitterCtlr.h" -NiObject * CreateNiPSysEmitterCtlr() { return new NiPSysEmitterCtlr; } -#include "../../include/obj/NiPSysEmitterCtlrData.h" -NiObject * CreateNiPSysEmitterCtlrData() { return new NiPSysEmitterCtlrData; } -#include "../../include/obj/NiPSysEmitterDeclinationCtlr.h" -NiObject * CreateNiPSysEmitterDeclinationCtlr() { return new NiPSysEmitterDeclinationCtlr; } -#include "../../include/obj/NiPSysEmitterDeclinationVarCtlr.h" -NiObject * CreateNiPSysEmitterDeclinationVarCtlr() { return new NiPSysEmitterDeclinationVarCtlr; } -#include "../../include/obj/NiPSysEmitterInitialRadiusCtlr.h" -NiObject * CreateNiPSysEmitterInitialRadiusCtlr() { return new NiPSysEmitterInitialRadiusCtlr; } -#include "../../include/obj/NiPSysEmitterLifeSpanCtlr.h" -NiObject * CreateNiPSysEmitterLifeSpanCtlr() { return new NiPSysEmitterLifeSpanCtlr; } -#include "../../include/obj/NiPSysEmitterSpeedCtlr.h" -NiObject * CreateNiPSysEmitterSpeedCtlr() { return new NiPSysEmitterSpeedCtlr; } -#include "../../include/obj/NiPSysGravityModifier.h" -NiObject * CreateNiPSysGravityModifier() { return new NiPSysGravityModifier; } -#include "../../include/obj/NiPSysGravityStrengthCtlr.h" -NiObject * CreateNiPSysGravityStrengthCtlr() { return new NiPSysGravityStrengthCtlr; } -#include "../../include/obj/NiPSysGrowFadeModifier.h" -NiObject * CreateNiPSysGrowFadeModifier() { return new NiPSysGrowFadeModifier; } -#include "../../include/obj/NiPSysMeshEmitter.h" -NiObject * CreateNiPSysMeshEmitter() { return new NiPSysMeshEmitter; } -#include "../../include/obj/NiPSysMeshUpdateModifier.h" -NiObject * CreateNiPSysMeshUpdateModifier() { return new NiPSysMeshUpdateModifier; } -#include "../../include/obj/NiPSysModifierActiveCtlr.h" -NiObject * CreateNiPSysModifierActiveCtlr() { return new NiPSysModifierActiveCtlr; } -#include "../../include/obj/NiPSysPlanarCollider.h" -NiObject * CreateNiPSysPlanarCollider() { return new NiPSysPlanarCollider; } -#include "../../include/obj/NiPSysPositionModifier.h" -NiObject * CreateNiPSysPositionModifier() { return new NiPSysPositionModifier; } -#include "../../include/obj/NiPSysResetOnLoopCtlr.h" -NiObject * CreateNiPSysResetOnLoopCtlr() { return new NiPSysResetOnLoopCtlr; } -#include "../../include/obj/NiPSysRotationModifier.h" -NiObject * CreateNiPSysRotationModifier() { return new NiPSysRotationModifier; } -#include "../../include/obj/NiPSysSpawnModifier.h" -NiObject * CreateNiPSysSpawnModifier() { return new NiPSysSpawnModifier; } -#include "../../include/obj/NiPSysSphereEmitter.h" -NiObject * CreateNiPSysSphereEmitter() { return new NiPSysSphereEmitter; } -#include "../../include/obj/NiPSysUpdateCtlr.h" -NiObject * CreateNiPSysUpdateCtlr() { return new NiPSysUpdateCtlr; } -#include "../../include/obj/NiRangeLODData.h" -NiObject * CreateNiRangeLODData() { return new NiRangeLODData; } -#include "../../include/obj/NiScreenLODData.h" -NiObject * CreateNiScreenLODData() { return new NiScreenLODData; } -#include "../../include/obj/NiRotatingParticles.h" -NiObject * CreateNiRotatingParticles() { return new NiRotatingParticles; } -#include "../../include/obj/NiRotatingParticlesData.h" -NiObject * CreateNiRotatingParticlesData() { return new NiRotatingParticlesData; } -#include "../../include/obj/NiSequenceStreamHelper.h" -NiObject * CreateNiSequenceStreamHelper() { return new NiSequenceStreamHelper; } -#include "../../include/obj/NiShadeProperty.h" -NiObject * CreateNiShadeProperty() { return new NiShadeProperty; } -#include "../../include/obj/NiSkinData.h" -NiObject * CreateNiSkinData() { return new NiSkinData; } -#include "../../include/obj/NiSkinInstance.h" -NiObject * CreateNiSkinInstance() { return new NiSkinInstance; } -#include "../../include/obj/NiClodSkinInstance.h" -NiObject * CreateNiClodSkinInstance() { return new NiClodSkinInstance; } -#include "../../include/obj/NiSkinPartition.h" -NiObject * CreateNiSkinPartition() { return new NiSkinPartition; } -#include "../../include/obj/NiSourceTexture.h" -NiObject * CreateNiSourceTexture() { return new NiSourceTexture; } -#include "../../include/obj/NiSpecularProperty.h" -NiObject * CreateNiSpecularProperty() { return new NiSpecularProperty; } -#include "../../include/obj/NiSphericalCollider.h" -NiObject * CreateNiSphericalCollider() { return new NiSphericalCollider; } -#include "../../include/obj/NiSpotLight.h" -NiObject * CreateNiSpotLight() { return new NiSpotLight; } -#include "../../include/obj/NiStencilProperty.h" -NiObject * CreateNiStencilProperty() { return new NiStencilProperty; } -#include "../../include/obj/NiStringExtraData.h" -NiObject * CreateNiStringExtraData() { return new NiStringExtraData; } -#include "../../include/obj/NiStringPalette.h" -NiObject * CreateNiStringPalette() { return new NiStringPalette; } -#include "../../include/obj/NiStringsExtraData.h" -NiObject * CreateNiStringsExtraData() { return new NiStringsExtraData; } -#include "../../include/obj/NiTextKeyExtraData.h" -NiObject * CreateNiTextKeyExtraData() { return new NiTextKeyExtraData; } -#include "../../include/obj/NiTextureEffect.h" -NiObject * CreateNiTextureEffect() { return new NiTextureEffect; } -#include "../../include/obj/NiTextureTransformController.h" -NiObject * CreateNiTextureTransformController() { return new NiTextureTransformController; } -#include "../../include/obj/NiTextureModeProperty.h" -NiObject * CreateNiTextureModeProperty() { return new NiTextureModeProperty; } -#include "../../include/obj/NiImage.h" -NiObject * CreateNiImage() { return new NiImage; } -#include "../../include/obj/NiTextureProperty.h" -NiObject * CreateNiTextureProperty() { return new NiTextureProperty; } -#include "../../include/obj/NiTexturingProperty.h" -NiObject * CreateNiTexturingProperty() { return new NiTexturingProperty; } -#include "../../include/obj/NiTransformController.h" -NiObject * CreateNiTransformController() { return new NiTransformController; } -#include "../../include/obj/NiTransformData.h" -NiObject * CreateNiTransformData() { return new NiTransformData; } -#include "../../include/obj/NiTransformInterpolator.h" -NiObject * CreateNiTransformInterpolator() { return new NiTransformInterpolator; } -#include "../../include/obj/NiTriShape.h" -NiObject * CreateNiTriShape() { return new NiTriShape; } -#include "../../include/obj/NiTriShapeData.h" -NiObject * CreateNiTriShapeData() { return new NiTriShapeData; } -#include "../../include/obj/NiTriStrips.h" -NiObject * CreateNiTriStrips() { return new NiTriStrips; } -#include "../../include/obj/NiTriStripsData.h" -NiObject * CreateNiTriStripsData() { return new NiTriStripsData; } -#include "../../include/obj/NiClod.h" -NiObject * CreateNiClod() { return new NiClod; } -#include "../../include/obj/NiClodData.h" -NiObject * CreateNiClodData() { return new NiClodData; } -#include "../../include/obj/NiUVController.h" -NiObject * CreateNiUVController() { return new NiUVController; } -#include "../../include/obj/NiUVData.h" -NiObject * CreateNiUVData() { return new NiUVData; } -#include "../../include/obj/NiVectorExtraData.h" -NiObject * CreateNiVectorExtraData() { return new NiVectorExtraData; } -#include "../../include/obj/NiVertexColorProperty.h" -NiObject * CreateNiVertexColorProperty() { return new NiVertexColorProperty; } -#include "../../include/obj/NiVertWeightsExtraData.h" -NiObject * CreateNiVertWeightsExtraData() { return new NiVertWeightsExtraData; } -#include "../../include/obj/NiVisController.h" -NiObject * CreateNiVisController() { return new NiVisController; } -#include "../../include/obj/NiVisData.h" -NiObject * CreateNiVisData() { return new NiVisData; } -#include "../../include/obj/NiWireframeProperty.h" -NiObject * CreateNiWireframeProperty() { return new NiWireframeProperty; } -#include "../../include/obj/NiZBufferProperty.h" -NiObject * CreateNiZBufferProperty() { return new NiZBufferProperty; } -#include "../../include/obj/RootCollisionNode.h" -NiObject * CreateRootCollisionNode() { return new RootCollisionNode; } - -namespace Niflib { -//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 6a18a0542c7ac0c687e5bcbfcf525c53aa4fca9e..c87f1071224a5d00b7875a50fa389fab6c79e289 100644 --- a/src/niflib.cpp +++ b/src/niflib.cpp @@ -37,14 +37,13 @@ All rights reserved. Please see niflib.h for licence. */ namespace Niflib { //Stores the mapping between object names and factory function pointers to create them -typedef NiObject * (*blk_factory_func)(); +typedef NiObject * (*obj_factory_func)(); bool global_object_map_init = false; -map<string, blk_factory_func> global_object_map; +map<string, obj_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 & objects ); -void RegisterObjectFactories (); NiObjectRef GetObjectByType( NiObject * root, const Type & type ); /*! @@ -61,16 +60,9 @@ static void SplitNifTree( NiObject * root_object, NiObject * xnif_root, list<NiO //--Function Bodies--// NiObjectRef CreateObject( string obj_type ) { - - //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 * object = NULL; - map<string, blk_factory_func>::iterator it; + map<string, obj_factory_func>::iterator it; it = global_object_map.find(obj_type); if ( it != global_object_map.end() ) { diff --git a/src/obj/ABoneLODController.cpp b/src/obj/ABoneLODController.cpp index 057818a86ac32326628145fc936a038f9aadb838..37f8df7e359258197fa96a8a579b685cab52a832 100644 --- a/src/obj/ABoneLODController.cpp +++ b/src/obj/ABoneLODController.cpp @@ -99,3 +99,27 @@ void ABoneLODController::ClearNodeGroups() { nodeGroups.clear(); numNodeGroups2 = nodeGroups.size(); } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["ABoneLODController"] = ABoneLODController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * ABoneLODController::Create() { + return new ABoneLODController; +} diff --git a/src/obj/AKeyedData.cpp b/src/obj/AKeyedData.cpp index 5c6ea998c839c13772b181d4a88fb6ff348e9b41..8d5f0ffb5c4cbb15738b37b6d82d9d2fa4541d36 100644 --- a/src/obj/AKeyedData.cpp +++ b/src/obj/AKeyedData.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> AKeyedData::GetRefs() const { const Type & AKeyedData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["AKeyedData"] = AKeyedData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * AKeyedData::Create() { + return new AKeyedData; +} diff --git a/src/obj/APSysCtlr.cpp b/src/obj/APSysCtlr.cpp index e400297764e3c21e70e9242022fde0ad5a40286c..7cf97a15dd30deae00d16d789ea37aea0ef84bca 100644 --- a/src/obj/APSysCtlr.cpp +++ b/src/obj/APSysCtlr.cpp @@ -42,3 +42,27 @@ string APSysCtlr::GetModifierName() const { void APSysCtlr::SetModifierName( string value ) { modifierName = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["APSysCtlr"] = APSysCtlr::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * APSysCtlr::Create() { + return new APSysCtlr; +} diff --git a/src/obj/APSysData.cpp b/src/obj/APSysData.cpp index 794758e22db9b61635545a4210ee4c909db44f4b..099eae4593372123e1c6bcfb3331901b990a57f1 100644 --- a/src/obj/APSysData.cpp +++ b/src/obj/APSysData.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> APSysData::GetRefs() const { const Type & APSysData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["APSysData"] = APSysData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * APSysData::Create() { + return new APSysData; +} diff --git a/src/obj/AParticleModifier.cpp b/src/obj/AParticleModifier.cpp index 76c75a7275097e8b5338a7ee4846cdbb1cd3e8ce..c7d0a3971edf9be62ea9ce4fbb62a58ba121fb4f 100644 --- a/src/obj/AParticleModifier.cpp +++ b/src/obj/AParticleModifier.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> AParticleModifier::GetRefs() const { const Type & AParticleModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["AParticleModifier"] = AParticleModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * AParticleModifier::Create() { + return new AParticleModifier; +} diff --git a/src/obj/AbhkConstraint.cpp b/src/obj/AbhkConstraint.cpp index cf17aa22e3f5252cf7804da6d815eff19088ed82..8467375e03ebf963cbb083367e2107765c815ec5 100644 --- a/src/obj/AbhkConstraint.cpp +++ b/src/obj/AbhkConstraint.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> AbhkConstraint::GetRefs() const { const Type & AbhkConstraint::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["AbhkConstraint"] = AbhkConstraint::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * AbhkConstraint::Create() { + return new AbhkConstraint; +} diff --git a/src/obj/AbhkRagdollConstraint.cpp b/src/obj/AbhkRagdollConstraint.cpp index 620b15db98a58bbb16a2f73e670106d0710021d5..28cbb7fe74086c44b29318ac7ad5f9bc9b00803b 100644 --- a/src/obj/AbhkRagdollConstraint.cpp +++ b/src/obj/AbhkRagdollConstraint.cpp @@ -35,3 +35,27 @@ const Type & AbhkRagdollConstraint::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["AbhkRagdollConstraint"] = AbhkRagdollConstraint::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * AbhkRagdollConstraint::Create() { + return new AbhkRagdollConstraint; +} diff --git a/src/obj/AbhkShapeCollection.cpp b/src/obj/AbhkShapeCollection.cpp index 9a2db0b29e731776922f54a60a48b0e3fc2ca18b..8e5e7bb5483132f8ca82721f19014765eb672d2c 100644 --- a/src/obj/AbhkShapeCollection.cpp +++ b/src/obj/AbhkShapeCollection.cpp @@ -35,3 +35,27 @@ const Type & AbhkShapeCollection::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["AbhkShapeCollection"] = AbhkShapeCollection::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * AbhkShapeCollection::Create() { + return new AbhkShapeCollection; +} diff --git a/src/obj/AvoidNode.cpp b/src/obj/AvoidNode.cpp index 390e600d12debb96f2a8cf0fdf22f9833710cdf2..5382dcb021f69d2417647133e6f902537c24148a 100644 --- a/src/obj/AvoidNode.cpp +++ b/src/obj/AvoidNode.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> AvoidNode::GetRefs() const { const Type & AvoidNode::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["AvoidNode"] = AvoidNode::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * AvoidNode::Create() { + return new AvoidNode; +} diff --git a/src/obj/BSBound.cpp b/src/obj/BSBound.cpp index 15479d566beef66863b9c24eb04fd5843ea066d5..1dc059613f5323a416326eec089fa9a8e5490f04 100644 --- a/src/obj/BSBound.cpp +++ b/src/obj/BSBound.cpp @@ -50,3 +50,27 @@ Vector3 BSBound::GetDimensions() const { void BSBound::SetDimensions( const Vector3 & value ) { dimensions = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["BSBound"] = BSBound::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * BSBound::Create() { + return new BSBound; +} diff --git a/src/obj/BSFurnitureMarker.cpp b/src/obj/BSFurnitureMarker.cpp index 14696e4c040e4874f6560db64f0b025e68a6a17c..53557077d417fefa3c55adc2186680c4bd65de3b 100644 --- a/src/obj/BSFurnitureMarker.cpp +++ b/src/obj/BSFurnitureMarker.cpp @@ -44,3 +44,27 @@ void BSFurnitureMarker::SetFurniturePositions( const vector<FurniturePosition> & numPositions = (unsigned int)(n.size()); positions = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["BSFurnitureMarker"] = BSFurnitureMarker::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * BSFurnitureMarker::Create() { + return new BSFurnitureMarker; +} diff --git a/src/obj/BSKeyframeController.cpp b/src/obj/BSKeyframeController.cpp index c7268d46339eff5a1dc68d8442173dc4bd697057..30095be722edbefa7eb14d07f417f11767dba0c6 100644 --- a/src/obj/BSKeyframeController.cpp +++ b/src/obj/BSKeyframeController.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> BSKeyframeController::GetRefs() const { const Type & BSKeyframeController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["BSKeyframeController"] = BSKeyframeController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * BSKeyframeController::Create() { + return new BSKeyframeController; +} diff --git a/src/obj/BSPSysArrayEmitter.cpp b/src/obj/BSPSysArrayEmitter.cpp index bddbdc6d166d9088a65255fe8b80af8303302b92..51027d191f04827723936f38f0b9d3f47635492b 100644 --- a/src/obj/BSPSysArrayEmitter.cpp +++ b/src/obj/BSPSysArrayEmitter.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> BSPSysArrayEmitter::GetRefs() const { const Type & BSPSysArrayEmitter::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["BSPSysArrayEmitter"] = BSPSysArrayEmitter::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * BSPSysArrayEmitter::Create() { + return new BSPSysArrayEmitter; +} diff --git a/src/obj/BSParentVelocityModifier.cpp b/src/obj/BSParentVelocityModifier.cpp index afc41ad9ddc9ec7c3b6a00278230440e9e5cafb1..8eb47e2ff48c2545ff964168e0d5ebd2ffb75b04 100644 --- a/src/obj/BSParentVelocityModifier.cpp +++ b/src/obj/BSParentVelocityModifier.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> BSParentVelocityModifier::GetRefs() const { const Type & BSParentVelocityModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["BSParentVelocityModifier"] = BSParentVelocityModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * BSParentVelocityModifier::Create() { + return new BSParentVelocityModifier; +} diff --git a/src/obj/BSXFlags.cpp b/src/obj/BSXFlags.cpp index bf8c8331554005e2caf7406199865ce03b6a1e41..97b139d984cf2fd3ec1a90776932432814179bcf 100644 --- a/src/obj/BSXFlags.cpp +++ b/src/obj/BSXFlags.cpp @@ -42,3 +42,27 @@ unsigned int BSXFlags::GetFlags() const { void BSXFlags::SetFlags( unsigned int value ) { flags = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["BSXFlags"] = BSXFlags::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * BSXFlags::Create() { + return new BSXFlags; +} diff --git a/src/obj/FxButton.cpp b/src/obj/FxButton.cpp index 3aeed02c799f2aeaa78ba2da88255ff35341ec1c..de0c631b597ba94b5c221601b26bcff871225f29 100644 --- a/src/obj/FxButton.cpp +++ b/src/obj/FxButton.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> FxButton::GetRefs() const { const Type & FxButton::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["FxButton"] = FxButton::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * FxButton::Create() { + return new FxButton; +} diff --git a/src/obj/FxRadioButton.cpp b/src/obj/FxRadioButton.cpp index 6e1f9edf4f8c948328a6b6bf668ca43306d52c23..70265bd49c9247c6604957fd2a6f21ee83f68ff1 100644 --- a/src/obj/FxRadioButton.cpp +++ b/src/obj/FxRadioButton.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> FxRadioButton::GetRefs() const { const Type & FxRadioButton::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["FxRadioButton"] = FxRadioButton::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * FxRadioButton::Create() { + return new FxRadioButton; +} diff --git a/src/obj/FxWidget.cpp b/src/obj/FxWidget.cpp index 6ca7a9f6d7c8329876484eec664df7cbfcadb033..e0e4742d037f523be5e9e0ba4c47fe81cf7cdf2a 100644 --- a/src/obj/FxWidget.cpp +++ b/src/obj/FxWidget.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> FxWidget::GetRefs() const { const Type & FxWidget::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["FxWidget"] = FxWidget::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * FxWidget::Create() { + return new FxWidget; +} diff --git a/src/obj/NiAVObject.cpp b/src/obj/NiAVObject.cpp index 2eb517f3c5c53dc7b14e90a6d87c245d8f9b72c8..ba0e657616ac90158e8ea0cb6e2941e3de17391b 100644 --- a/src/obj/NiAVObject.cpp +++ b/src/obj/NiAVObject.cpp @@ -239,3 +239,27 @@ void NiAVObject::SetBoundingBox( const BoundingBox & n ) { const Type & NiAVObject::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiAVObject"] = NiAVObject::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiAVObject::Create() { + return new NiAVObject; +} diff --git a/src/obj/NiAlphaController.cpp b/src/obj/NiAlphaController.cpp index 94e7b63881eafb4051acc43c581026604f87f992..32dc1e4fc121e082025a467972264f974857ab05 100644 --- a/src/obj/NiAlphaController.cpp +++ b/src/obj/NiAlphaController.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiAlphaController::GetRefs() const { const Type & NiAlphaController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiAlphaController"] = NiAlphaController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiAlphaController::Create() { + return new NiAlphaController; +} diff --git a/src/obj/NiAlphaProperty.cpp b/src/obj/NiAlphaProperty.cpp index 87aee482db02e3113ad710f44ff310ba91351300..64a91fd4a276502a42e8650938d0d2a27357a0c6 100644 --- a/src/obj/NiAlphaProperty.cpp +++ b/src/obj/NiAlphaProperty.cpp @@ -103,3 +103,27 @@ bool NiAlphaProperty::GetTriangleSortMode() const { void NiAlphaProperty::SetTriangleSortMode(bool value) { flags = NIFLIB_MASK_FLAG(flags, value?0:1, 13, 0x1); } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiAlphaProperty"] = NiAlphaProperty::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiAlphaProperty::Create() { + return new NiAlphaProperty; +} diff --git a/src/obj/NiAmbientLight.cpp b/src/obj/NiAmbientLight.cpp index b584b732c88d1ac43169af45e35efb07d8b18d26..ff5a83b3e795b24a07ee6f01b57f1258bfdef5c2 100644 --- a/src/obj/NiAmbientLight.cpp +++ b/src/obj/NiAmbientLight.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiAmbientLight::GetRefs() const { const Type & NiAmbientLight::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiAmbientLight"] = NiAmbientLight::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiAmbientLight::Create() { + return new NiAmbientLight; +} diff --git a/src/obj/NiAutoNormalParticles.cpp b/src/obj/NiAutoNormalParticles.cpp index b88e90ee9c37080b0e31523bc07723a269c41114..a84249aef4921ffe47a3c2e046c43f4e4e6597b1 100644 --- a/src/obj/NiAutoNormalParticles.cpp +++ b/src/obj/NiAutoNormalParticles.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiAutoNormalParticles::GetRefs() const { const Type & NiAutoNormalParticles::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiAutoNormalParticles"] = NiAutoNormalParticles::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiAutoNormalParticles::Create() { + return new NiAutoNormalParticles; +} diff --git a/src/obj/NiAutoNormalParticlesData.cpp b/src/obj/NiAutoNormalParticlesData.cpp index 4f6a50854206f5463a005d5dcaa5becc16b3392a..6eaed993857de73a109f249275ec29e35ad52acd 100644 --- a/src/obj/NiAutoNormalParticlesData.cpp +++ b/src/obj/NiAutoNormalParticlesData.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiAutoNormalParticlesData::GetRefs() const { const Type & NiAutoNormalParticlesData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiAutoNormalParticlesData"] = NiAutoNormalParticlesData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiAutoNormalParticlesData::Create() { + return new NiAutoNormalParticlesData; +} diff --git a/src/obj/NiBSAnimationNode.cpp b/src/obj/NiBSAnimationNode.cpp index f6cc4eac2c55bc9fede288202f82f07f1f498738..b0d779f1b5192599ad9a9cbac50e7801661d2681 100644 --- a/src/obj/NiBSAnimationNode.cpp +++ b/src/obj/NiBSAnimationNode.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiBSAnimationNode::GetRefs() const { const Type & NiBSAnimationNode::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBSAnimationNode"] = NiBSAnimationNode::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBSAnimationNode::Create() { + return new NiBSAnimationNode; +} diff --git a/src/obj/NiBSBoneLODController.cpp b/src/obj/NiBSBoneLODController.cpp index 11c257700492f73260889fbf4a492318c64d4c09..ada2b8001d852bb8049802c74f4e7632598a7f45 100644 --- a/src/obj/NiBSBoneLODController.cpp +++ b/src/obj/NiBSBoneLODController.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiBSBoneLODController::GetRefs() const { const Type & NiBSBoneLODController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBSBoneLODController"] = NiBSBoneLODController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBSBoneLODController::Create() { + return new NiBSBoneLODController; +} diff --git a/src/obj/NiBSPArrayController.cpp b/src/obj/NiBSPArrayController.cpp index cf60d196bd9d6c5b5f5f001d115678f57fac6f30..a68bd3c8b49b0f8093ea6927181da1ca6fa67f05 100644 --- a/src/obj/NiBSPArrayController.cpp +++ b/src/obj/NiBSPArrayController.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiBSPArrayController::GetRefs() const { const Type & NiBSPArrayController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBSPArrayController"] = NiBSPArrayController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBSPArrayController::Create() { + return new NiBSPArrayController; +} diff --git a/src/obj/NiBSParticleNode.cpp b/src/obj/NiBSParticleNode.cpp index 726459d9379002b625f481c8752257b24fead942..48041f2a660646477a3623a76abb7a25bef5df54 100644 --- a/src/obj/NiBSParticleNode.cpp +++ b/src/obj/NiBSParticleNode.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiBSParticleNode::GetRefs() const { const Type & NiBSParticleNode::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBSParticleNode"] = NiBSParticleNode::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBSParticleNode::Create() { + return new NiBSParticleNode; +} diff --git a/src/obj/NiBSplineBasisData.cpp b/src/obj/NiBSplineBasisData.cpp index b5ada2cb7661430854572b0646bc91a82b64a7c7..56bf4229abbcfff19e0a544c5b1aa7c269458221 100644 --- a/src/obj/NiBSplineBasisData.cpp +++ b/src/obj/NiBSplineBasisData.cpp @@ -42,3 +42,27 @@ unsigned int NiBSplineBasisData::GetNumControlPt() const { void NiBSplineBasisData::SetNumControlPt( unsigned int value ) { numControlPt = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBSplineBasisData"] = NiBSplineBasisData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBSplineBasisData::Create() { + return new NiBSplineBasisData; +} diff --git a/src/obj/NiBSplineCompFloatInterpolator.cpp b/src/obj/NiBSplineCompFloatInterpolator.cpp index 8b7306a93e70ed739b7f3751b96d9c872833c5a6..b40a50ae0e5d8d0abdfaf1e71eae4d9993ba48b0 100644 --- a/src/obj/NiBSplineCompFloatInterpolator.cpp +++ b/src/obj/NiBSplineCompFloatInterpolator.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiBSplineCompFloatInterpolator::GetRefs() const { const Type & NiBSplineCompFloatInterpolator::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBSplineCompFloatInterpolator"] = NiBSplineCompFloatInterpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBSplineCompFloatInterpolator::Create() { + return new NiBSplineCompFloatInterpolator; +} diff --git a/src/obj/NiBSplineCompPoint3Interpolator.cpp b/src/obj/NiBSplineCompPoint3Interpolator.cpp index 3eb7ca3c207869547069da894a8cd8dc9c715a6f..2bffb7f0ce67f360a5994ac689a5022fb9544e7d 100644 --- a/src/obj/NiBSplineCompPoint3Interpolator.cpp +++ b/src/obj/NiBSplineCompPoint3Interpolator.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiBSplineCompPoint3Interpolator::GetRefs() const { const Type & NiBSplineCompPoint3Interpolator::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBSplineCompPoint3Interpolator"] = NiBSplineCompPoint3Interpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBSplineCompPoint3Interpolator::Create() { + return new NiBSplineCompPoint3Interpolator; +} diff --git a/src/obj/NiBSplineCompTransformInterpolator.cpp b/src/obj/NiBSplineCompTransformInterpolator.cpp index 1db53bcdf45346d7348095b317225c0a630b01a6..3f78b83bf45cd1d7eda01db3680447d31172e3b8 100644 --- a/src/obj/NiBSplineCompTransformInterpolator.cpp +++ b/src/obj/NiBSplineCompTransformInterpolator.cpp @@ -282,3 +282,27 @@ int NiBSplineCompTransformInterpolator::GetNumControlPt() const } return 0; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBSplineCompTransformInterpolator"] = NiBSplineCompTransformInterpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBSplineCompTransformInterpolator::Create() { + return new NiBSplineCompTransformInterpolator; +} diff --git a/src/obj/NiBSplineData.cpp b/src/obj/NiBSplineData.cpp index a5b8a27cc61be5d2c7993b772a0c82d1df32e7a2..1a032df9ba71b1b38b84cf6c7f4c09eb220b1806 100644 --- a/src/obj/NiBSplineData.cpp +++ b/src/obj/NiBSplineData.cpp @@ -50,3 +50,27 @@ vector<short > NiBSplineData::GetControlPointRange(int offset, int count) const std::advance(srcend, offset + count); return vector<short>(srcbeg, srcend); } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBSplineData"] = NiBSplineData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBSplineData::Create() { + return new NiBSplineData; +} diff --git a/src/obj/NiBSplineInterpolator.cpp b/src/obj/NiBSplineInterpolator.cpp index 95b1d68dae4aa72415fd1ccc9a696c34a1438c8c..90076816c074b80b0090d415cbf3a666a4078394 100644 --- a/src/obj/NiBSplineInterpolator.cpp +++ b/src/obj/NiBSplineInterpolator.cpp @@ -167,3 +167,27 @@ void NiBSplineInterpolator::bspline(int n, int t, int l, float *control, float * delete [] u; delete [] calc; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBSplineInterpolator"] = NiBSplineInterpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBSplineInterpolator::Create() { + return new NiBSplineInterpolator; +} diff --git a/src/obj/NiBillboardNode.cpp b/src/obj/NiBillboardNode.cpp index 438fce324d5a3f18329b0360d81932cc97cfcc19..f8815582aa1fcb6bb41a46b94cf78132e63a881e 100644 --- a/src/obj/NiBillboardNode.cpp +++ b/src/obj/NiBillboardNode.cpp @@ -42,3 +42,27 @@ BillboardMode NiBillboardNode::GetBillboardMode() const { void NiBillboardNode::SetBillboardMode( BillboardMode value ) { billboardMode = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBillboardNode"] = NiBillboardNode::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBillboardNode::Create() { + return new NiBillboardNode; +} diff --git a/src/obj/NiBinaryExtraData.cpp b/src/obj/NiBinaryExtraData.cpp index 8d7bf168c2c51bce5a31cc069190b2b05bf7dbca..63ddd57a64de9b28a1ca7632a20c1ca43f565019 100644 --- a/src/obj/NiBinaryExtraData.cpp +++ b/src/obj/NiBinaryExtraData.cpp @@ -45,3 +45,27 @@ void NiBinaryExtraData::SetData( const vector<byte> & n ) { binaryData.dataSize = (unsigned int)(n.size()); binaryData.data = n; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBinaryExtraData"] = NiBinaryExtraData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBinaryExtraData::Create() { + return new NiBinaryExtraData; +} diff --git a/src/obj/NiBlendBoolInterpolator.cpp b/src/obj/NiBlendBoolInterpolator.cpp index c08f8a4f3a98090142de1795322a503b963ccfc7..acf716ae847ec5ab063a76b03ff5dbd17c704f2e 100644 --- a/src/obj/NiBlendBoolInterpolator.cpp +++ b/src/obj/NiBlendBoolInterpolator.cpp @@ -42,3 +42,27 @@ byte NiBlendBoolInterpolator::GetBoolValue() const { void NiBlendBoolInterpolator::SetBoolValue( byte value ) { boolValue = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBlendBoolInterpolator"] = NiBlendBoolInterpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBlendBoolInterpolator::Create() { + return new NiBlendBoolInterpolator; +} diff --git a/src/obj/NiBlendFloatInterpolator.cpp b/src/obj/NiBlendFloatInterpolator.cpp index 5baefbca7b3111eb2a4f88b5888db7e10cdbcbbd..d9bbf7e030f9e26031265a61923c33c067a1d257 100644 --- a/src/obj/NiBlendFloatInterpolator.cpp +++ b/src/obj/NiBlendFloatInterpolator.cpp @@ -42,3 +42,27 @@ float NiBlendFloatInterpolator::GetFloatValue() const { void NiBlendFloatInterpolator::SetFloatValue( float value ) { floatValue = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBlendFloatInterpolator"] = NiBlendFloatInterpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBlendFloatInterpolator::Create() { + return new NiBlendFloatInterpolator; +} diff --git a/src/obj/NiBlendInterpolator.cpp b/src/obj/NiBlendInterpolator.cpp index febaf5a9e769e296d4b037996785d080fd2ede81..8ffa68a24c7dcdefab02a1fc15120cb3f04ffcb9 100644 --- a/src/obj/NiBlendInterpolator.cpp +++ b/src/obj/NiBlendInterpolator.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiBlendInterpolator::GetRefs() const { const Type & NiBlendInterpolator::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBlendInterpolator"] = NiBlendInterpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBlendInterpolator::Create() { + return new NiBlendInterpolator; +} diff --git a/src/obj/NiBlendPoint3Interpolator.cpp b/src/obj/NiBlendPoint3Interpolator.cpp index 46685c4cc341a0c51b58df7bc8850b165c86794a..9300f8329f3c4495b9b35b82d2aca173d79425e3 100644 --- a/src/obj/NiBlendPoint3Interpolator.cpp +++ b/src/obj/NiBlendPoint3Interpolator.cpp @@ -42,3 +42,27 @@ Vector3 NiBlendPoint3Interpolator::GetPointValue() const { void NiBlendPoint3Interpolator::SetPointValue( Vector3 value ) { pointValue = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBlendPoint3Interpolator"] = NiBlendPoint3Interpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBlendPoint3Interpolator::Create() { + return new NiBlendPoint3Interpolator; +} diff --git a/src/obj/NiBlendTransformInterpolator.cpp b/src/obj/NiBlendTransformInterpolator.cpp index 057aa0fccbede5e6e5020e0e7679794cdd31526a..331c7624de4a8a4f56995f2487a18df213559d6e 100644 --- a/src/obj/NiBlendTransformInterpolator.cpp +++ b/src/obj/NiBlendTransformInterpolator.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiBlendTransformInterpolator::GetRefs() const { const Type & NiBlendTransformInterpolator::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBlendTransformInterpolator"] = NiBlendTransformInterpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBlendTransformInterpolator::Create() { + return new NiBlendTransformInterpolator; +} diff --git a/src/obj/NiBoneLODController.cpp b/src/obj/NiBoneLODController.cpp index c8a64d59af554eb6af6d5d2ab3afeef9659ee21f..2eaf8bdbf7fca91ede5ed00708f3d51f2d10b78d 100644 --- a/src/obj/NiBoneLODController.cpp +++ b/src/obj/NiBoneLODController.cpp @@ -38,3 +38,27 @@ list<NiObjectRef> NiBoneLODController::GetRefs() const { const Type & NiBoneLODController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBoneLODController"] = NiBoneLODController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBoneLODController::Create() { + return new NiBoneLODController; +} diff --git a/src/obj/NiBoolData.cpp b/src/obj/NiBoolData.cpp index eaf1d66fbf2411e38f4959165ad15abb02dff3a2..2dc8c49c8c91326d494e5a426273d890b3b591a9 100644 --- a/src/obj/NiBoolData.cpp +++ b/src/obj/NiBoolData.cpp @@ -51,3 +51,27 @@ vector< Key<unsigned char> > NiBoolData::GetKeys() const { void NiBoolData::SetKeys( vector< Key<unsigned char> > const & keys ) { data.keys = keys; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBoolData"] = NiBoolData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBoolData::Create() { + return new NiBoolData; +} diff --git a/src/obj/NiBoolInterpolator.cpp b/src/obj/NiBoolInterpolator.cpp index ace48762258910c1dadfcd1be93fc4239ccfef18..93eac38e3be65f3f6ba51e9858a8fb76a992caba 100644 --- a/src/obj/NiBoolInterpolator.cpp +++ b/src/obj/NiBoolInterpolator.cpp @@ -51,3 +51,27 @@ Ref<NiBoolData > NiBoolInterpolator::GetData() const { void NiBoolInterpolator::SetData( NiBoolData * value ) { data = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBoolInterpolator"] = NiBoolInterpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBoolInterpolator::Create() { + return new NiBoolInterpolator; +} diff --git a/src/obj/NiBoolTimelineInterpolator.cpp b/src/obj/NiBoolTimelineInterpolator.cpp index 684cb2464cd80ecd08cf8fb67f1897ef8e972c35..d0934509c7f5dbc4f49e60392ea5a1d72f2d1d7a 100644 --- a/src/obj/NiBoolTimelineInterpolator.cpp +++ b/src/obj/NiBoolTimelineInterpolator.cpp @@ -51,3 +51,27 @@ Ref<NiBoolData> NiBoolTimelineInterpolator::GetData() const { void NiBoolTimelineInterpolator::SetData( NiBoolData * value ) { data = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBoolTimelineInterpolator"] = NiBoolTimelineInterpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBoolTimelineInterpolator::Create() { + return new NiBoolTimelineInterpolator; +} diff --git a/src/obj/NiBooleanExtraData.cpp b/src/obj/NiBooleanExtraData.cpp index df39e0428eaf0ccf031324be62ed237cb872e02f..eea4e528b3aa9088da1268a2d1ef570a3dfd10ad 100644 --- a/src/obj/NiBooleanExtraData.cpp +++ b/src/obj/NiBooleanExtraData.cpp @@ -42,3 +42,27 @@ bool NiBooleanExtraData::GetData() const { void NiBooleanExtraData::SetData( bool n ) { booleanData = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiBooleanExtraData"] = NiBooleanExtraData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiBooleanExtraData::Create() { + return new NiBooleanExtraData; +} diff --git a/src/obj/NiCamera.cpp b/src/obj/NiCamera.cpp index 83eeee154f40187f0da66d8fdc9298b60cd39d2c..0167eb6cbe27865198cb225bd4cf7caf6e4c9559 100644 --- a/src/obj/NiCamera.cpp +++ b/src/obj/NiCamera.cpp @@ -131,3 +131,27 @@ float NiCamera::GetLodAdjust() const { void NiCamera::SetLodAdjust( float value ) { lodAdjust = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiCamera"] = NiCamera::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiCamera::Create() { + return new NiCamera; +} diff --git a/src/obj/NiClod.cpp b/src/obj/NiClod.cpp index fc1c82f2987e9143671ebd92cee4007c6a1e82a7..87a956d8dff6c6b7ddb836d813cedab173fee187 100644 --- a/src/obj/NiClod.cpp +++ b/src/obj/NiClod.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiClod::GetRefs() const { const Type & NiClod::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiClod"] = NiClod::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiClod::Create() { + return new NiClod; +} diff --git a/src/obj/NiClodData.cpp b/src/obj/NiClodData.cpp index 9dc33489b79517006b2b9945143277c6b441ccab..5672c36f526c90e4fff43e02c775ee5152562eca 100644 --- a/src/obj/NiClodData.cpp +++ b/src/obj/NiClodData.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiClodData::GetRefs() const { const Type & NiClodData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiClodData"] = NiClodData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiClodData::Create() { + return new NiClodData; +} diff --git a/src/obj/NiClodSkinInstance.cpp b/src/obj/NiClodSkinInstance.cpp index 5aad23b1c048b1f7dc244595c57ba4fd8d9e62a1..c3d668a5ed67149c4310b370171358ce1e879e17 100644 --- a/src/obj/NiClodSkinInstance.cpp +++ b/src/obj/NiClodSkinInstance.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiClodSkinInstance::GetRefs() const { const Type & NiClodSkinInstance::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiClodSkinInstance"] = NiClodSkinInstance::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiClodSkinInstance::Create() { + return new NiClodSkinInstance; +} diff --git a/src/obj/NiCollisionData.cpp b/src/obj/NiCollisionData.cpp index 67c0ecc213f049acb6d06437e5da2eb10302167f..5f6d3455a39a5936c4843ddf61c35c67122f1a1c 100644 --- a/src/obj/NiCollisionData.cpp +++ b/src/obj/NiCollisionData.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiCollisionData::GetRefs() const { const Type & NiCollisionData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiCollisionData"] = NiCollisionData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiCollisionData::Create() { + return new NiCollisionData; +} diff --git a/src/obj/NiCollisionObject.cpp b/src/obj/NiCollisionObject.cpp index f8488a652a7fe6c8b0257d75aa2bfee9a6cbb97c..c202968fc8c72c56cb41d3eaf91f87c23131480d 100644 --- a/src/obj/NiCollisionObject.cpp +++ b/src/obj/NiCollisionObject.cpp @@ -52,3 +52,27 @@ Ref<NiObject > NiCollisionObject::GetBody() const { void NiCollisionObject::SetBody( NiObject * value ) { body = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiCollisionObject"] = NiCollisionObject::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiCollisionObject::Create() { + return new NiCollisionObject; +} diff --git a/src/obj/NiColorData.cpp b/src/obj/NiColorData.cpp index 4142b02e19f737970d715ad6ae63e194f5321f50..5904a0c19550f3e09622918feb7ea5344358ecdf 100644 --- a/src/obj/NiColorData.cpp +++ b/src/obj/NiColorData.cpp @@ -51,3 +51,27 @@ vector< Key<Color4> > NiColorData::GetKeys() const { void NiColorData::SetKeys( vector< Key<Color4> > const & keys ) { data.keys = keys; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiColorData"] = NiColorData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiColorData::Create() { + return new NiColorData; +} diff --git a/src/obj/NiColorExtraData.cpp b/src/obj/NiColorExtraData.cpp index eb7b5eee3a37e35ad185e4bbc97bda13c32ff814..b0d15a16ae3c42e5082b00622d2fe0a4cdde3590 100644 --- a/src/obj/NiColorExtraData.cpp +++ b/src/obj/NiColorExtraData.cpp @@ -42,3 +42,27 @@ Color4 NiColorExtraData::GetData() const { void NiColorExtraData::SetData( const Color4 & n ) { data = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiColorExtraData"] = NiColorExtraData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiColorExtraData::Create() { + return new NiColorExtraData; +} diff --git a/src/obj/NiControllerManager.cpp b/src/obj/NiControllerManager.cpp index 4029ae5d3be1d9813a931b5d06fae74993573a40..75334c1176fd78d666801ae90e523b735745813b 100644 --- a/src/obj/NiControllerManager.cpp +++ b/src/obj/NiControllerManager.cpp @@ -93,3 +93,27 @@ Ref<NiDefaultAVObjectPalette > NiControllerManager::GetObjectPalette() const { void NiControllerManager::SetObjectPalette( NiDefaultAVObjectPalette * value ) { objectPalette = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiControllerManager"] = NiControllerManager::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiControllerManager::Create() { + return new NiControllerManager; +} diff --git a/src/obj/NiControllerSequence.cpp b/src/obj/NiControllerSequence.cpp index d531fb31029e32602aa2508a3b32f355736d55ba..0658d9329d65cd98465837f3fd1e77fd2c798708 100644 --- a/src/obj/NiControllerSequence.cpp +++ b/src/obj/NiControllerSequence.cpp @@ -223,3 +223,27 @@ float NiControllerSequence::GetWeight() const { void NiControllerSequence::SetWeight( const float value ) { weight = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiControllerSequence"] = NiControllerSequence::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiControllerSequence::Create() { + return new NiControllerSequence; +} diff --git a/src/obj/NiDefaultAVObjectPalette.cpp b/src/obj/NiDefaultAVObjectPalette.cpp index f7ddb9e292fb302a43cba98f10cd94bdc3e2f659..a9dac865af692dabdba6adcfae12e914b96849e3 100644 --- a/src/obj/NiDefaultAVObjectPalette.cpp +++ b/src/obj/NiDefaultAVObjectPalette.cpp @@ -54,3 +54,27 @@ void NiDefaultAVObjectPalette::SetObjs( const vector<Ref<NiAVObject> >& value ) objs.push_back(obj); } } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiDefaultAVObjectPalette"] = NiDefaultAVObjectPalette::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiDefaultAVObjectPalette::Create() { + return new NiDefaultAVObjectPalette; +} diff --git a/src/obj/NiDirectionalLight.cpp b/src/obj/NiDirectionalLight.cpp index 10b0ea8480d482d425558c147074298d71a1c63e..f40675b55b9045c35fc699ddd8e62713204babf4 100644 --- a/src/obj/NiDirectionalLight.cpp +++ b/src/obj/NiDirectionalLight.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiDirectionalLight::GetRefs() const { const Type & NiDirectionalLight::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiDirectionalLight"] = NiDirectionalLight::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiDirectionalLight::Create() { + return new NiDirectionalLight; +} diff --git a/src/obj/NiDitherProperty.cpp b/src/obj/NiDitherProperty.cpp index d1e1de36300d83b2598694625faf928483d4c225..d30179aa5fb10384b79e779f8a70ecf78c7e5ea7 100644 --- a/src/obj/NiDitherProperty.cpp +++ b/src/obj/NiDitherProperty.cpp @@ -42,3 +42,27 @@ unsigned short NiDitherProperty::GetFlags() const { void NiDitherProperty::SetFlags( unsigned short n ) { flags = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiDitherProperty"] = NiDitherProperty::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiDitherProperty::Create() { + return new NiDitherProperty; +} diff --git a/src/obj/NiDynamicEffect.cpp b/src/obj/NiDynamicEffect.cpp index dda7d991d2f789a720b3bd929648199c2a9e835a..399332b542a3c23f2c7e957fb1e5db1111e5c7cf 100644 --- a/src/obj/NiDynamicEffect.cpp +++ b/src/obj/NiDynamicEffect.cpp @@ -51,3 +51,27 @@ vector<Ref<NiAVObject > > NiDynamicEffect::GetAffectedNodes() const { void NiDynamicEffect::SetAffectedNodes( const vector<Ref<NiAVObject > >& value ) { affectedNodes = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiDynamicEffect"] = NiDynamicEffect::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiDynamicEffect::Create() { + return new NiDynamicEffect; +} diff --git a/src/obj/NiExtraData.cpp b/src/obj/NiExtraData.cpp index 689f8b5046aef5f8c94199f284ece8895d6d8adb..d2688eec50f67217072a9ed5cfd1b34b1770c374 100644 --- a/src/obj/NiExtraData.cpp +++ b/src/obj/NiExtraData.cpp @@ -57,3 +57,27 @@ NiExtraDataRef NiExtraData::GetNextExtraData() const { void NiExtraData::SetNextExtraData( NiExtraData * obj ) { nextExtraData = obj; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiExtraData"] = NiExtraData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiExtraData::Create() { + return new NiExtraData; +} diff --git a/src/obj/NiFlipController.cpp b/src/obj/NiFlipController.cpp index 9acbb95f36fcfd16150ebf673859a7eaa15ed63c..c9cebfca14e5c932edbba747275ed18da1783c67 100644 --- a/src/obj/NiFlipController.cpp +++ b/src/obj/NiFlipController.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiFlipController::GetRefs() const { const Type & NiFlipController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiFlipController"] = NiFlipController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiFlipController::Create() { + return new NiFlipController; +} diff --git a/src/obj/NiFloatData.cpp b/src/obj/NiFloatData.cpp index 436296b36428b3b671608d95525e341d6d3324cc..9b52f89751c205b9bb2677ab6c07d96c7f280813 100644 --- a/src/obj/NiFloatData.cpp +++ b/src/obj/NiFloatData.cpp @@ -51,3 +51,27 @@ vector< Key<float> > NiFloatData::GetKeys() const { void NiFloatData::SetKeys( vector< Key<float> > const & keys ) { data.keys = keys; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiFloatData"] = NiFloatData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiFloatData::Create() { + return new NiFloatData; +} diff --git a/src/obj/NiFloatExtraData.cpp b/src/obj/NiFloatExtraData.cpp index 92e9a28342dafb0e1f740dbd010cce18b76ddf4b..06f82bb9f1c80d90ca07c14004ed4afc6c3e71cc 100644 --- a/src/obj/NiFloatExtraData.cpp +++ b/src/obj/NiFloatExtraData.cpp @@ -42,3 +42,27 @@ float NiFloatExtraData::GetData() const { void NiFloatExtraData::SetData( float n ) { floatData = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiFloatExtraData"] = NiFloatExtraData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiFloatExtraData::Create() { + return new NiFloatExtraData; +} diff --git a/src/obj/NiFloatExtraDataController.cpp b/src/obj/NiFloatExtraDataController.cpp index 75ef2387d2d546b22b4d6b1528a6f2ece7479daa..ab0c976846249be36c02685445405e2a42f49941 100644 --- a/src/obj/NiFloatExtraDataController.cpp +++ b/src/obj/NiFloatExtraDataController.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiFloatExtraDataController::GetRefs() const { const Type & NiFloatExtraDataController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiFloatExtraDataController"] = NiFloatExtraDataController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiFloatExtraDataController::Create() { + return new NiFloatExtraDataController; +} diff --git a/src/obj/NiFloatInterpolator.cpp b/src/obj/NiFloatInterpolator.cpp index 84ebe777569f6517b830c2ebe4625eafa99ddfcd..3a7637934d375dc6443c5252b554cd6bfc4fc114 100644 --- a/src/obj/NiFloatInterpolator.cpp +++ b/src/obj/NiFloatInterpolator.cpp @@ -51,3 +51,27 @@ Ref<NiFloatData > NiFloatInterpolator::GetData() const { void NiFloatInterpolator::SetData( NiFloatData * value ) { data = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiFloatInterpolator"] = NiFloatInterpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiFloatInterpolator::Create() { + return new NiFloatInterpolator; +} diff --git a/src/obj/NiFloatsExtraData.cpp b/src/obj/NiFloatsExtraData.cpp index 6371ac37e1e3bceea69c67ab3c1d8b93d55272b7..f636c8665a5b2415eeca09506cf8c82227e035d9 100644 --- a/src/obj/NiFloatsExtraData.cpp +++ b/src/obj/NiFloatsExtraData.cpp @@ -43,3 +43,27 @@ void NiFloatsExtraData::SetData( const vector<float> & n ) { numFloats = (unsigned int)(n.size()); data = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiFloatsExtraData"] = NiFloatsExtraData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiFloatsExtraData::Create() { + return new NiFloatsExtraData; +} diff --git a/src/obj/NiFogProperty.cpp b/src/obj/NiFogProperty.cpp index bd8515863822fb63d39668fa9a0180dc68f5eda7..788b0fb7f665fcca71dd9360633c951456b45fc2 100644 --- a/src/obj/NiFogProperty.cpp +++ b/src/obj/NiFogProperty.cpp @@ -59,3 +59,27 @@ Color3 NiFogProperty::GetFogColor() const { void NiFogProperty::SetFogColor(Color3 value) { fogColor = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiFogProperty"] = NiFogProperty::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiFogProperty::Create() { + return new NiFogProperty; +} diff --git a/src/obj/NiGeomMorpherController.cpp b/src/obj/NiGeomMorpherController.cpp index 872041b5bb8108f18a058320a088b7e38da24917..7c9aac40ada1091e0e20f2b9692f4060ae8e202d 100644 --- a/src/obj/NiGeomMorpherController.cpp +++ b/src/obj/NiGeomMorpherController.cpp @@ -53,3 +53,27 @@ Ref<NiMorphData> NiGeomMorpherController::GetData() const { void NiGeomMorpherController::SetData( NiMorphData * n ) { data = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiGeomMorpherController"] = NiGeomMorpherController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiGeomMorpherController::Create() { + return new NiGeomMorpherController; +} diff --git a/src/obj/NiGeometry.cpp b/src/obj/NiGeometry.cpp index 1577f418f4a7b2902242ba75008988ce9a0afe0a..87301e4f08fd874afb1a94d4d1ffa9954bb16d9c 100644 --- a/src/obj/NiGeometry.cpp +++ b/src/obj/NiGeometry.cpp @@ -362,3 +362,27 @@ void NiGeometry::SetBoneWeights( unsigned int bone_index, const vector<SkinWeigh skinData->SetBoneWeights( bone_index, n, center, radius ); } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiGeometry"] = NiGeometry::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiGeometry::Create() { + return new NiGeometry; +} diff --git a/src/obj/NiGeometryData.cpp b/src/obj/NiGeometryData.cpp index 852ed168af253d9832b8a50580f485f2d109e56c..651e777357adfac37ea2c6e8a9d36ff5c287fc9d 100644 --- a/src/obj/NiGeometryData.cpp +++ b/src/obj/NiGeometryData.cpp @@ -162,3 +162,27 @@ void NiGeometryData::Transform( const Matrix44 & transform ) { normals[i] = rotation * normals[i]; } } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiGeometryData"] = NiGeometryData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiGeometryData::Create() { + return new NiGeometryData; +} diff --git a/src/obj/NiGravity.cpp b/src/obj/NiGravity.cpp index 3185e3ba873dee2f7dcfdc910c9fabf278ef4a5b..fc14904e3c3b1c5565addf578e1ac3777e14af04 100644 --- a/src/obj/NiGravity.cpp +++ b/src/obj/NiGravity.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiGravity::GetRefs() const { const Type & NiGravity::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiGravity"] = NiGravity::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiGravity::Create() { + return new NiGravity; +} diff --git a/src/obj/NiImage.cpp b/src/obj/NiImage.cpp index 8d14b9f5a2051d18e1670a5520469b8e75db0efa..e2defe0e1fffee8ec1fea93a51ab514e3197d475 100644 --- a/src/obj/NiImage.cpp +++ b/src/obj/NiImage.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiImage::GetRefs() const { const Type & NiImage::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiImage"] = NiImage::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiImage::Create() { + return new NiImage; +} diff --git a/src/obj/NiIntegerExtraData.cpp b/src/obj/NiIntegerExtraData.cpp index 2dfb9845370b5c8fdfbcfb3df14d76bfd92a4898..1c26cceebeb1fa233f09c4617c79c992218b82e0 100644 --- a/src/obj/NiIntegerExtraData.cpp +++ b/src/obj/NiIntegerExtraData.cpp @@ -42,3 +42,27 @@ unsigned int NiIntegerExtraData::GetData() const { void NiIntegerExtraData::SetData( unsigned int n ) { integerData = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiIntegerExtraData"] = NiIntegerExtraData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiIntegerExtraData::Create() { + return new NiIntegerExtraData; +} diff --git a/src/obj/NiIntegersExtraData.cpp b/src/obj/NiIntegersExtraData.cpp index 2e131b0376d83996e851c160a15560c4fbec52aa..9c35fddc343618a995513b286956ade32fe58777 100644 --- a/src/obj/NiIntegersExtraData.cpp +++ b/src/obj/NiIntegersExtraData.cpp @@ -43,3 +43,27 @@ void NiIntegersExtraData::SetData( const vector<unsigned int> & n ) { numIntegers = (unsigned int)( n.size() ); data = n; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiIntegersExtraData"] = NiIntegersExtraData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiIntegersExtraData::Create() { + return new NiIntegersExtraData; +} diff --git a/src/obj/NiInterpolator.cpp b/src/obj/NiInterpolator.cpp index d8efbb5cb21bf4067155e3a2499502e619318af3..a179eb6597e6cfbefc66652450a0c2ec2d984120 100644 --- a/src/obj/NiInterpolator.cpp +++ b/src/obj/NiInterpolator.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiInterpolator::GetRefs() const { const Type & NiInterpolator::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiInterpolator"] = NiInterpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiInterpolator::Create() { + return new NiInterpolator; +} diff --git a/src/obj/NiKeyframeController.cpp b/src/obj/NiKeyframeController.cpp index c889ddb3ebc66336166bf313707dca54348d29ce..26bd096713675f40ecb5b198e2256746337e3bac 100644 --- a/src/obj/NiKeyframeController.cpp +++ b/src/obj/NiKeyframeController.cpp @@ -43,3 +43,27 @@ Ref<NiKeyframeData> NiKeyframeController::GetData() const { void NiKeyframeController::SetData( NiKeyframeData * n ) { data = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiKeyframeController"] = NiKeyframeController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiKeyframeController::Create() { + return new NiKeyframeController; +} diff --git a/src/obj/NiKeyframeData.cpp b/src/obj/NiKeyframeData.cpp index 8bdf6e1f50bcee88e338c6d2f1d960811438de15..0918aa91e77d2d14a13877709fd666886c798829 100644 --- a/src/obj/NiKeyframeData.cpp +++ b/src/obj/NiKeyframeData.cpp @@ -141,3 +141,27 @@ vector< Key<float> > NiKeyframeData::GetScaleKeys() const { void NiKeyframeData::SetScaleKeys( vector< Key<float> > const & keys ) { scales.keys = keys; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiKeyframeData"] = NiKeyframeData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiKeyframeData::Create() { + return new NiKeyframeData; +} diff --git a/src/obj/NiLODData.cpp b/src/obj/NiLODData.cpp index 022f3fe4509cafe57d8cf330babbd672c918f888..3797f3e51b0d2267adb7ccf2292e2e12b00e0288 100644 --- a/src/obj/NiLODData.cpp +++ b/src/obj/NiLODData.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiLODData::GetRefs() const { const Type & NiLODData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiLODData"] = NiLODData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiLODData::Create() { + return new NiLODData; +} diff --git a/src/obj/NiLODNode.cpp b/src/obj/NiLODNode.cpp index 12ac8a6be15b6d689990568d2e3536903d4d29fa..68bc31706ce14a2164c87cbf6cf89a7379ea345c 100644 --- a/src/obj/NiLODNode.cpp +++ b/src/obj/NiLODNode.cpp @@ -60,3 +60,27 @@ Ref<NiLODData > NiLODNode::GetLODLevelData() const { void NiLODNode::SetLODLevelData( Ref<NiLODData > value ) { lodLevelData = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiLODNode"] = NiLODNode::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiLODNode::Create() { + return new NiLODNode; +} diff --git a/src/obj/NiLight.cpp b/src/obj/NiLight.cpp index de7f056e0983d2c547415e812e89b4b6941ab0f6..1eca70907b044be947f38ffd3022ca24a50cf7e6 100644 --- a/src/obj/NiLight.cpp +++ b/src/obj/NiLight.cpp @@ -66,3 +66,27 @@ Color3 NiLight::GetSpecularColor() const { void NiLight::SetSpecularColor( Color3 value ) { specularColor = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiLight"] = NiLight::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiLight::Create() { + return new NiLight; +} diff --git a/src/obj/NiLightColorController.cpp b/src/obj/NiLightColorController.cpp index cf4e3e78b55b9e30aae25d0c7ccf4ac4514828e9..582d52c9d306a76a38e89d8a7d06598f32bbbe4c 100644 --- a/src/obj/NiLightColorController.cpp +++ b/src/obj/NiLightColorController.cpp @@ -52,3 +52,27 @@ Ref<NiPoint3Interpolator > NiLightColorController::GetInterpolator() const { void NiLightColorController::SetInterpolator( NiPoint3Interpolator * value ) { interpolator = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiLightColorController"] = NiLightColorController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiLightColorController::Create() { + return new NiLightColorController; +} diff --git a/src/obj/NiLightDimmerController.cpp b/src/obj/NiLightDimmerController.cpp index 7d1b77dc1e051f54d88a9b64c46ec455cda6c8a5..4a5f8a003eab3f41c80ad6b0f8e71a91df095ef8 100644 --- a/src/obj/NiLightDimmerController.cpp +++ b/src/obj/NiLightDimmerController.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiLightDimmerController::GetRefs() const { const Type & NiLightDimmerController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiLightDimmerController"] = NiLightDimmerController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiLightDimmerController::Create() { + return new NiLightDimmerController; +} diff --git a/src/obj/NiLookAtController.cpp b/src/obj/NiLookAtController.cpp index 17d0fc48c061fe22e72a7b074bfe733a7046a6cf..3609893b88ad1ce31d5d0576d6d396f0d6921528 100644 --- a/src/obj/NiLookAtController.cpp +++ b/src/obj/NiLookAtController.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiLookAtController::GetRefs() const { const Type & NiLookAtController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiLookAtController"] = NiLookAtController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiLookAtController::Create() { + return new NiLookAtController; +} diff --git a/src/obj/NiLookAtInterpolator.cpp b/src/obj/NiLookAtInterpolator.cpp index f056c64adeacc4c846a96bbbca3f07524bef59d0..55cccaef3c1bf9fd70d5e3bc0805cd523d1fa97a 100644 --- a/src/obj/NiLookAtInterpolator.cpp +++ b/src/obj/NiLookAtInterpolator.cpp @@ -69,3 +69,27 @@ float NiLookAtInterpolator::GetScale() const { void NiLookAtInterpolator::SetScale( float value ) { scale = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiLookAtInterpolator"] = NiLookAtInterpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiLookAtInterpolator::Create() { + return new NiLookAtInterpolator; +} diff --git a/src/obj/NiMaterialColorController.cpp b/src/obj/NiMaterialColorController.cpp index f4dd83303e2a32fec51ac6ad82d12b2ae0d62866..77d2d132f8aab2f0a3e18a05cf10a76f6edaadb4 100644 --- a/src/obj/NiMaterialColorController.cpp +++ b/src/obj/NiMaterialColorController.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiMaterialColorController::GetRefs() const { const Type & NiMaterialColorController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiMaterialColorController"] = NiMaterialColorController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiMaterialColorController::Create() { + return new NiMaterialColorController; +} diff --git a/src/obj/NiMaterialProperty.cpp b/src/obj/NiMaterialProperty.cpp index 66142652aaf043a6f41740e11392c42db719e22c..2a0802aaba65647f90b8de326577c498e3efa400 100644 --- a/src/obj/NiMaterialProperty.cpp +++ b/src/obj/NiMaterialProperty.cpp @@ -90,3 +90,27 @@ Color3 NiMaterialProperty::GetSpecularColor() const { void NiMaterialProperty::SetSpecularColor( const Color3 & n ) { specularColor = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiMaterialProperty"] = NiMaterialProperty::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiMaterialProperty::Create() { + return new NiMaterialProperty; +} diff --git a/src/obj/NiMeshPSysData.cpp b/src/obj/NiMeshPSysData.cpp index 9866b03c09bcbf660f4eaeca32a3a8ebaa127cc5..910606e308a54e051eb6a199acb4201ee09adab7 100644 --- a/src/obj/NiMeshPSysData.cpp +++ b/src/obj/NiMeshPSysData.cpp @@ -36,3 +36,27 @@ list<NiObjectRef> NiMeshPSysData::GetRefs() const { const Type & NiMeshPSysData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiMeshPSysData"] = NiMeshPSysData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiMeshPSysData::Create() { + return new NiMeshPSysData; +} diff --git a/src/obj/NiMeshParticleSystem.cpp b/src/obj/NiMeshParticleSystem.cpp index 2933f997b3d5948dc368b8d6a8abb67b02415f5b..b579b036a28ef9eb388e30504ebd7c7d0ddbf2a5 100644 --- a/src/obj/NiMeshParticleSystem.cpp +++ b/src/obj/NiMeshParticleSystem.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiMeshParticleSystem::GetRefs() const { const Type & NiMeshParticleSystem::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiMeshParticleSystem"] = NiMeshParticleSystem::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiMeshParticleSystem::Create() { + return new NiMeshParticleSystem; +} diff --git a/src/obj/NiMorphData.cpp b/src/obj/NiMorphData.cpp index d395af2efe170ae7364e7e6d3b9b57200b5949ce..41922c7d039d98b16ddae339ab78fc6eb63b45c4 100644 --- a/src/obj/NiMorphData.cpp +++ b/src/obj/NiMorphData.cpp @@ -90,3 +90,27 @@ void NiMorphData::SetMorphVerts( int n, const vector<Vector3> & in ) { //It's the right size, so go ahead and set it morphs[n].vectors = in; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiMorphData"] = NiMorphData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiMorphData::Create() { + return new NiMorphData; +} diff --git a/src/obj/NiMultiTargetTransformController.cpp b/src/obj/NiMultiTargetTransformController.cpp index e1e5d6b34e91420a761f6357440a0bbb90a2e8b4..383ba7e8bf73669fd628b7b445fda9a7a29808f6 100644 --- a/src/obj/NiMultiTargetTransformController.cpp +++ b/src/obj/NiMultiTargetTransformController.cpp @@ -54,3 +54,27 @@ void NiMultiTargetTransformController::SetExtraTargets( const vector<NiNodeRef>& extraTargets.push_back( value[i] ); extraTargets.erase(std::remove(extraTargets.begin(), extraTargets.end(), (NiNode*)NULL), extraTargets.end()); } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiMultiTargetTransformController"] = NiMultiTargetTransformController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiMultiTargetTransformController::Create() { + return new NiMultiTargetTransformController; +} diff --git a/src/obj/NiNode.cpp b/src/obj/NiNode.cpp index b35f136a821644ec8aac824849693de1af4bb9ce..fb30eb75e569008d17c78ed5e96639111482a74e 100644 --- a/src/obj/NiNode.cpp +++ b/src/obj/NiNode.cpp @@ -274,3 +274,27 @@ bool NiNode::IsSplitMeshProxy() const { //Made it all the way through the loop without returning false return true; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiNode"] = NiNode::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiNode::Create() { + return new NiNode; +} diff --git a/src/obj/NiObject.cpp b/src/obj/NiObject.cpp index 351a6b7c61358566513cc2aeff3b1f7a71c2bcdb..5819589d743948c439175f5162f2686874a31f40 100644 --- a/src/obj/NiObject.cpp +++ b/src/obj/NiObject.cpp @@ -99,3 +99,28 @@ const Type & NiObject::GetType() const { unsigned int NiObject::GetNumRefs() { return _ref_count; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiObject"] = NiObject::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiObject::Create() { + return new NiObject; +} + diff --git a/src/obj/NiObjectNET.cpp b/src/obj/NiObjectNET.cpp index 205a45a0a4b3005a079fa22b8656e104586e3c87..89bfd506e0573c8208dc55e237a87e39ee45167f 100644 --- a/src/obj/NiObjectNET.cpp +++ b/src/obj/NiObjectNET.cpp @@ -187,3 +187,27 @@ list< Ref<NiTimeController> > NiObjectNET::GetControllers() const { const Type & NiObjectNET::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiObjectNET"] = NiObjectNET::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiObjectNET::Create() { + return new NiObjectNET; +} diff --git a/src/obj/NiPSysAgeDeathModifier.cpp b/src/obj/NiPSysAgeDeathModifier.cpp index 2d1f92b0ec3ee8947dac362c82e25e1c7099cdbb..492f560196cda3414c9a7140489650b92fde5978 100644 --- a/src/obj/NiPSysAgeDeathModifier.cpp +++ b/src/obj/NiPSysAgeDeathModifier.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiPSysAgeDeathModifier::GetRefs() const { const Type & NiPSysAgeDeathModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysAgeDeathModifier"] = NiPSysAgeDeathModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysAgeDeathModifier::Create() { + return new NiPSysAgeDeathModifier; +} diff --git a/src/obj/NiPSysBombModifier.cpp b/src/obj/NiPSysBombModifier.cpp index 2088462644021ca289ed774f369e6ef0e1768ec1..0ee4e8d47efe7cd6435fff026eb86631b0241460 100644 --- a/src/obj/NiPSysBombModifier.cpp +++ b/src/obj/NiPSysBombModifier.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiPSysBombModifier::GetRefs() const { const Type & NiPSysBombModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysBombModifier"] = NiPSysBombModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysBombModifier::Create() { + return new NiPSysBombModifier; +} diff --git a/src/obj/NiPSysBoundUpdateModifier.cpp b/src/obj/NiPSysBoundUpdateModifier.cpp index ab9ea44fb21eb04971ce2b087d701eff775c0b55..900cb7fb8469bf49fb80f8856731871d99e44664 100644 --- a/src/obj/NiPSysBoundUpdateModifier.cpp +++ b/src/obj/NiPSysBoundUpdateModifier.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysBoundUpdateModifier::GetRefs() const { const Type & NiPSysBoundUpdateModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysBoundUpdateModifier"] = NiPSysBoundUpdateModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysBoundUpdateModifier::Create() { + return new NiPSysBoundUpdateModifier; +} diff --git a/src/obj/NiPSysBoxEmitter.cpp b/src/obj/NiPSysBoxEmitter.cpp index 4c45597c0cd00620db28a2cf7135f5db883ec5ff..0c8eed960a408f543fb3353560af42f4bb07c930 100644 --- a/src/obj/NiPSysBoxEmitter.cpp +++ b/src/obj/NiPSysBoxEmitter.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysBoxEmitter::GetRefs() const { const Type & NiPSysBoxEmitter::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysBoxEmitter"] = NiPSysBoxEmitter::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysBoxEmitter::Create() { + return new NiPSysBoxEmitter; +} diff --git a/src/obj/NiPSysColliderManager.cpp b/src/obj/NiPSysColliderManager.cpp index e5b585c8573414e90e4b59b3aece3563c05aa9fd..baea4aa14a060c9fd854ca6b464f652a6a433be9 100644 --- a/src/obj/NiPSysColliderManager.cpp +++ b/src/obj/NiPSysColliderManager.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiPSysColliderManager::GetRefs() const { const Type & NiPSysColliderManager::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysColliderManager"] = NiPSysColliderManager::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysColliderManager::Create() { + return new NiPSysColliderManager; +} diff --git a/src/obj/NiPSysColorModifier.cpp b/src/obj/NiPSysColorModifier.cpp index 24ff666c75a2d074e582aadea63fb9269024da27..41770333fc11b0c39718ac5cf69100bc2bdef6e9 100644 --- a/src/obj/NiPSysColorModifier.cpp +++ b/src/obj/NiPSysColorModifier.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiPSysColorModifier::GetRefs() const { const Type & NiPSysColorModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysColorModifier"] = NiPSysColorModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysColorModifier::Create() { + return new NiPSysColorModifier; +} diff --git a/src/obj/NiPSysCylinderEmitter.cpp b/src/obj/NiPSysCylinderEmitter.cpp index 1e77b2071a17f78549fd886a73252942cfab8bb4..0f97a055c4eff03dbe3d5415be83d36476b796a0 100644 --- a/src/obj/NiPSysCylinderEmitter.cpp +++ b/src/obj/NiPSysCylinderEmitter.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysCylinderEmitter::GetRefs() const { const Type & NiPSysCylinderEmitter::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysCylinderEmitter"] = NiPSysCylinderEmitter::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysCylinderEmitter::Create() { + return new NiPSysCylinderEmitter; +} diff --git a/src/obj/NiPSysData.cpp b/src/obj/NiPSysData.cpp index 5d3259685e0b36806400d450903a1b38e1c0ad22..0b82f19c6e8ffe21314cd82bb89b219a8071a232 100644 --- a/src/obj/NiPSysData.cpp +++ b/src/obj/NiPSysData.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysData::GetRefs() const { const Type & NiPSysData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysData"] = NiPSysData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysData::Create() { + return new NiPSysData; +} diff --git a/src/obj/NiPSysDragModifier.cpp b/src/obj/NiPSysDragModifier.cpp index c69fab7afba9f7b02e1c885d6e6c005b2816496d..79a9b67ac36173968e999606cd0bfd71f90be4f1 100644 --- a/src/obj/NiPSysDragModifier.cpp +++ b/src/obj/NiPSysDragModifier.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiPSysDragModifier::GetRefs() const { const Type & NiPSysDragModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysDragModifier"] = NiPSysDragModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysDragModifier::Create() { + return new NiPSysDragModifier; +} diff --git a/src/obj/NiPSysEmitter.cpp b/src/obj/NiPSysEmitter.cpp index a7416fb483b0a8fedd3394fcf652911f1091f78d..4ad0f702ca5bded81854e2796eff4299aee8c620 100644 --- a/src/obj/NiPSysEmitter.cpp +++ b/src/obj/NiPSysEmitter.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysEmitter::GetRefs() const { const Type & NiPSysEmitter::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysEmitter"] = NiPSysEmitter::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysEmitter::Create() { + return new NiPSysEmitter; +} diff --git a/src/obj/NiPSysEmitterCtlr.cpp b/src/obj/NiPSysEmitterCtlr.cpp index d33939b75b12c9caefb39300c40f63012852ab9d..80861e3fd262d7b380af23761267abfdc99e18ce 100644 --- a/src/obj/NiPSysEmitterCtlr.cpp +++ b/src/obj/NiPSysEmitterCtlr.cpp @@ -52,3 +52,27 @@ Ref<NiInterpolator > NiPSysEmitterCtlr::GetVisibilityInterpolator() const { void NiPSysEmitterCtlr::SetVisibilityInterpolator( NiInterpolator * value ) { visibilityInterpolator = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysEmitterCtlr"] = NiPSysEmitterCtlr::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysEmitterCtlr::Create() { + return new NiPSysEmitterCtlr; +} diff --git a/src/obj/NiPSysEmitterCtlrData.cpp b/src/obj/NiPSysEmitterCtlrData.cpp index cac4c441cb4df7ed8589f0feb171656cd7fe86d1..dbe03d856a36da5a70581d90b424ed27977b694e 100644 --- a/src/obj/NiPSysEmitterCtlrData.cpp +++ b/src/obj/NiPSysEmitterCtlrData.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiPSysEmitterCtlrData::GetRefs() const { const Type & NiPSysEmitterCtlrData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysEmitterCtlrData"] = NiPSysEmitterCtlrData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysEmitterCtlrData::Create() { + return new NiPSysEmitterCtlrData; +} diff --git a/src/obj/NiPSysEmitterDeclinationCtlr.cpp b/src/obj/NiPSysEmitterDeclinationCtlr.cpp index a9ce70dd859a1de40c2f799422f892d83880ebfd..eb4c215b29f23f87d75be70be1d86dcc88ee9aa0 100644 --- a/src/obj/NiPSysEmitterDeclinationCtlr.cpp +++ b/src/obj/NiPSysEmitterDeclinationCtlr.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysEmitterDeclinationCtlr::GetRefs() const { const Type & NiPSysEmitterDeclinationCtlr::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysEmitterDeclinationCtlr"] = NiPSysEmitterDeclinationCtlr::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysEmitterDeclinationCtlr::Create() { + return new NiPSysEmitterDeclinationCtlr; +} diff --git a/src/obj/NiPSysEmitterDeclinationVarCtlr.cpp b/src/obj/NiPSysEmitterDeclinationVarCtlr.cpp index 2da4240b57c5ba676b62aa67dd1ce5e60a997b8d..3c1d87e17a5ea0ad1e8789b672f4f77ee41a0feb 100644 --- a/src/obj/NiPSysEmitterDeclinationVarCtlr.cpp +++ b/src/obj/NiPSysEmitterDeclinationVarCtlr.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysEmitterDeclinationVarCtlr::GetRefs() const { const Type & NiPSysEmitterDeclinationVarCtlr::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysEmitterDeclinationVarCtlr"] = NiPSysEmitterDeclinationVarCtlr::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysEmitterDeclinationVarCtlr::Create() { + return new NiPSysEmitterDeclinationVarCtlr; +} diff --git a/src/obj/NiPSysEmitterInitialRadiusCtlr.cpp b/src/obj/NiPSysEmitterInitialRadiusCtlr.cpp index 4422162ae49ca49bd38ec3b275cde2936c16d252..6a5f0855f035eb0b5bc41647c184fc0923e8baa6 100644 --- a/src/obj/NiPSysEmitterInitialRadiusCtlr.cpp +++ b/src/obj/NiPSysEmitterInitialRadiusCtlr.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysEmitterInitialRadiusCtlr::GetRefs() const { const Type & NiPSysEmitterInitialRadiusCtlr::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysEmitterInitialRadiusCtlr"] = NiPSysEmitterInitialRadiusCtlr::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysEmitterInitialRadiusCtlr::Create() { + return new NiPSysEmitterInitialRadiusCtlr; +} diff --git a/src/obj/NiPSysEmitterLifeSpanCtlr.cpp b/src/obj/NiPSysEmitterLifeSpanCtlr.cpp index 2a6196dc65df29ee834f3b14dfd392b9be2d4e1e..5c66e254f3016763be758f7ed1212270ced0569f 100644 --- a/src/obj/NiPSysEmitterLifeSpanCtlr.cpp +++ b/src/obj/NiPSysEmitterLifeSpanCtlr.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiPSysEmitterLifeSpanCtlr::GetRefs() const { const Type & NiPSysEmitterLifeSpanCtlr::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysEmitterLifeSpanCtlr"] = NiPSysEmitterLifeSpanCtlr::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysEmitterLifeSpanCtlr::Create() { + return new NiPSysEmitterLifeSpanCtlr; +} diff --git a/src/obj/NiPSysEmitterSpeedCtlr.cpp b/src/obj/NiPSysEmitterSpeedCtlr.cpp index 7b659990d189f76f85bbc06d1742660d2dad381f..ca334df229b8d9fc4f91d1b9758bc783ea3e4c94 100644 --- a/src/obj/NiPSysEmitterSpeedCtlr.cpp +++ b/src/obj/NiPSysEmitterSpeedCtlr.cpp @@ -36,3 +36,27 @@ list<NiObjectRef> NiPSysEmitterSpeedCtlr::GetRefs() const { const Type & NiPSysEmitterSpeedCtlr::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysEmitterSpeedCtlr"] = NiPSysEmitterSpeedCtlr::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysEmitterSpeedCtlr::Create() { + return new NiPSysEmitterSpeedCtlr; +} diff --git a/src/obj/NiPSysGravityModifier.cpp b/src/obj/NiPSysGravityModifier.cpp index 449e2847a0727b3938f1bb7f40971440d8b8134b..92b393b2d071ec829cfc5f6b2fb69ee3db823f18 100644 --- a/src/obj/NiPSysGravityModifier.cpp +++ b/src/obj/NiPSysGravityModifier.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiPSysGravityModifier::GetRefs() const { const Type & NiPSysGravityModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysGravityModifier"] = NiPSysGravityModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysGravityModifier::Create() { + return new NiPSysGravityModifier; +} diff --git a/src/obj/NiPSysGravityStrengthCtlr.cpp b/src/obj/NiPSysGravityStrengthCtlr.cpp index 2787ae4c755471da6a6603478d06a1128e9951f1..8a80bd2038c32f07fbc6ebab731726e7bb044842 100644 --- a/src/obj/NiPSysGravityStrengthCtlr.cpp +++ b/src/obj/NiPSysGravityStrengthCtlr.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiPSysGravityStrengthCtlr::GetRefs() const { const Type & NiPSysGravityStrengthCtlr::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysGravityStrengthCtlr"] = NiPSysGravityStrengthCtlr::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysGravityStrengthCtlr::Create() { + return new NiPSysGravityStrengthCtlr; +} diff --git a/src/obj/NiPSysGrowFadeModifier.cpp b/src/obj/NiPSysGrowFadeModifier.cpp index f2533a3e79f62c50302e07129cdbf91aa0e0514a..60e1b1c61175eacdced75214598c37f9935e13b8 100644 --- a/src/obj/NiPSysGrowFadeModifier.cpp +++ b/src/obj/NiPSysGrowFadeModifier.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysGrowFadeModifier::GetRefs() const { const Type & NiPSysGrowFadeModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysGrowFadeModifier"] = NiPSysGrowFadeModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysGrowFadeModifier::Create() { + return new NiPSysGrowFadeModifier; +} diff --git a/src/obj/NiPSysMeshEmitter.cpp b/src/obj/NiPSysMeshEmitter.cpp index 1f9cc452016bf978b022edbf34ce33086008a07c..e8810b7abcecbf7130787b8c3ba2eb2e6d5b4440 100644 --- a/src/obj/NiPSysMeshEmitter.cpp +++ b/src/obj/NiPSysMeshEmitter.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiPSysMeshEmitter::GetRefs() const { const Type & NiPSysMeshEmitter::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysMeshEmitter"] = NiPSysMeshEmitter::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysMeshEmitter::Create() { + return new NiPSysMeshEmitter; +} diff --git a/src/obj/NiPSysMeshUpdateModifier.cpp b/src/obj/NiPSysMeshUpdateModifier.cpp index 2bca31c271bcbd34b1380b93e66f568b956b5413..ce595bab36eab9fe1390b732098fa81e6c512211 100644 --- a/src/obj/NiPSysMeshUpdateModifier.cpp +++ b/src/obj/NiPSysMeshUpdateModifier.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiPSysMeshUpdateModifier::GetRefs() const { const Type & NiPSysMeshUpdateModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysMeshUpdateModifier"] = NiPSysMeshUpdateModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysMeshUpdateModifier::Create() { + return new NiPSysMeshUpdateModifier; +} diff --git a/src/obj/NiPSysModifier.cpp b/src/obj/NiPSysModifier.cpp index 572b6a3e7610ec248f11cac55dc5d6e27662941e..13f5bf1cfee67725685f0f9defc2609a83e3e902 100644 --- a/src/obj/NiPSysModifier.cpp +++ b/src/obj/NiPSysModifier.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiPSysModifier::GetRefs() const { const Type & NiPSysModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysModifier"] = NiPSysModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysModifier::Create() { + return new NiPSysModifier; +} diff --git a/src/obj/NiPSysModifierActiveCtlr.cpp b/src/obj/NiPSysModifierActiveCtlr.cpp index db3d62ffb2d171f5b2beac45c2960dc9502c8192..591efcfb8ffd263ac2c0712ec10c2dd2c14ad8a2 100644 --- a/src/obj/NiPSysModifierActiveCtlr.cpp +++ b/src/obj/NiPSysModifierActiveCtlr.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysModifierActiveCtlr::GetRefs() const { const Type & NiPSysModifierActiveCtlr::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysModifierActiveCtlr"] = NiPSysModifierActiveCtlr::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysModifierActiveCtlr::Create() { + return new NiPSysModifierActiveCtlr; +} diff --git a/src/obj/NiPSysPlanarCollider.cpp b/src/obj/NiPSysPlanarCollider.cpp index 907a121cc10f28849b4ddc72d9879e0b988aaf12..6c7df074b4d2e0a9d4b0d6cfb56319bbcbffa02a 100644 --- a/src/obj/NiPSysPlanarCollider.cpp +++ b/src/obj/NiPSysPlanarCollider.cpp @@ -37,3 +37,27 @@ list<NiObjectRef> NiPSysPlanarCollider::GetRefs() const { const Type & NiPSysPlanarCollider::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysPlanarCollider"] = NiPSysPlanarCollider::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysPlanarCollider::Create() { + return new NiPSysPlanarCollider; +} diff --git a/src/obj/NiPSysPositionModifier.cpp b/src/obj/NiPSysPositionModifier.cpp index c0c46187be3b94b7efb405416b7e3d1088449304..837d54384dd2bfc0e1b1851264802db3cb76e9f4 100644 --- a/src/obj/NiPSysPositionModifier.cpp +++ b/src/obj/NiPSysPositionModifier.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysPositionModifier::GetRefs() const { const Type & NiPSysPositionModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysPositionModifier"] = NiPSysPositionModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysPositionModifier::Create() { + return new NiPSysPositionModifier; +} diff --git a/src/obj/NiPSysResetOnLoopCtlr.cpp b/src/obj/NiPSysResetOnLoopCtlr.cpp index 53a6164515b94c38b6b04dc6df4aaf2503159a62..be072f5526dc44f25505f8b33f15a3a4ff03aa1b 100644 --- a/src/obj/NiPSysResetOnLoopCtlr.cpp +++ b/src/obj/NiPSysResetOnLoopCtlr.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysResetOnLoopCtlr::GetRefs() const { const Type & NiPSysResetOnLoopCtlr::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysResetOnLoopCtlr"] = NiPSysResetOnLoopCtlr::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysResetOnLoopCtlr::Create() { + return new NiPSysResetOnLoopCtlr; +} diff --git a/src/obj/NiPSysRotationModifier.cpp b/src/obj/NiPSysRotationModifier.cpp index 39c2c447e28b94c832669d2491d16389c7c0adb8..28aa6f1fe547cfa68faa7acd741a5c1eaccd6004 100644 --- a/src/obj/NiPSysRotationModifier.cpp +++ b/src/obj/NiPSysRotationModifier.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysRotationModifier::GetRefs() const { const Type & NiPSysRotationModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysRotationModifier"] = NiPSysRotationModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysRotationModifier::Create() { + return new NiPSysRotationModifier; +} diff --git a/src/obj/NiPSysSpawnModifier.cpp b/src/obj/NiPSysSpawnModifier.cpp index 0750838c53312ec0330de761e3450dd90a3dcfaa..7e440e6e9f68dfd2a40cbbf62cd545121fee01a2 100644 --- a/src/obj/NiPSysSpawnModifier.cpp +++ b/src/obj/NiPSysSpawnModifier.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysSpawnModifier::GetRefs() const { const Type & NiPSysSpawnModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysSpawnModifier"] = NiPSysSpawnModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysSpawnModifier::Create() { + return new NiPSysSpawnModifier; +} diff --git a/src/obj/NiPSysSphereEmitter.cpp b/src/obj/NiPSysSphereEmitter.cpp index cc554fa7fb7133aad59028f63c17b9ce2b7e2025..dc4f7e0d6be0f55c5768fb7ab08276a85c47ab44 100644 --- a/src/obj/NiPSysSphereEmitter.cpp +++ b/src/obj/NiPSysSphereEmitter.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysSphereEmitter::GetRefs() const { const Type & NiPSysSphereEmitter::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysSphereEmitter"] = NiPSysSphereEmitter::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysSphereEmitter::Create() { + return new NiPSysSphereEmitter; +} diff --git a/src/obj/NiPSysUpdateCtlr.cpp b/src/obj/NiPSysUpdateCtlr.cpp index 24f8c5f810bb58e57b9ab4383ee2f7ae9f31331c..b7a42f75f1bcc03cf0a114ea289b641939940ab7 100644 --- a/src/obj/NiPSysUpdateCtlr.cpp +++ b/src/obj/NiPSysUpdateCtlr.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPSysUpdateCtlr::GetRefs() const { const Type & NiPSysUpdateCtlr::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysUpdateCtlr"] = NiPSysUpdateCtlr::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysUpdateCtlr::Create() { + return new NiPSysUpdateCtlr; +} diff --git a/src/obj/NiPSysVolumeEmitter.cpp b/src/obj/NiPSysVolumeEmitter.cpp index f62d2b968efd898c07da0c49f980d1f7f3ecfb36..4e1bbb061e0258ca025f02a05a8e0d076f7851e6 100644 --- a/src/obj/NiPSysVolumeEmitter.cpp +++ b/src/obj/NiPSysVolumeEmitter.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiPSysVolumeEmitter::GetRefs() const { const Type & NiPSysVolumeEmitter::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPSysVolumeEmitter"] = NiPSysVolumeEmitter::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPSysVolumeEmitter::Create() { + return new NiPSysVolumeEmitter; +} diff --git a/src/obj/NiPalette.cpp b/src/obj/NiPalette.cpp index 2445fcc6db6b0118eb18bf47697f57ae76f44387..c917535ef3d078e4b66e7bc0b0dfc343d49d87ed 100644 --- a/src/obj/NiPalette.cpp +++ b/src/obj/NiPalette.cpp @@ -61,3 +61,27 @@ void NiPalette::SetPalette( const vector<Color4> & new_pal ) { palette[i][3] = int( new_pal[i].a * 255.0f ); } } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPalette"] = NiPalette::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPalette::Create() { + return new NiPalette; +} diff --git a/src/obj/NiParticleBomb.cpp b/src/obj/NiParticleBomb.cpp index ebf148acac6975e185d56d707e24d17fb0133c10..1617099769adcb664a8e4936b0379e6749d7f1e2 100644 --- a/src/obj/NiParticleBomb.cpp +++ b/src/obj/NiParticleBomb.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiParticleBomb::GetRefs() const { const Type & NiParticleBomb::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiParticleBomb"] = NiParticleBomb::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiParticleBomb::Create() { + return new NiParticleBomb; +} diff --git a/src/obj/NiParticleColorModifier.cpp b/src/obj/NiParticleColorModifier.cpp index 75778265b15d24f4fd88073ad4a82eed871438b7..72475173e9118845da2c9ffe7cfb0b2fdf5d2bfa 100644 --- a/src/obj/NiParticleColorModifier.cpp +++ b/src/obj/NiParticleColorModifier.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiParticleColorModifier::GetRefs() const { const Type & NiParticleColorModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiParticleColorModifier"] = NiParticleColorModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiParticleColorModifier::Create() { + return new NiParticleColorModifier; +} diff --git a/src/obj/NiParticleGrowFade.cpp b/src/obj/NiParticleGrowFade.cpp index 4f5425fa13bd707cd30a5b62a84789e9dd13a17a..d810cdbd097106f8f3237da3d181ab6f5f499df2 100644 --- a/src/obj/NiParticleGrowFade.cpp +++ b/src/obj/NiParticleGrowFade.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiParticleGrowFade::GetRefs() const { const Type & NiParticleGrowFade::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiParticleGrowFade"] = NiParticleGrowFade::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiParticleGrowFade::Create() { + return new NiParticleGrowFade; +} diff --git a/src/obj/NiParticleMeshModifier.cpp b/src/obj/NiParticleMeshModifier.cpp index bcc2a276b56ec248f11bdfea7977950df6e7bf74..e1461ae0b5e2575e9fe847720270556e3226dc05 100644 --- a/src/obj/NiParticleMeshModifier.cpp +++ b/src/obj/NiParticleMeshModifier.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiParticleMeshModifier::GetRefs() const { const Type & NiParticleMeshModifier::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiParticleMeshModifier"] = NiParticleMeshModifier::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiParticleMeshModifier::Create() { + return new NiParticleMeshModifier; +} diff --git a/src/obj/NiParticleMeshes.cpp b/src/obj/NiParticleMeshes.cpp index 1b7573b56677e92e4161692562bb3ac9c7b8c764..6eae566eb54e476435d8d24cbab60da000eea93d 100644 --- a/src/obj/NiParticleMeshes.cpp +++ b/src/obj/NiParticleMeshes.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiParticleMeshes::GetRefs() const { const Type & NiParticleMeshes::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiParticleMeshes"] = NiParticleMeshes::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiParticleMeshes::Create() { + return new NiParticleMeshes; +} diff --git a/src/obj/NiParticleMeshesData.cpp b/src/obj/NiParticleMeshesData.cpp index 0d916e389b007ccf04b7071444767dbe999e375e..48ceb6c03eb0a1f9c683f5166ef4752921c90d60 100644 --- a/src/obj/NiParticleMeshesData.cpp +++ b/src/obj/NiParticleMeshesData.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiParticleMeshesData::GetRefs() const { const Type & NiParticleMeshesData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiParticleMeshesData"] = NiParticleMeshesData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiParticleMeshesData::Create() { + return new NiParticleMeshesData; +} diff --git a/src/obj/NiParticleRotation.cpp b/src/obj/NiParticleRotation.cpp index bc5a1f84e9c448c1a1841ba27f6d5abf6057e6f7..4a64b39d4db093edcdfa8295002143e7b5b4532c 100644 --- a/src/obj/NiParticleRotation.cpp +++ b/src/obj/NiParticleRotation.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiParticleRotation::GetRefs() const { const Type & NiParticleRotation::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiParticleRotation"] = NiParticleRotation::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiParticleRotation::Create() { + return new NiParticleRotation; +} diff --git a/src/obj/NiParticleSystem.cpp b/src/obj/NiParticleSystem.cpp index c7435bbac66f183c9dbdfa29f167fb7be2178c25..2d1c3d42a7f7c1b59311edadcbbbc15439c983fd 100644 --- a/src/obj/NiParticleSystem.cpp +++ b/src/obj/NiParticleSystem.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiParticleSystem::GetRefs() const { const Type & NiParticleSystem::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiParticleSystem"] = NiParticleSystem::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiParticleSystem::Create() { + return new NiParticleSystem; +} diff --git a/src/obj/NiParticleSystemController.cpp b/src/obj/NiParticleSystemController.cpp index 6c9ef36dd7bb24f242b54f80df6a58aff0d0f907..2fe0cb6034d01bb7173f19e9fa809000885f7d0a 100644 --- a/src/obj/NiParticleSystemController.cpp +++ b/src/obj/NiParticleSystemController.cpp @@ -37,3 +37,27 @@ list<NiObjectRef> NiParticleSystemController::GetRefs() const { const Type & NiParticleSystemController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiParticleSystemController"] = NiParticleSystemController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiParticleSystemController::Create() { + return new NiParticleSystemController; +} diff --git a/src/obj/NiParticles.cpp b/src/obj/NiParticles.cpp index 47ed1bc9ff494a076d0ba41af0a297530e5250f9..95304a572eccad2a17ec9cad4461b0298fa55c80 100644 --- a/src/obj/NiParticles.cpp +++ b/src/obj/NiParticles.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiParticles::GetRefs() const { const Type & NiParticles::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiParticles"] = NiParticles::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiParticles::Create() { + return new NiParticles; +} diff --git a/src/obj/NiParticlesData.cpp b/src/obj/NiParticlesData.cpp index 32e2d4a4683339fee82a675642cc26b3563351e8..41fdf33db7695c43e1b0d6d16fa125d35a85dcd7 100644 --- a/src/obj/NiParticlesData.cpp +++ b/src/obj/NiParticlesData.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiParticlesData::GetRefs() const { const Type & NiParticlesData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiParticlesData"] = NiParticlesData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiParticlesData::Create() { + return new NiParticlesData; +} diff --git a/src/obj/NiPathController.cpp b/src/obj/NiPathController.cpp index 09c8b748174dfaf9d8f47e635561ecc35bb89bb3..292b4623e7ed22808ed26f963545ab4eefb72c02 100644 --- a/src/obj/NiPathController.cpp +++ b/src/obj/NiPathController.cpp @@ -52,3 +52,27 @@ Ref<NiPosData> NiPathController::GetPosData() const { void NiPathController::SetPosData( NiPosData * n ) { posData = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPathController"] = NiPathController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPathController::Create() { + return new NiPathController; +} diff --git a/src/obj/NiPathInterpolator.cpp b/src/obj/NiPathInterpolator.cpp index 30d51b4d06d75979eb749cd59d47953757cc9f6b..0f5e205d6e549d4c05bc941a726fedbea7d1a2da 100644 --- a/src/obj/NiPathInterpolator.cpp +++ b/src/obj/NiPathInterpolator.cpp @@ -52,3 +52,27 @@ Ref<NiFloatData > NiPathInterpolator::GetFloatData() const { void NiPathInterpolator::SetFloatData( NiFloatData * value ) { floatData = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPathInterpolator"] = NiPathInterpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPathInterpolator::Create() { + return new NiPathInterpolator; +} diff --git a/src/obj/NiPixelData.cpp b/src/obj/NiPixelData.cpp index c5469bfebc6be7c20ee7b76e0a05985b02af936d..c5196bf1c4c9b4b01b007dd98c8c1fed280eef31 100644 --- a/src/obj/NiPixelData.cpp +++ b/src/obj/NiPixelData.cpp @@ -345,3 +345,27 @@ void NiPixelData::SetColors( const vector<Color4> & new_pixels, bool generate_mi } } } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPixelData"] = NiPixelData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPixelData::Create() { + return new NiPixelData; +} diff --git a/src/obj/NiPlanarCollider.cpp b/src/obj/NiPlanarCollider.cpp index 7023ec8c347f276827cc21c69683571544a3e924..8fc0d299873f4f6e0207ab9247312f8a46438778 100644 --- a/src/obj/NiPlanarCollider.cpp +++ b/src/obj/NiPlanarCollider.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiPlanarCollider::GetRefs() const { const Type & NiPlanarCollider::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPlanarCollider"] = NiPlanarCollider::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPlanarCollider::Create() { + return new NiPlanarCollider; +} diff --git a/src/obj/NiPoint3Interpolator.cpp b/src/obj/NiPoint3Interpolator.cpp index 76fecce4c69050c8ef010adc000e998deae372a5..a7f4e0ae02f23d4d5834b30d928cf435d5b5a535 100644 --- a/src/obj/NiPoint3Interpolator.cpp +++ b/src/obj/NiPoint3Interpolator.cpp @@ -51,3 +51,27 @@ Ref<NiPosData > NiPoint3Interpolator::GetData() const { void NiPoint3Interpolator::SetData( NiPosData * value ) { data = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPoint3Interpolator"] = NiPoint3Interpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPoint3Interpolator::Create() { + return new NiPoint3Interpolator; +} diff --git a/src/obj/NiPointLight.cpp b/src/obj/NiPointLight.cpp index 9c7249411067f8f209eca7de91cdfc05da50e521..d8320710fadf844b8b2364b04ca2de6ea140a9d0 100644 --- a/src/obj/NiPointLight.cpp +++ b/src/obj/NiPointLight.cpp @@ -58,3 +58,27 @@ float NiPointLight::GetQuadraticAttenuation() const { void NiPointLight::SetQuadraticAttenuation( float value ) { quadraticAttenuation = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPointLight"] = NiPointLight::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPointLight::Create() { + return new NiPointLight; +} diff --git a/src/obj/NiPosData.cpp b/src/obj/NiPosData.cpp index 7cc31e04bb27f405574c39341a0eb3998507361b..cc804ea51c310f3c5a13553eb1d6ea654c0a20a2 100644 --- a/src/obj/NiPosData.cpp +++ b/src/obj/NiPosData.cpp @@ -51,3 +51,27 @@ vector< Key<Vector3> > NiPosData::GetKeys() const { void NiPosData::SetKeys( vector< Key<Vector3> > const & keys ) { data.keys = keys; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiPosData"] = NiPosData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiPosData::Create() { + return new NiPosData; +} diff --git a/src/obj/NiProperty.cpp b/src/obj/NiProperty.cpp index d7c238063803b9bda3cf4bf960ee711534b8906f..ff746cc0244152c1d14424f533dc65b14b8c0e20 100644 --- a/src/obj/NiProperty.cpp +++ b/src/obj/NiProperty.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiProperty::GetRefs() const { const Type & NiProperty::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiProperty"] = NiProperty::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiProperty::Create() { + return new NiProperty; +} diff --git a/src/obj/NiRangeLODData.cpp b/src/obj/NiRangeLODData.cpp index d9906a49c287c24438bb5282465a736568c6beff..ee9b70a3f87005f64181da94fd30511d92cc57ef 100644 --- a/src/obj/NiRangeLODData.cpp +++ b/src/obj/NiRangeLODData.cpp @@ -51,3 +51,27 @@ vector<LODRange > NiRangeLODData::GetLODLevels() const { void NiRangeLODData::SetLODLevels( const vector<LODRange >& value ) { lodLevels = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiRangeLODData"] = NiRangeLODData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiRangeLODData::Create() { + return new NiRangeLODData; +} diff --git a/src/obj/NiRotatingParticles.cpp b/src/obj/NiRotatingParticles.cpp index 86bfc3474c7e24db0de9fb7d7b93eb99af4d5628..b4bc1e8c1546f905016d2fa4b9b6c21f4da310a1 100644 --- a/src/obj/NiRotatingParticles.cpp +++ b/src/obj/NiRotatingParticles.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiRotatingParticles::GetRefs() const { const Type & NiRotatingParticles::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiRotatingParticles"] = NiRotatingParticles::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiRotatingParticles::Create() { + return new NiRotatingParticles; +} diff --git a/src/obj/NiRotatingParticlesData.cpp b/src/obj/NiRotatingParticlesData.cpp index f31a2c91bfd388f4063ee5f7e37cc770ae779316..3d38c70a103d43234595b899829fc4c1a7735abb 100644 --- a/src/obj/NiRotatingParticlesData.cpp +++ b/src/obj/NiRotatingParticlesData.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiRotatingParticlesData::GetRefs() const { const Type & NiRotatingParticlesData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiRotatingParticlesData"] = NiRotatingParticlesData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiRotatingParticlesData::Create() { + return new NiRotatingParticlesData; +} diff --git a/src/obj/NiScreenLODData.cpp b/src/obj/NiScreenLODData.cpp index b6a0eb98dbdebb84616fbefc1eb5b972416686b6..5332056ef2001e3853ceda6eda36b5d8fb6e4456 100644 --- a/src/obj/NiScreenLODData.cpp +++ b/src/obj/NiScreenLODData.cpp @@ -74,3 +74,27 @@ vector<float > NiScreenLODData::GetProportionLevels() const { void NiScreenLODData::SetProportionLevels( const vector<float >& value ) { proportionLevels = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiScreenLODData"] = NiScreenLODData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiScreenLODData::Create() { + return new NiScreenLODData; +} diff --git a/src/obj/NiSequenceStreamHelper.cpp b/src/obj/NiSequenceStreamHelper.cpp index add79c3400c0f2f4b2c81fcbb3961955203dc6bf..534fa3d9141fa115f31dcbf1c9c32dde1f3cd8b4 100644 --- a/src/obj/NiSequenceStreamHelper.cpp +++ b/src/obj/NiSequenceStreamHelper.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiSequenceStreamHelper::GetRefs() const { const Type & NiSequenceStreamHelper::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiSequenceStreamHelper"] = NiSequenceStreamHelper::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiSequenceStreamHelper::Create() { + return new NiSequenceStreamHelper; +} diff --git a/src/obj/NiShadeProperty.cpp b/src/obj/NiShadeProperty.cpp index 8e6e3232ef14effc82d9e1d9b4dfe0813980c0d2..f9c99d9eaa48f62eba41a5048c662f5ff207ba73 100644 --- a/src/obj/NiShadeProperty.cpp +++ b/src/obj/NiShadeProperty.cpp @@ -42,3 +42,27 @@ unsigned short NiShadeProperty::GetFlags() const { void NiShadeProperty::SetFlags( unsigned short n ) { flags = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiShadeProperty"] = NiShadeProperty::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiShadeProperty::Create() { + return new NiShadeProperty; +} diff --git a/src/obj/NiSingleInterpolatorController.cpp b/src/obj/NiSingleInterpolatorController.cpp index f8ddeab05af6473e81beccc65e9e7823ce8b2ab5..b15a9da19a7bb77ed3cf7a31f712e0928c5f511e 100644 --- a/src/obj/NiSingleInterpolatorController.cpp +++ b/src/obj/NiSingleInterpolatorController.cpp @@ -43,3 +43,27 @@ Ref<NiInterpolator > NiSingleInterpolatorController::GetInterpolator() const { void NiSingleInterpolatorController::SetInterpolator( NiInterpolator * value ) { interpolator = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiSingleInterpolatorController"] = NiSingleInterpolatorController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiSingleInterpolatorController::Create() { + return new NiSingleInterpolatorController; +} diff --git a/src/obj/NiSkinData.cpp b/src/obj/NiSkinData.cpp index 897417b192eeaced95422f1c9c2d529140028760..3987496673c0b8a09cdb156a990186590a02817a 100644 --- a/src/obj/NiSkinData.cpp +++ b/src/obj/NiSkinData.cpp @@ -170,3 +170,27 @@ Ref<NiSkinPartition> NiSkinData::GetSkinPartition() const { void NiSkinData::SetSkinPartition( NiSkinPartition * value ) { skinPartition = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiSkinData"] = NiSkinData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiSkinData::Create() { + return new NiSkinData; +} diff --git a/src/obj/NiSkinInstance.cpp b/src/obj/NiSkinInstance.cpp index d4a9bb8360682115c598bc6fff6aa0d5f27e7d3b..11e510aa6158dc16d873314928d914abadc5a19d 100644 --- a/src/obj/NiSkinInstance.cpp +++ b/src/obj/NiSkinInstance.cpp @@ -135,3 +135,27 @@ unsigned int NiSkinInstance::GetBoneCount() const { Ref<NiNode> NiSkinInstance::GetSkeletonRoot() const { return skeletonRoot; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiSkinInstance"] = NiSkinInstance::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiSkinInstance::Create() { + return new NiSkinInstance; +} diff --git a/src/obj/NiSkinPartition.cpp b/src/obj/NiSkinPartition.cpp index c4c59c0ac783ef0050538c4de466c3f70f23cbe5..ff6a2e15daab28ef82501764bb32164acfee4328 100644 --- a/src/obj/NiSkinPartition.cpp +++ b/src/obj/NiSkinPartition.cpp @@ -715,3 +715,27 @@ NiSkinPartition::NiSkinPartition(Ref<NiTriBasedGeom> shape, int maxBonesPerParti } } } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiSkinPartition"] = NiSkinPartition::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiSkinPartition::Create() { + return new NiSkinPartition; +} diff --git a/src/obj/NiSourceTexture.cpp b/src/obj/NiSourceTexture.cpp index 7e2b318594737b0cb63e928f7028b4b9bf15aacb..f3bbfae8e538a3a4ebd2a51f24cdda71b2651246 100644 --- a/src/obj/NiSourceTexture.cpp +++ b/src/obj/NiSourceTexture.cpp @@ -95,3 +95,27 @@ AlphaFormat NiSourceTexture::GetAlphaFormat() const { void NiSourceTexture::SetAlphaFormat( AlphaFormat n ) { alphaFormat = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiSourceTexture"] = NiSourceTexture::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiSourceTexture::Create() { + return new NiSourceTexture; +} diff --git a/src/obj/NiSpecularProperty.cpp b/src/obj/NiSpecularProperty.cpp index 29c197f27afd0e5138672dad8d6abe2531ebb8a4..d443d57f56695ae2011d07f6c6fe297b5a629969 100644 --- a/src/obj/NiSpecularProperty.cpp +++ b/src/obj/NiSpecularProperty.cpp @@ -42,3 +42,27 @@ unsigned short NiSpecularProperty::GetFlags() const { void NiSpecularProperty::SetFlags( unsigned short n ) { flags = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiSpecularProperty"] = NiSpecularProperty::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiSpecularProperty::Create() { + return new NiSpecularProperty; +} diff --git a/src/obj/NiSphericalCollider.cpp b/src/obj/NiSphericalCollider.cpp index 157b92e36f474f9ee0731d00e5c853e94ea19771..665a818e8c634e0c5d6ef4afddb37c10a2bd1e71 100644 --- a/src/obj/NiSphericalCollider.cpp +++ b/src/obj/NiSphericalCollider.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiSphericalCollider::GetRefs() const { const Type & NiSphericalCollider::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiSphericalCollider"] = NiSphericalCollider::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiSphericalCollider::Create() { + return new NiSphericalCollider; +} diff --git a/src/obj/NiSpotLight.cpp b/src/obj/NiSpotLight.cpp index 5abbc835ad993641bc9098376a9a875c83786316..5aad6080b525e70966542d09a3c716717f677263 100644 --- a/src/obj/NiSpotLight.cpp +++ b/src/obj/NiSpotLight.cpp @@ -50,3 +50,27 @@ float NiSpotLight::GetExponent() const { void NiSpotLight::SetExponent( float value ) { exponent = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiSpotLight"] = NiSpotLight::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiSpotLight::Create() { + return new NiSpotLight; +} diff --git a/src/obj/NiStencilProperty.cpp b/src/obj/NiStencilProperty.cpp index fe245bbb9111902673f597d89cff5268b98e1b02..02a56416f5c15de681f3737d1bdb009428d596e5 100644 --- a/src/obj/NiStencilProperty.cpp +++ b/src/obj/NiStencilProperty.cpp @@ -106,3 +106,27 @@ FaceDrawMode NiStencilProperty::GetFaceDrawMode() const { void NiStencilProperty::SetFaceDrawMode(FaceDrawMode value) { drawMode = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiStencilProperty"] = NiStencilProperty::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiStencilProperty::Create() { + return new NiStencilProperty; +} diff --git a/src/obj/NiStringExtraData.cpp b/src/obj/NiStringExtraData.cpp index 86942535a3b8e244fb3a8d6da313c7d8a269cd0d..18c59a16af134295510a9fb179b99da7f7d9a764 100644 --- a/src/obj/NiStringExtraData.cpp +++ b/src/obj/NiStringExtraData.cpp @@ -43,3 +43,27 @@ void NiStringExtraData::SetData( const string & n ) { stringData = n; bytesRemaining = (unsigned int)(stringData.size()) + 4; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiStringExtraData"] = NiStringExtraData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiStringExtraData::Create() { + return new NiStringExtraData; +} diff --git a/src/obj/NiStringPalette.cpp b/src/obj/NiStringPalette.cpp index 4bc3e0db6e2a31e7573deee2feb9efd4e65592f3..7851687f3f020c8c79cca74876f52aed5d3e9671 100644 --- a/src/obj/NiStringPalette.cpp +++ b/src/obj/NiStringPalette.cpp @@ -76,3 +76,27 @@ unsigned int NiStringPalette::AddSubStr( const string & n ) { //Return the offset where the string was found or appended return offset; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiStringPalette"] = NiStringPalette::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiStringPalette::Create() { + return new NiStringPalette; +} diff --git a/src/obj/NiStringsExtraData.cpp b/src/obj/NiStringsExtraData.cpp index f0dc77686c2e3294cb02d74cf2bd7619239aa911..c12cfc59738a672faf9c642098fee89e021bb22b 100644 --- a/src/obj/NiStringsExtraData.cpp +++ b/src/obj/NiStringsExtraData.cpp @@ -43,3 +43,27 @@ void NiStringsExtraData::SetData( const vector<string> & n ) { numStrings = (unsigned int)(n.size()); data = n; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiStringsExtraData"] = NiStringsExtraData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiStringsExtraData::Create() { + return new NiStringsExtraData; +} diff --git a/src/obj/NiTextKeyExtraData.cpp b/src/obj/NiTextKeyExtraData.cpp index 780e1014cefce6653d553aacbc566acfbef361c4..469cfac3ad1b0e3737c123644fbb3e3bae397a32 100644 --- a/src/obj/NiTextKeyExtraData.cpp +++ b/src/obj/NiTextKeyExtraData.cpp @@ -42,3 +42,27 @@ vector< Key<string> > NiTextKeyExtraData::GetKeys() const { void NiTextKeyExtraData::SetKeys( vector< Key<string> > const & keys ) { textKeys = keys; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTextKeyExtraData"] = NiTextKeyExtraData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTextKeyExtraData::Create() { + return new NiTextKeyExtraData; +} diff --git a/src/obj/NiTextureEffect.cpp b/src/obj/NiTextureEffect.cpp index 9bf7a2e3186b9e10bde90a7a2df7e6e7a08abd3e..365fae1b43c8f8e3a9206a987ba4d1b7bf9fdc07 100644 --- a/src/obj/NiTextureEffect.cpp +++ b/src/obj/NiTextureEffect.cpp @@ -115,3 +115,27 @@ unsigned short NiTextureEffect::GetPs2K() const { void NiTextureEffect::SetPs2K( unsigned short value ) { ps2K = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTextureEffect"] = NiTextureEffect::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTextureEffect::Create() { + return new NiTextureEffect; +} diff --git a/src/obj/NiTextureModeProperty.cpp b/src/obj/NiTextureModeProperty.cpp index cc3ceb0e136409676b5982b3714a2f6b4d77fa45..cc31537c65c971b21674ac6411f70476f063c905 100644 --- a/src/obj/NiTextureModeProperty.cpp +++ b/src/obj/NiTextureModeProperty.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiTextureModeProperty::GetRefs() const { const Type & NiTextureModeProperty::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTextureModeProperty"] = NiTextureModeProperty::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTextureModeProperty::Create() { + return new NiTextureModeProperty; +} diff --git a/src/obj/NiTextureProperty.cpp b/src/obj/NiTextureProperty.cpp index e090cf5fb7f4e93484ab1b71ec50b23037635681..3a0dc37ec53bfb05d14d601f87be9fce16d4b27f 100644 --- a/src/obj/NiTextureProperty.cpp +++ b/src/obj/NiTextureProperty.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiTextureProperty::GetRefs() const { const Type & NiTextureProperty::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTextureProperty"] = NiTextureProperty::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTextureProperty::Create() { + return new NiTextureProperty; +} diff --git a/src/obj/NiTextureTransformController.cpp b/src/obj/NiTextureTransformController.cpp index 62d5eb71570b10568a913ba4bb4d9d036dbb243e..96a51fa0cb3802b316af3e0c12c308b43eac9e52 100644 --- a/src/obj/NiTextureTransformController.cpp +++ b/src/obj/NiTextureTransformController.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiTextureTransformController::GetRefs() const { const Type & NiTextureTransformController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTextureTransformController"] = NiTextureTransformController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTextureTransformController::Create() { + return new NiTextureTransformController; +} diff --git a/src/obj/NiTexturingProperty.cpp b/src/obj/NiTexturingProperty.cpp index 3e3f16199e9eaeb2c5fe71ee84e8bd60a57a59af..fd8dcb022eb05dca516e5f4f9ecf1adec1fa2bb2 100644 --- a/src/obj/NiTexturingProperty.cpp +++ b/src/obj/NiTexturingProperty.cpp @@ -245,3 +245,27 @@ void NiTexturingProperty::ClearTexture( int n ) { break; }; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTexturingProperty"] = NiTexturingProperty::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTexturingProperty::Create() { + return new NiTexturingProperty; +} diff --git a/src/obj/NiTimeController.cpp b/src/obj/NiTimeController.cpp index 7f3e4235331ffce4fd6b7fda2e164def0de8a960..6da5da594d9fcdd779db8c35ee5ec378b69ef0cf 100644 --- a/src/obj/NiTimeController.cpp +++ b/src/obj/NiTimeController.cpp @@ -91,3 +91,27 @@ float NiTimeController::GetStopTime() const { void NiTimeController::SetStopTime( float n ) { stopTime = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTimeController"] = NiTimeController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTimeController::Create() { + return new NiTimeController; +} diff --git a/src/obj/NiTransformController.cpp b/src/obj/NiTransformController.cpp index eeec9b0c29ba6a63a8a6c77445482be2be0370a4..dc5190be96e0728b3c7f52801ea3953d9e62d3f2 100644 --- a/src/obj/NiTransformController.cpp +++ b/src/obj/NiTransformController.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiTransformController::GetRefs() const { const Type & NiTransformController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTransformController"] = NiTransformController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTransformController::Create() { + return new NiTransformController; +} diff --git a/src/obj/NiTransformData.cpp b/src/obj/NiTransformData.cpp index cb360d51b12d5a3677a9aff8742ddf112b74ae43..305455022624b5628e0429a29cd32dbe14bff574 100644 --- a/src/obj/NiTransformData.cpp +++ b/src/obj/NiTransformData.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiTransformData::GetRefs() const { const Type & NiTransformData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTransformData"] = NiTransformData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTransformData::Create() { + return new NiTransformData; +} diff --git a/src/obj/NiTransformInterpolator.cpp b/src/obj/NiTransformInterpolator.cpp index cd5a182631205f70ae9d25ce90aa18a65b5f5e3c..2882c29d7cca4c4bf4ca322ecbae69b0e3895349 100644 --- a/src/obj/NiTransformInterpolator.cpp +++ b/src/obj/NiTransformInterpolator.cpp @@ -67,3 +67,27 @@ Ref<NiTransformData> NiTransformInterpolator::GetData() const { void NiTransformInterpolator::SetData( NiTransformData * value ) { data = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTransformInterpolator"] = NiTransformInterpolator::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTransformInterpolator::Create() { + return new NiTransformInterpolator; +} diff --git a/src/obj/NiTriBasedGeom.cpp b/src/obj/NiTriBasedGeom.cpp index 95fb041f81f3ddb3f208909c4e52d8c13f69580c..55ff2f5ffca9a8f120c616ce661d0874509cb31b 100644 --- a/src/obj/NiTriBasedGeom.cpp +++ b/src/obj/NiTriBasedGeom.cpp @@ -230,3 +230,27 @@ void NiTriBasedGeom::UpdateTangentSpace() { TSpaceRef->SetData(binData); } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTriBasedGeom"] = NiTriBasedGeom::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTriBasedGeom::Create() { + return new NiTriBasedGeom; +} diff --git a/src/obj/NiTriBasedGeomData.cpp b/src/obj/NiTriBasedGeomData.cpp index f0136aece2a96576badb725aa514ac00b99a0405..701f1759059aad506bae7d5aef42218284256d8b 100644 --- a/src/obj/NiTriBasedGeomData.cpp +++ b/src/obj/NiTriBasedGeomData.cpp @@ -43,3 +43,27 @@ void NiTriBasedGeomData::SetTriangles( const vector<Triangle> & in ) { vector<Triangle> NiTriBasedGeomData::GetTriangles() const { return vector<Triangle>(); } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTriBasedGeomData"] = NiTriBasedGeomData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTriBasedGeomData::Create() { + return new NiTriBasedGeomData; +} diff --git a/src/obj/NiTriShape.cpp b/src/obj/NiTriShape.cpp index 203f53f74ae91db105bfb8ed6c800319a1d79dc7..1a8f1cdf04fdd58026f34001e77787d4052a41d6 100644 --- a/src/obj/NiTriShape.cpp +++ b/src/obj/NiTriShape.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiTriShape::GetRefs() const { const Type & NiTriShape::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTriShape"] = NiTriShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTriShape::Create() { + return new NiTriShape; +} diff --git a/src/obj/NiTriShapeData.cpp b/src/obj/NiTriShapeData.cpp index ff91cf5a8d23f4be132932a83ed803e93213801a..c42267b55a480ef09afa381f6091284cfd9d8fd2 100644 --- a/src/obj/NiTriShapeData.cpp +++ b/src/obj/NiTriShapeData.cpp @@ -92,3 +92,27 @@ void NiTriShapeData::SetTriangles( const vector<Triangle> & in ) { //Set number of trianble points to the number of triangles times 3 numTrianglePoints = numTriangles * 3; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTriShapeData"] = NiTriShapeData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTriShapeData::Create() { + return new NiTriShapeData; +} diff --git a/src/obj/NiTriStrips.cpp b/src/obj/NiTriStrips.cpp index e7821391b0a736e9f8653a33592f71c8cdd2da17..c388c780d10ebfae3d38b07acc93b2a2e2acddca 100644 --- a/src/obj/NiTriStrips.cpp +++ b/src/obj/NiTriStrips.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiTriStrips::GetRefs() const { const Type & NiTriStrips::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTriStrips"] = NiTriStrips::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTriStrips::Create() { + return new NiTriStrips; +} diff --git a/src/obj/NiTriStripsData.cpp b/src/obj/NiTriStripsData.cpp index c653ad42ba1e4a7a3aec9d7e36c7f4cd290e8a6e..cf75cb25884a1d2e8fb9e47413e7ea79545c714b 100644 --- a/src/obj/NiTriStripsData.cpp +++ b/src/obj/NiTriStripsData.cpp @@ -267,3 +267,27 @@ void NiTriStripsData::SetTSTriangles( const vector<Triangle> & in ) { //Recalculate Triangle Count numTriangles = CalcTriangleCount(); } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiTriStripsData"] = NiTriStripsData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiTriStripsData::Create() { + return new NiTriStripsData; +} diff --git a/src/obj/NiUVController.cpp b/src/obj/NiUVController.cpp index 99af5f091838871ec488dc10ba6d43e7a8c9aaa6..ef99f6f23bfe075536aec911ae00b39978bdac0a 100644 --- a/src/obj/NiUVController.cpp +++ b/src/obj/NiUVController.cpp @@ -43,3 +43,27 @@ Ref<NiUVData> NiUVController::GetData() const { void NiUVController::SetData( NiUVData * n ) { data = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiUVController"] = NiUVController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiUVController::Create() { + return new NiUVController; +} diff --git a/src/obj/NiUVData.cpp b/src/obj/NiUVData.cpp index 6ac41393fc3c7c786428446c4ff9a16d417f3cd1..ea93ce5a4a6dba18dcb776c0667948984db332e1 100644 --- a/src/obj/NiUVData.cpp +++ b/src/obj/NiUVData.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiUVData::GetRefs() const { const Type & NiUVData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiUVData"] = NiUVData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiUVData::Create() { + return new NiUVData; +} diff --git a/src/obj/NiVectorExtraData.cpp b/src/obj/NiVectorExtraData.cpp index f0e81827de4f7c8aac4e67380889d1474a043f60..37f821af67eeb086198e65808a8ce5b0698a71ea 100644 --- a/src/obj/NiVectorExtraData.cpp +++ b/src/obj/NiVectorExtraData.cpp @@ -42,3 +42,27 @@ Vector3 NiVectorExtraData::GetData() const { void NiVectorExtraData::SetData( const Vector3 & n ) { vectorData = n; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiVectorExtraData"] = NiVectorExtraData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiVectorExtraData::Create() { + return new NiVectorExtraData; +} diff --git a/src/obj/NiVertWeightsExtraData.cpp b/src/obj/NiVertWeightsExtraData.cpp index 9459f331113ca98ea4b64ee37935420b941ab10e..530e0d8944844b55f52538851038b33cb43eea8a 100644 --- a/src/obj/NiVertWeightsExtraData.cpp +++ b/src/obj/NiVertWeightsExtraData.cpp @@ -44,3 +44,27 @@ void NiVertWeightsExtraData::SetData( const vector<float> & n ) { numBytes = numVertices + 2; weight = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiVertWeightsExtraData"] = NiVertWeightsExtraData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiVertWeightsExtraData::Create() { + return new NiVertWeightsExtraData; +} diff --git a/src/obj/NiVertexColorProperty.cpp b/src/obj/NiVertexColorProperty.cpp index f209e5fd3ee9d871ec777413da9efdcfb919321c..481615b7c469bcbfc30f7a8044640a872c4b63ac 100644 --- a/src/obj/NiVertexColorProperty.cpp +++ b/src/obj/NiVertexColorProperty.cpp @@ -58,3 +58,27 @@ LightMode NiVertexColorProperty::GetLightingMode() const { void NiVertexColorProperty::SetLightingMode(LightMode value) { lightingMode = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiVertexColorProperty"] = NiVertexColorProperty::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiVertexColorProperty::Create() { + return new NiVertexColorProperty; +} diff --git a/src/obj/NiVisController.cpp b/src/obj/NiVisController.cpp index 7b8b30010f3b8cc2a50c424c3e9cc80b7beab2c4..1ea918808da691befa28d7975748e2da6d3409db 100644 --- a/src/obj/NiVisController.cpp +++ b/src/obj/NiVisController.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> NiVisController::GetRefs() const { const Type & NiVisController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiVisController"] = NiVisController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiVisController::Create() { + return new NiVisController; +} diff --git a/src/obj/NiVisData.cpp b/src/obj/NiVisData.cpp index 6052f99f7deaa5d72fa5c5503ff07a6f22ebe075..e27acf259186501cc7f9d81e5b17116ecd3edd80 100644 --- a/src/obj/NiVisData.cpp +++ b/src/obj/NiVisData.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> NiVisData::GetRefs() const { const Type & NiVisData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiVisData"] = NiVisData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiVisData::Create() { + return new NiVisData; +} diff --git a/src/obj/NiWireframeProperty.cpp b/src/obj/NiWireframeProperty.cpp index 08bba7ce18159006e5e6e944bfc90642da6e6145..48a54bad7f64dae5390ddecc6dee86f19807729b 100644 --- a/src/obj/NiWireframeProperty.cpp +++ b/src/obj/NiWireframeProperty.cpp @@ -42,3 +42,27 @@ unsigned short NiWireframeProperty::GetFlags() const { void NiWireframeProperty::SetFlags(unsigned short value) { flags = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiWireframeProperty"] = NiWireframeProperty::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiWireframeProperty::Create() { + return new NiWireframeProperty; +} diff --git a/src/obj/NiZBufferProperty.cpp b/src/obj/NiZBufferProperty.cpp index 0bdcfa68c54f886657e84967e8f2b357119222cb..0237003045e57832ddd31e7c037d9986d0537d87 100644 --- a/src/obj/NiZBufferProperty.cpp +++ b/src/obj/NiZBufferProperty.cpp @@ -50,3 +50,27 @@ CompareMode NiZBufferProperty::GetDepthFunction() const { void NiZBufferProperty::SetDepthFunction(CompareMode value) { function = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["NiZBufferProperty"] = NiZBufferProperty::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * NiZBufferProperty::Create() { + return new NiZBufferProperty; +} diff --git a/src/obj/RootCollisionNode.cpp b/src/obj/RootCollisionNode.cpp index ab9e2fdb66e3737005675e02a27b0db67bfe1e2c..aca010df2ddbfa70d00e4f7040d05cc0d1bfaa9f 100644 --- a/src/obj/RootCollisionNode.cpp +++ b/src/obj/RootCollisionNode.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> RootCollisionNode::GetRefs() const { const Type & RootCollisionNode::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["RootCollisionNode"] = RootCollisionNode::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * RootCollisionNode::Create() { + return new RootCollisionNode; +} diff --git a/src/obj/bhkBlendCollisionObject.cpp b/src/obj/bhkBlendCollisionObject.cpp index 1e4c827bda16cc78f3caff0226722670c9334bf7..4fa19e416366146e750590be1f364ed9945438c7 100644 --- a/src/obj/bhkBlendCollisionObject.cpp +++ b/src/obj/bhkBlendCollisionObject.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkBlendCollisionObject::GetRefs() const { const Type & bhkBlendCollisionObject::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkBlendCollisionObject"] = bhkBlendCollisionObject::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkBlendCollisionObject::Create() { + return new bhkBlendCollisionObject; +} diff --git a/src/obj/bhkBlendController.cpp b/src/obj/bhkBlendController.cpp index 4a9513f71b6251ffc5e63c23137934c8ecdf855e..b488eeb5e16f8fc9972af3957541746b6a0d5a16 100644 --- a/src/obj/bhkBlendController.cpp +++ b/src/obj/bhkBlendController.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkBlendController::GetRefs() const { const Type & bhkBlendController::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkBlendController"] = bhkBlendController::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkBlendController::Create() { + return new bhkBlendController; +} diff --git a/src/obj/bhkBoxShape.cpp b/src/obj/bhkBoxShape.cpp index 23bc0c1ef2667a5d3b707fd7aacb9d17b04ca101..9e9e5fa80d5124068c35185314d79f5b734946c4 100644 --- a/src/obj/bhkBoxShape.cpp +++ b/src/obj/bhkBoxShape.cpp @@ -42,3 +42,27 @@ Vector3 bhkBoxShape::GetDimensions() const { void bhkBoxShape::SetDimensions(const Vector3 &value) { dimensions = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkBoxShape"] = bhkBoxShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkBoxShape::Create() { + return new bhkBoxShape; +} diff --git a/src/obj/bhkCapsuleShape.cpp b/src/obj/bhkCapsuleShape.cpp index bf4c62e3a440a4d5ff867d301bcfaa6d281c3cd8..564725b3def3699a93f81249818ea30c808392ef 100644 --- a/src/obj/bhkCapsuleShape.cpp +++ b/src/obj/bhkCapsuleShape.cpp @@ -74,3 +74,27 @@ float bhkCapsuleShape::GetRadius2() const { void bhkCapsuleShape::SetRadius2( float value ) { radius2 = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkCapsuleShape"] = bhkCapsuleShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkCapsuleShape::Create() { + return new bhkCapsuleShape; +} diff --git a/src/obj/bhkCollisionObject.cpp b/src/obj/bhkCollisionObject.cpp index 080fcfe491b0cea500c54f4c15653da302658f4c..164713548da960349ca04913862a4d5d165d0cef 100644 --- a/src/obj/bhkCollisionObject.cpp +++ b/src/obj/bhkCollisionObject.cpp @@ -37,3 +37,27 @@ list<NiObjectRef> bhkCollisionObject::GetRefs() const { const Type & bhkCollisionObject::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkCollisionObject"] = bhkCollisionObject::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkCollisionObject::Create() { + return new bhkCollisionObject; +} diff --git a/src/obj/bhkConvexShape.cpp b/src/obj/bhkConvexShape.cpp index a57db828bca5aea1e103fc0e759177307c116d01..af57b5d17844a69c00bbc26ae2dfd7d476945509 100644 --- a/src/obj/bhkConvexShape.cpp +++ b/src/obj/bhkConvexShape.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkConvexShape::GetRefs() const { const Type & bhkConvexShape::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkConvexShape"] = bhkConvexShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkConvexShape::Create() { + return new bhkConvexShape; +} diff --git a/src/obj/bhkConvexTransformShape.cpp b/src/obj/bhkConvexTransformShape.cpp index 3ade18e946365666f5710c6ce2f7838b0b9ce41c..ddfd93afcabc10ba86955e1bee2e20f1f5119a7b 100644 --- a/src/obj/bhkConvexTransformShape.cpp +++ b/src/obj/bhkConvexTransformShape.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkConvexTransformShape::GetRefs() const { const Type & bhkConvexTransformShape::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkConvexTransformShape"] = bhkConvexTransformShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkConvexTransformShape::Create() { + return new bhkConvexTransformShape; +} diff --git a/src/obj/bhkConvexVerticesShape.cpp b/src/obj/bhkConvexVerticesShape.cpp index 63b17f3eb566bf6f37c1b6b983fe19482fb633ca..3345c47c800cabd0c1da30c71c5909db41f58c6f 100644 --- a/src/obj/bhkConvexVerticesShape.cpp +++ b/src/obj/bhkConvexVerticesShape.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkConvexVerticesShape::GetRefs() const { const Type & bhkConvexVerticesShape::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkConvexVerticesShape"] = bhkConvexVerticesShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkConvexVerticesShape::Create() { + return new bhkConvexVerticesShape; +} diff --git a/src/obj/bhkEntity.cpp b/src/obj/bhkEntity.cpp index cf1a999844699e830d9155adb940e44568bee5c1..17b3885732ecd78bade8236d1a35feffb0d4ea2d 100644 --- a/src/obj/bhkEntity.cpp +++ b/src/obj/bhkEntity.cpp @@ -51,3 +51,27 @@ OblivionLayer bhkEntity::GetLayer() const { void bhkEntity::SetLayer( OblivionLayer value ) { layer = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkEntity"] = bhkEntity::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkEntity::Create() { + return new bhkEntity; +} diff --git a/src/obj/bhkHingeConstraint.cpp b/src/obj/bhkHingeConstraint.cpp index 5a04981e1367b9b63f9ddee1d4e75eff89fbfd59..70523782171bdea10fb35969504e8ca7e1746bf5 100644 --- a/src/obj/bhkHingeConstraint.cpp +++ b/src/obj/bhkHingeConstraint.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkHingeConstraint::GetRefs() const { const Type & bhkHingeConstraint::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkHingeConstraint"] = bhkHingeConstraint::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkHingeConstraint::Create() { + return new bhkHingeConstraint; +} diff --git a/src/obj/bhkLimitedHingeConstraint.cpp b/src/obj/bhkLimitedHingeConstraint.cpp index a1b930bb2e3ddd3098274145ce9136009314cfdc..d5bc7b20516517fe68bde6d2cd0a916a5d4ca258 100644 --- a/src/obj/bhkLimitedHingeConstraint.cpp +++ b/src/obj/bhkLimitedHingeConstraint.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> bhkLimitedHingeConstraint::GetRefs() const { const Type & bhkLimitedHingeConstraint::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkLimitedHingeConstraint"] = bhkLimitedHingeConstraint::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkLimitedHingeConstraint::Create() { + return new bhkLimitedHingeConstraint; +} diff --git a/src/obj/bhkListShape.cpp b/src/obj/bhkListShape.cpp index 693376c786e1d29ba32b2e76ea92d532f377be2a..fbee386d16fc89e2f81ae027d6d015f11dffc586 100644 --- a/src/obj/bhkListShape.cpp +++ b/src/obj/bhkListShape.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> bhkListShape::GetRefs() const { const Type & bhkListShape::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkListShape"] = bhkListShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkListShape::Create() { + return new bhkListShape; +} diff --git a/src/obj/bhkMalleableConstraint.cpp b/src/obj/bhkMalleableConstraint.cpp index 14d60a2616cf636aefd1de987c516004b6e0f7a8..207cccaf241d0fe8806948f6e60654b5b131a14d 100644 --- a/src/obj/bhkMalleableConstraint.cpp +++ b/src/obj/bhkMalleableConstraint.cpp @@ -37,3 +37,27 @@ list<NiObjectRef> bhkMalleableConstraint::GetRefs() const { const Type & bhkMalleableConstraint::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkMalleableConstraint"] = bhkMalleableConstraint::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkMalleableConstraint::Create() { + return new bhkMalleableConstraint; +} diff --git a/src/obj/bhkMoppBvTreeShape.cpp b/src/obj/bhkMoppBvTreeShape.cpp index 1b9a286e25bf6f4769a4f4c424cb6bb38309ef36..9aa65961fa19819c6974112be15cc9cfd53a0263 100644 --- a/src/obj/bhkMoppBvTreeShape.cpp +++ b/src/obj/bhkMoppBvTreeShape.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> bhkMoppBvTreeShape::GetRefs() const { const Type & bhkMoppBvTreeShape::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkMoppBvTreeShape"] = bhkMoppBvTreeShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkMoppBvTreeShape::Create() { + return new bhkMoppBvTreeShape; +} diff --git a/src/obj/bhkMultiSphereShape.cpp b/src/obj/bhkMultiSphereShape.cpp index 7f874f2392d8edf23611a1f4e6e78c2bb909b386..53e27e1516d3bb0cdf74a721ccfe5ab9c99ae9ab 100644 --- a/src/obj/bhkMultiSphereShape.cpp +++ b/src/obj/bhkMultiSphereShape.cpp @@ -43,3 +43,27 @@ vector<Sphere > bhkMultiSphereShape::GetSpheres() const { void bhkMultiSphereShape::SetSpheres( const vector<Sphere >& value ) { spheres = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkMultiSphereShape"] = bhkMultiSphereShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkMultiSphereShape::Create() { + return new bhkMultiSphereShape; +} diff --git a/src/obj/bhkNiTriStripsShape.cpp b/src/obj/bhkNiTriStripsShape.cpp index bd0ecb1ed04964a44baa783a1cf8a148e41edc6b..f6d83ac12a9058a8fc57a48d4f3b8401d94ec858 100644 --- a/src/obj/bhkNiTriStripsShape.cpp +++ b/src/obj/bhkNiTriStripsShape.cpp @@ -61,3 +61,27 @@ Vector3 bhkNiTriStripsShape::GetScale() const { void bhkNiTriStripsShape::SetScale( const Vector3 & n ) { scale = n; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkNiTriStripsShape"] = bhkNiTriStripsShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkNiTriStripsShape::Create() { + return new bhkNiTriStripsShape; +} diff --git a/src/obj/bhkPackedNiTriStripsShape.cpp b/src/obj/bhkPackedNiTriStripsShape.cpp index 94872df31545901ba4b82d9cf19d91033ad789d8..3ade4531eab04cd51de8c9d33dc51f406f71c7d6 100644 --- a/src/obj/bhkPackedNiTriStripsShape.cpp +++ b/src/obj/bhkPackedNiTriStripsShape.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> bhkPackedNiTriStripsShape::GetRefs() const { const Type & bhkPackedNiTriStripsShape::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkPackedNiTriStripsShape"] = bhkPackedNiTriStripsShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkPackedNiTriStripsShape::Create() { + return new bhkPackedNiTriStripsShape; +} diff --git a/src/obj/bhkPrismaticConstraint.cpp b/src/obj/bhkPrismaticConstraint.cpp index aa861511164ee013cee1086922b71543a49f6128..ad40a7120292c9836227e43bbf0dbbfdd6bc9ad0 100644 --- a/src/obj/bhkPrismaticConstraint.cpp +++ b/src/obj/bhkPrismaticConstraint.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkPrismaticConstraint::GetRefs() const { const Type & bhkPrismaticConstraint::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkPrismaticConstraint"] = bhkPrismaticConstraint::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkPrismaticConstraint::Create() { + return new bhkPrismaticConstraint; +} diff --git a/src/obj/bhkRagdollConstraint.cpp b/src/obj/bhkRagdollConstraint.cpp index 3575fd9877809a9b384b0a2e8ef6b99963cd4210..257a0df41ed33951701a2fcd5cd24532878516af 100644 --- a/src/obj/bhkRagdollConstraint.cpp +++ b/src/obj/bhkRagdollConstraint.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkRagdollConstraint::GetRefs() const { const Type & bhkRagdollConstraint::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkRagdollConstraint"] = bhkRagdollConstraint::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkRagdollConstraint::Create() { + return new bhkRagdollConstraint; +} diff --git a/src/obj/bhkRefObject.cpp b/src/obj/bhkRefObject.cpp index c70a0ce86384ed8e92a3acd2df340ca6876e1b98..63bf1f985897f9eac4cca5d4a21ff61325d83e98 100644 --- a/src/obj/bhkRefObject.cpp +++ b/src/obj/bhkRefObject.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkRefObject::GetRefs() const { const Type & bhkRefObject::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkRefObject"] = bhkRefObject::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkRefObject::Create() { + return new bhkRefObject; +} diff --git a/src/obj/bhkRigidBody.cpp b/src/obj/bhkRigidBody.cpp index 9e656ed0ac55dfe08e664f98bcb909218c1c8cf8..c46a46d8183856bbe39f69fa084b8296a003fe92 100644 --- a/src/obj/bhkRigidBody.cpp +++ b/src/obj/bhkRigidBody.cpp @@ -172,3 +172,27 @@ MotionQuality bhkRigidBody::GetQualityType() const { void bhkRigidBody::SetQualityType( MotionQuality value ) { qualityType = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkRigidBody"] = bhkRigidBody::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkRigidBody::Create() { + return new bhkRigidBody; +} diff --git a/src/obj/bhkRigidBodyT.cpp b/src/obj/bhkRigidBodyT.cpp index eea636196de5a1d2dbc506f0944a07633d0554b7..5e7f33df69fc7e28abef56d950f0b1b367342bcf 100644 --- a/src/obj/bhkRigidBodyT.cpp +++ b/src/obj/bhkRigidBodyT.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkRigidBodyT::GetRefs() const { const Type & bhkRigidBodyT::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkRigidBodyT"] = bhkRigidBodyT::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkRigidBodyT::Create() { + return new bhkRigidBodyT; +} diff --git a/src/obj/bhkSPCollisionObject.cpp b/src/obj/bhkSPCollisionObject.cpp index 93ee2af78ba6138f9681196706063c3501376ab4..ffec309a1d99e41778d331d7965efe136f73fbfa 100644 --- a/src/obj/bhkSPCollisionObject.cpp +++ b/src/obj/bhkSPCollisionObject.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkSPCollisionObject::GetRefs() const { const Type & bhkSPCollisionObject::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkSPCollisionObject"] = bhkSPCollisionObject::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkSPCollisionObject::Create() { + return new bhkSPCollisionObject; +} diff --git a/src/obj/bhkSerializable.cpp b/src/obj/bhkSerializable.cpp index bc169f38c76aa34bbef2f0ab170b04e56bf3f83d..9aa3f10ec85b4f0f207845d3b054745270cde838 100644 --- a/src/obj/bhkSerializable.cpp +++ b/src/obj/bhkSerializable.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkSerializable::GetRefs() const { const Type & bhkSerializable::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkSerializable"] = bhkSerializable::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkSerializable::Create() { + return new bhkSerializable; +} diff --git a/src/obj/bhkShape.cpp b/src/obj/bhkShape.cpp index 9ecac5a2522da86ed53678d3276b4f0080bbcf1d..2486cf038be5ff6fb66e77e42ea3d53a41024d03 100644 --- a/src/obj/bhkShape.cpp +++ b/src/obj/bhkShape.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkShape::GetRefs() const { const Type & bhkShape::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkShape"] = bhkShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkShape::Create() { + return new bhkShape; +} diff --git a/src/obj/bhkSimpleShapePhantom.cpp b/src/obj/bhkSimpleShapePhantom.cpp index 22d012eb54c7bf37216b56e2fbd1b18b97941348..6ad3d166575dc1c562b7bb5400d262b1905f88ed 100644 --- a/src/obj/bhkSimpleShapePhantom.cpp +++ b/src/obj/bhkSimpleShapePhantom.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkSimpleShapePhantom::GetRefs() const { const Type & bhkSimpleShapePhantom::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkSimpleShapePhantom"] = bhkSimpleShapePhantom::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkSimpleShapePhantom::Create() { + return new bhkSimpleShapePhantom; +} diff --git a/src/obj/bhkSphereRepShape.cpp b/src/obj/bhkSphereRepShape.cpp index a718646b58c3ca9764bf87cfe70795a354822f87..6a0afdf81c26c2561b95cbeb4f9055cf67c9a112 100644 --- a/src/obj/bhkSphereRepShape.cpp +++ b/src/obj/bhkSphereRepShape.cpp @@ -42,3 +42,27 @@ HavokMaterial bhkSphereRepShape::GetMaterial() const { void bhkSphereRepShape::SetMaterial( HavokMaterial value ) { material = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkSphereRepShape"] = bhkSphereRepShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkSphereRepShape::Create() { + return new bhkSphereRepShape; +} diff --git a/src/obj/bhkSphereShape.cpp b/src/obj/bhkSphereShape.cpp index 253dbe5b35d681ce00828109bfdee4ccf96e7cf9..0f60e7e1dd588cd5927fd710ba8e7a20e7a3ba82 100644 --- a/src/obj/bhkSphereShape.cpp +++ b/src/obj/bhkSphereShape.cpp @@ -42,3 +42,27 @@ float bhkSphereShape::GetRadius() const { void bhkSphereShape::SetRadius( float value ) { radius = value; } + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkSphereShape"] = bhkSphereShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkSphereShape::Create() { + return new bhkSphereShape; +} diff --git a/src/obj/bhkStiffSpringConstraint.cpp b/src/obj/bhkStiffSpringConstraint.cpp index 2ab45ddbe375dde3501a1846ce75595335a7b844..e2c7befdd944923d81026101a2df9b063e7a37ad 100644 --- a/src/obj/bhkStiffSpringConstraint.cpp +++ b/src/obj/bhkStiffSpringConstraint.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkStiffSpringConstraint::GetRefs() const { const Type & bhkStiffSpringConstraint::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkStiffSpringConstraint"] = bhkStiffSpringConstraint::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkStiffSpringConstraint::Create() { + return new bhkStiffSpringConstraint; +} diff --git a/src/obj/bhkTransformShape.cpp b/src/obj/bhkTransformShape.cpp index f9e768a7d42b3ffc36a6c33667fd69a2f12711b4..ef89dd7c2f487dc6b2cbb851715e659ad03e6893 100644 --- a/src/obj/bhkTransformShape.cpp +++ b/src/obj/bhkTransformShape.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkTransformShape::GetRefs() const { const Type & bhkTransformShape::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkTransformShape"] = bhkTransformShape::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkTransformShape::Create() { + return new bhkTransformShape; +} diff --git a/src/obj/bhkWorldObject.cpp b/src/obj/bhkWorldObject.cpp index 0bdd9c8215007f5df1104354cb24630bae52a7b3..4bab54a72cc46b177533e92b80beadfad49276c7 100644 --- a/src/obj/bhkWorldObject.cpp +++ b/src/obj/bhkWorldObject.cpp @@ -34,3 +34,27 @@ list<NiObjectRef> bhkWorldObject::GetRefs() const { const Type & bhkWorldObject::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["bhkWorldObject"] = bhkWorldObject::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * bhkWorldObject::Create() { + return new bhkWorldObject; +} diff --git a/src/obj/hkPackedNiTriStripsData.cpp b/src/obj/hkPackedNiTriStripsData.cpp index 6f3dbb20da0eea60fc21931bb857ad2aaee43c67..64b0a64a906748a2fec75c1e480190e7ba688c92 100644 --- a/src/obj/hkPackedNiTriStripsData.cpp +++ b/src/obj/hkPackedNiTriStripsData.cpp @@ -35,3 +35,27 @@ list<NiObjectRef> hkPackedNiTriStripsData::GetRefs() const { const Type & hkPackedNiTriStripsData::GetType() const { return TYPE; }; + +namespace Niflib { + typedef NiObject*(*obj_factory_func)(); + extern map<string, obj_factory_func> global_object_map; + + //Initialization function + static bool Initialization(); + + //A static bool to force the initialization to happen pre-main + static bool obj_initialized = Initialization(); + + static bool Initialization() { + //Add the function to the global object map + global_object_map["hkPackedNiTriStripsData"] = hkPackedNiTriStripsData::Create; + + //Do this stuff just to make sure the compiler doesn't optimize this function and the static bool away. + obj_initialized = true; + return obj_initialized; + } +} + +NiObject * hkPackedNiTriStripsData::Create() { + return new hkPackedNiTriStripsData; +}