#ifndef _PFX1_H_ #define _PFX1_H_ #include class KFT_pfx_emitter { public: KFT_pfx_emitter() { m_pObj = NULL; m_pMem_start_time = NULL; m_pMem_int_life_time = NULL; m_pMem_start_pos = NULL; m_pMem_velocity = NULL; m_pMem_bool_directional = NULL; m_pMem_nx3_name_size = NULL; m_pMem_nx3_aniname_array = NULL; m_pMem_nx3_filename_array = NULL; } KFT_pfx_emitter( KFiler *filer ) { m_pObj = filer->CreateTemplateObject( "pfx_emitter" ); m_pMem_start_time = reinterpret_cast(m_pObj->GetMemberObject( "start_time" )); m_pMem_int_life_time = reinterpret_cast(m_pObj->GetMemberObject( "int_life_time" )); m_pMem_start_pos = reinterpret_cast(m_pObj->GetMemberObject( "start_pos" )); m_pMem_velocity = reinterpret_cast(m_pObj->GetMemberObject( "velocity" )); m_pMem_bool_directional = reinterpret_cast(m_pObj->GetMemberObject( "bool_directional" )); m_pMem_nx3_name_size = reinterpret_cast(m_pObj->GetMemberObject( "nx3_name_size" )); m_pMem_nx3_aniname_array = reinterpret_cast(m_pObj->GetMemberObject( "nx3_aniname_array" )); m_pMem_nx3_filename_array = reinterpret_cast(m_pObj->GetMemberObject( "nx3_filename_array" )); } KFT_pfx_emitter( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_start_time = reinterpret_cast(m_pObj->GetMemberObject( "start_time" )); m_pMem_int_life_time = reinterpret_cast(m_pObj->GetMemberObject( "int_life_time" )); m_pMem_start_pos = reinterpret_cast(m_pObj->GetMemberObject( "start_pos" )); m_pMem_velocity = reinterpret_cast(m_pObj->GetMemberObject( "velocity" )); m_pMem_bool_directional = reinterpret_cast(m_pObj->GetMemberObject( "bool_directional" )); m_pMem_nx3_name_size = reinterpret_cast(m_pObj->GetMemberObject( "nx3_name_size" )); m_pMem_nx3_aniname_array = reinterpret_cast(m_pObj->GetMemberObject( "nx3_aniname_array" )); m_pMem_nx3_filename_array = reinterpret_cast(m_pObj->GetMemberObject( "nx3_filename_array" )); } ~KFT_pfx_emitter() { } void SetDataObject( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_start_time = reinterpret_cast(m_pObj->GetMemberObject( "start_time" )); m_pMem_int_life_time = reinterpret_cast(m_pObj->GetMemberObject( "int_life_time" )); m_pMem_start_pos = reinterpret_cast(m_pObj->GetMemberObject( "start_pos" )); m_pMem_velocity = reinterpret_cast(m_pObj->GetMemberObject( "velocity" )); m_pMem_bool_directional = reinterpret_cast(m_pObj->GetMemberObject( "bool_directional" )); m_pMem_nx3_name_size = reinterpret_cast(m_pObj->GetMemberObject( "nx3_name_size" )); m_pMem_nx3_aniname_array = reinterpret_cast(m_pObj->GetMemberObject( "nx3_aniname_array" )); m_pMem_nx3_filename_array = reinterpret_cast(m_pObj->GetMemberObject( "nx3_filename_array" )); } unsigned long GetValue_start_time() { unsigned long res; m_pMem_start_time->GetDWORD( &res ); return res; } void SetValue_start_time( unsigned long value ) { m_pMem_start_time->SetDWORD( value ); } float GetValue_int_life_time() { float res; m_pMem_int_life_time->GetFloat( &res ); return res; } void SetValue_int_life_time( float value ) { m_pMem_int_life_time->SetFloat( value ); } float GetValue_start_pos() { float res; m_pMem_start_pos->GetFloat( &res ); return res; } void SetValue_start_pos( float value ) { m_pMem_start_pos->SetFloat( value ); } float GetValue_velocity() { float res; m_pMem_velocity->GetFloat( &res ); return res; } void SetValue_velocity( float value ) { m_pMem_velocity->SetFloat( value ); } unsigned long GetValue_bool_directional() { unsigned long res; m_pMem_bool_directional->GetDWORD( &res ); return res; } void SetValue_bool_directional( unsigned long value ) { m_pMem_bool_directional->SetDWORD( value ); } unsigned long GetValue_nx3_name_size() { unsigned long res; m_pMem_nx3_name_size->GetDWORD( &res ); return res; } void SetValue_nx3_name_size( unsigned long value ) { m_pMem_nx3_name_size->SetDWORD( value ); } int GetArrayCount_nx3_aniname_array() { return m_pMem_nx3_aniname_array->GetDataCount(); } const char *GetArrayString_nx3_aniname_array( int index ) { return m_pMem_nx3_aniname_array->GetDataString( index ); } void RefreshArray_nx3_aniname_array() { m_pMem_nx3_aniname_array->RefreshArray(); } bool SetArrayString_nx3_aniname_array( int index, const char *data ) { return m_pMem_nx3_aniname_array->SetDataString( index, data ); } int GetArrayCount_nx3_filename_array() { return m_pMem_nx3_filename_array->GetDataCount(); } const char *GetArrayString_nx3_filename_array( int index ) { return m_pMem_nx3_filename_array->GetDataString( index ); } void RefreshArray_nx3_filename_array() { m_pMem_nx3_filename_array->RefreshArray(); } bool SetArrayString_nx3_filename_array( int index, const char *data ) { return m_pMem_nx3_filename_array->SetDataString( index, data ); } void Save( KFiler &filer ) { filer.AddDataObject( m_pObj ); } static bool Check( KTemplateDataObject *pObj) { return strcmp( pObj->GetTemplateName(), "pfx_emitter" ) == 0; } private: KTemplateDataObject* m_pObj; KSimpleDataObject* m_pMem_start_time; KSimpleDataObject* m_pMem_int_life_time; KSimpleDataObject* m_pMem_start_pos; KSimpleDataObject* m_pMem_velocity; KSimpleDataObject* m_pMem_bool_directional; KSimpleDataObject* m_pMem_nx3_name_size; KSimpleDataArrayObject* m_pMem_nx3_aniname_array; KSimpleDataArrayObject* m_pMem_nx3_filename_array; }; class KFTA_pfx_emitter { public: KFTA_pfx_emitter() { m_pObj = NULL; m_pParent = NULL; } KFTA_pfx_emitter( KTemplateDataArrayObject* pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } KFTA_pfx_emitter( KTemplateDataObject *pParent ) { m_pParent = pParent; m_pObj = pParent->GetTemplateDataArrayMemberObject( "pfx_emitter" ); } ~KFTA_pfx_emitter() { } void SetData( KTemplateDataArrayObject *pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } void SetArrayInfo( int nCount, const char *varCount, KTemplateDataObject *pParent ) { m_pObj->SetArrayInfo( nCount, varCount, pParent ); } void RefreshArray() { m_pObj->RefreshArray(); } int GetDataCount() { return m_pObj->GetDataCount(); } void GetData( int index, KFT_pfx_emitter &obj ) { obj.SetDataObject( m_pObj->GetData( index ) ); } private: KTemplateDataObject* m_pParent; KTemplateDataArrayObject* m_pObj; }; class KFT_pfx_object { public: KFT_pfx_object() { m_pObj = NULL; m_pMem_point_size = NULL; m_pMem_point_array = NULL; m_pMem_total_point_vector_length = NULL; m_pMem_ofs_z = NULL; m_pMem_start_time = NULL; m_pMem_life_time = NULL; m_pMem_emitter_size = NULL; m_pMem_emitter_array = NULL; m_pMem_bool_has_polyline = NULL; m_pMem_polyline_width = NULL; m_pMem_polyline_color = NULL; m_pMem_polyline_texname = NULL; } KFT_pfx_object( KFiler *filer ) { m_pObj = filer->CreateTemplateObject( "pfx_object" ); m_pMem_point_size = reinterpret_cast(m_pObj->GetMemberObject( "point_size" )); m_pMem_point_array = reinterpret_cast(m_pObj->GetMemberObject( "point_array" )); m_pMem_total_point_vector_length = reinterpret_cast(m_pObj->GetMemberObject( "total_point_vector_length" )); m_pMem_ofs_z = reinterpret_cast(m_pObj->GetMemberObject( "ofs_z" )); m_pMem_start_time = reinterpret_cast(m_pObj->GetMemberObject( "start_time" )); m_pMem_life_time = reinterpret_cast(m_pObj->GetMemberObject( "life_time" )); m_pMem_emitter_size = reinterpret_cast(m_pObj->GetMemberObject( "emitter_size" )); m_pMem_emitter_array = reinterpret_cast(m_pObj->GetMemberObject( "emitter_array" )); m_pMem_bool_has_polyline = reinterpret_cast(m_pObj->GetMemberObject( "bool_has_polyline" )); m_pMem_polyline_width = reinterpret_cast(m_pObj->GetMemberObject( "polyline_width" )); m_pMem_polyline_color = reinterpret_cast(m_pObj->GetMemberObject( "polyline_color" )); m_pMem_polyline_texname = reinterpret_cast(m_pObj->GetMemberObject( "polyline_texname" )); } KFT_pfx_object( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_point_size = reinterpret_cast(m_pObj->GetMemberObject( "point_size" )); m_pMem_point_array = reinterpret_cast(m_pObj->GetMemberObject( "point_array" )); m_pMem_total_point_vector_length = reinterpret_cast(m_pObj->GetMemberObject( "total_point_vector_length" )); m_pMem_ofs_z = reinterpret_cast(m_pObj->GetMemberObject( "ofs_z" )); m_pMem_start_time = reinterpret_cast(m_pObj->GetMemberObject( "start_time" )); m_pMem_life_time = reinterpret_cast(m_pObj->GetMemberObject( "life_time" )); m_pMem_emitter_size = reinterpret_cast(m_pObj->GetMemberObject( "emitter_size" )); m_pMem_emitter_array = reinterpret_cast(m_pObj->GetMemberObject( "emitter_array" )); m_pMem_bool_has_polyline = reinterpret_cast(m_pObj->GetMemberObject( "bool_has_polyline" )); m_pMem_polyline_width = reinterpret_cast(m_pObj->GetMemberObject( "polyline_width" )); m_pMem_polyline_color = reinterpret_cast(m_pObj->GetMemberObject( "polyline_color" )); m_pMem_polyline_texname = reinterpret_cast(m_pObj->GetMemberObject( "polyline_texname" )); } ~KFT_pfx_object() { } void SetDataObject( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_point_size = reinterpret_cast(m_pObj->GetMemberObject( "point_size" )); m_pMem_point_array = reinterpret_cast(m_pObj->GetMemberObject( "point_array" )); m_pMem_total_point_vector_length = reinterpret_cast(m_pObj->GetMemberObject( "total_point_vector_length" )); m_pMem_ofs_z = reinterpret_cast(m_pObj->GetMemberObject( "ofs_z" )); m_pMem_start_time = reinterpret_cast(m_pObj->GetMemberObject( "start_time" )); m_pMem_life_time = reinterpret_cast(m_pObj->GetMemberObject( "life_time" )); m_pMem_emitter_size = reinterpret_cast(m_pObj->GetMemberObject( "emitter_size" )); m_pMem_emitter_array = reinterpret_cast(m_pObj->GetMemberObject( "emitter_array" )); m_pMem_bool_has_polyline = reinterpret_cast(m_pObj->GetMemberObject( "bool_has_polyline" )); m_pMem_polyline_width = reinterpret_cast(m_pObj->GetMemberObject( "polyline_width" )); m_pMem_polyline_color = reinterpret_cast(m_pObj->GetMemberObject( "polyline_color" )); m_pMem_polyline_texname = reinterpret_cast(m_pObj->GetMemberObject( "polyline_texname" )); } unsigned long GetValue_point_size() { unsigned long res; m_pMem_point_size->GetDWORD( &res ); return res; } void SetValue_point_size( unsigned long value ) { m_pMem_point_size->SetDWORD( value ); } int GetArrayCount_point_array() { return m_pMem_point_array->GetDataCount(); } void GetArrayValue_point_array( int index, float *data, size_t data_size, int count ) { m_pMem_point_array->GetDataFloat( index, data, data_size, count ); } void RefreshArray_point_array() { m_pMem_point_array->RefreshArray(); } void SetArrayValue_point_array( int index, const float *data, int count = 1 ) { m_pMem_point_array->SetDataFloat( index, data, count ); } float GetValue_total_point_vector_length() { float res; m_pMem_total_point_vector_length->GetFloat( &res ); return res; } void SetValue_total_point_vector_length( float value ) { m_pMem_total_point_vector_length->SetFloat( value ); } float GetValue_ofs_z() { float res; m_pMem_ofs_z->GetFloat( &res ); return res; } void SetValue_ofs_z( float value ) { m_pMem_ofs_z->SetFloat( value ); } unsigned long GetValue_start_time() { unsigned long res; m_pMem_start_time->GetDWORD( &res ); return res; } void SetValue_start_time( unsigned long value ) { m_pMem_start_time->SetDWORD( value ); } unsigned long GetValue_life_time() { unsigned long res; m_pMem_life_time->GetDWORD( &res ); return res; } void SetValue_life_time( unsigned long value ) { m_pMem_life_time->SetDWORD( value ); } unsigned long GetValue_emitter_size() { unsigned long res; m_pMem_emitter_size->GetDWORD( &res ); return res; } void SetValue_emitter_size( unsigned long value ) { m_pMem_emitter_size->SetDWORD( value ); } void GetMemberTemplateArray_emitter_array( KFTA_pfx_emitter &obj ) { obj.SetData( m_pMem_emitter_array ); } unsigned long GetValue_bool_has_polyline() { unsigned long res; m_pMem_bool_has_polyline->GetDWORD( &res ); return res; } void SetValue_bool_has_polyline( unsigned long value ) { m_pMem_bool_has_polyline->SetDWORD( value ); } float GetValue_polyline_width() { float res; m_pMem_polyline_width->GetFloat( &res ); return res; } void SetValue_polyline_width( float value ) { m_pMem_polyline_width->SetFloat( value ); } unsigned long GetValue_polyline_color() { unsigned long res; m_pMem_polyline_color->GetDWORD( &res ); return res; } void SetValue_polyline_color( unsigned long value ) { m_pMem_polyline_color->SetDWORD( value ); } bool GetString_polyline_texname( char *data, int &nLen ) { return m_pMem_polyline_texname->GetString( data, nLen ); } bool SetString_polyline_texname( const char *data, int nLen ) { return m_pMem_polyline_texname->SetString( data, nLen ); } void Save( KFiler &filer ) { filer.AddDataObject( m_pObj ); } static bool Check( KTemplateDataObject *pObj) { return strcmp( pObj->GetTemplateName(), "pfx_object" ) == 0; } private: KTemplateDataObject* m_pObj; KSimpleDataObject* m_pMem_point_size; KSimpleDataArrayObject* m_pMem_point_array; KSimpleDataObject* m_pMem_total_point_vector_length; KSimpleDataObject* m_pMem_ofs_z; KSimpleDataObject* m_pMem_start_time; KSimpleDataObject* m_pMem_life_time; KSimpleDataObject* m_pMem_emitter_size; KTemplateDataArrayObject* m_pMem_emitter_array; KSimpleDataObject* m_pMem_bool_has_polyline; KSimpleDataObject* m_pMem_polyline_width; KSimpleDataObject* m_pMem_polyline_color; KSimpleDataObject* m_pMem_polyline_texname; }; class KFTA_pfx_object { public: KFTA_pfx_object() { m_pObj = NULL; m_pParent = NULL; } KFTA_pfx_object( KTemplateDataArrayObject* pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } KFTA_pfx_object( KTemplateDataObject *pParent ) { m_pParent = pParent; m_pObj = pParent->GetTemplateDataArrayMemberObject( "pfx_object" ); } ~KFTA_pfx_object() { } void SetData( KTemplateDataArrayObject *pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } void SetArrayInfo( int nCount, const char *varCount, KTemplateDataObject *pParent ) { m_pObj->SetArrayInfo( nCount, varCount, pParent ); } void RefreshArray() { m_pObj->RefreshArray(); } int GetDataCount() { return m_pObj->GetDataCount(); } void GetData( int index, KFT_pfx_object &obj ) { obj.SetDataObject( m_pObj->GetData( index ) ); } private: KTemplateDataObject* m_pParent; KTemplateDataArrayObject* m_pObj; }; class KFT_pfx_chain_header { public: KFT_pfx_chain_header() { m_pObj = NULL; m_pMem_pfx_object_size = NULL; m_pMem_pfx_object_array = NULL; m_pMem_bool_directional = NULL; m_pMem_mag = NULL; m_pMem_bool_end_together = NULL; } KFT_pfx_chain_header( KFiler *filer ) { m_pObj = filer->CreateTemplateObject( "pfx_chain_header" ); m_pMem_pfx_object_size = reinterpret_cast(m_pObj->GetMemberObject( "pfx_object_size" )); m_pMem_pfx_object_array = reinterpret_cast(m_pObj->GetMemberObject( "pfx_object_array" )); m_pMem_bool_directional = reinterpret_cast(m_pObj->GetMemberObject( "bool_directional" )); m_pMem_mag = reinterpret_cast(m_pObj->GetMemberObject( "mag" )); m_pMem_bool_end_together = reinterpret_cast(m_pObj->GetMemberObject( "bool_end_together" )); } KFT_pfx_chain_header( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_pfx_object_size = reinterpret_cast(m_pObj->GetMemberObject( "pfx_object_size" )); m_pMem_pfx_object_array = reinterpret_cast(m_pObj->GetMemberObject( "pfx_object_array" )); m_pMem_bool_directional = reinterpret_cast(m_pObj->GetMemberObject( "bool_directional" )); m_pMem_mag = reinterpret_cast(m_pObj->GetMemberObject( "mag" )); m_pMem_bool_end_together = reinterpret_cast(m_pObj->GetMemberObject( "bool_end_together" )); } ~KFT_pfx_chain_header() { } void SetDataObject( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_pfx_object_size = reinterpret_cast(m_pObj->GetMemberObject( "pfx_object_size" )); m_pMem_pfx_object_array = reinterpret_cast(m_pObj->GetMemberObject( "pfx_object_array" )); m_pMem_bool_directional = reinterpret_cast(m_pObj->GetMemberObject( "bool_directional" )); m_pMem_mag = reinterpret_cast(m_pObj->GetMemberObject( "mag" )); m_pMem_bool_end_together = reinterpret_cast(m_pObj->GetMemberObject( "bool_end_together" )); } unsigned long GetValue_pfx_object_size() { unsigned long res; m_pMem_pfx_object_size->GetDWORD( &res ); return res; } void SetValue_pfx_object_size( unsigned long value ) { m_pMem_pfx_object_size->SetDWORD( value ); } void GetMemberTemplateArray_pfx_object_array( KFTA_pfx_object &obj ) { obj.SetData( m_pMem_pfx_object_array ); } unsigned long GetValue_bool_directional() { unsigned long res; m_pMem_bool_directional->GetDWORD( &res ); return res; } void SetValue_bool_directional( unsigned long value ) { m_pMem_bool_directional->SetDWORD( value ); } float GetValue_mag() { float res; m_pMem_mag->GetFloat( &res ); return res; } void SetValue_mag( float value ) { m_pMem_mag->SetFloat( value ); } unsigned long GetValue_bool_end_together() { unsigned long res; m_pMem_bool_end_together->GetDWORD( &res ); return res; } void SetValue_bool_end_together( unsigned long value ) { m_pMem_bool_end_together->SetDWORD( value ); } void Save( KFiler &filer ) { filer.AddDataObject( m_pObj ); } static bool Check( KTemplateDataObject *pObj) { return strcmp( pObj->GetTemplateName(), "pfx_chain_header" ) == 0; } private: KTemplateDataObject* m_pObj; KSimpleDataObject* m_pMem_pfx_object_size; KTemplateDataArrayObject* m_pMem_pfx_object_array; KSimpleDataObject* m_pMem_bool_directional; KSimpleDataObject* m_pMem_mag; KSimpleDataObject* m_pMem_bool_end_together; }; class KFTA_pfx_chain_header { public: KFTA_pfx_chain_header() { m_pObj = NULL; m_pParent = NULL; } KFTA_pfx_chain_header( KTemplateDataArrayObject* pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } KFTA_pfx_chain_header( KTemplateDataObject *pParent ) { m_pParent = pParent; m_pObj = pParent->GetTemplateDataArrayMemberObject( "pfx_chain_header" ); } ~KFTA_pfx_chain_header() { } void SetData( KTemplateDataArrayObject *pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } void SetArrayInfo( int nCount, const char *varCount, KTemplateDataObject *pParent ) { m_pObj->SetArrayInfo( nCount, varCount, pParent ); } void RefreshArray() { m_pObj->RefreshArray(); } int GetDataCount() { return m_pObj->GetDataCount(); } void GetData( int index, KFT_pfx_chain_header &obj ) { obj.SetDataObject( m_pObj->GetData( index ) ); } private: KTemplateDataObject* m_pParent; KTemplateDataArrayObject* m_pObj; }; #endif