624 lines
20 KiB
C++
624 lines
20 KiB
C++
#ifndef _PFX1_H_
|
|
#define _PFX1_H_
|
|
#include <kfile/KFiler.h>
|
|
|
|
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<KSimpleDataObject*>(m_pObj->GetMemberObject( "start_time" ));
|
|
m_pMem_int_life_time = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "int_life_time" ));
|
|
m_pMem_start_pos = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "start_pos" ));
|
|
m_pMem_velocity = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "velocity" ));
|
|
m_pMem_bool_directional = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "bool_directional" ));
|
|
m_pMem_nx3_name_size = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "nx3_name_size" ));
|
|
m_pMem_nx3_aniname_array = reinterpret_cast<KSimpleDataArrayObject*>(m_pObj->GetMemberObject( "nx3_aniname_array" ));
|
|
m_pMem_nx3_filename_array = reinterpret_cast<KSimpleDataArrayObject*>(m_pObj->GetMemberObject( "nx3_filename_array" ));
|
|
}
|
|
KFT_pfx_emitter( KTemplateDataObject *pObj )
|
|
{
|
|
m_pObj = pObj;
|
|
m_pMem_start_time = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "start_time" ));
|
|
m_pMem_int_life_time = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "int_life_time" ));
|
|
m_pMem_start_pos = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "start_pos" ));
|
|
m_pMem_velocity = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "velocity" ));
|
|
m_pMem_bool_directional = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "bool_directional" ));
|
|
m_pMem_nx3_name_size = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "nx3_name_size" ));
|
|
m_pMem_nx3_aniname_array = reinterpret_cast<KSimpleDataArrayObject*>(m_pObj->GetMemberObject( "nx3_aniname_array" ));
|
|
m_pMem_nx3_filename_array = reinterpret_cast<KSimpleDataArrayObject*>(m_pObj->GetMemberObject( "nx3_filename_array" ));
|
|
}
|
|
~KFT_pfx_emitter()
|
|
{
|
|
}
|
|
void SetDataObject( KTemplateDataObject *pObj )
|
|
{
|
|
m_pObj = pObj;
|
|
m_pMem_start_time = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "start_time" ));
|
|
m_pMem_int_life_time = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "int_life_time" ));
|
|
m_pMem_start_pos = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "start_pos" ));
|
|
m_pMem_velocity = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "velocity" ));
|
|
m_pMem_bool_directional = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "bool_directional" ));
|
|
m_pMem_nx3_name_size = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "nx3_name_size" ));
|
|
m_pMem_nx3_aniname_array = reinterpret_cast<KSimpleDataArrayObject*>(m_pObj->GetMemberObject( "nx3_aniname_array" ));
|
|
m_pMem_nx3_filename_array = reinterpret_cast<KSimpleDataArrayObject*>(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<KSimpleDataObject*>(m_pObj->GetMemberObject( "point_size" ));
|
|
m_pMem_point_array = reinterpret_cast<KSimpleDataArrayObject*>(m_pObj->GetMemberObject( "point_array" ));
|
|
m_pMem_total_point_vector_length = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "total_point_vector_length" ));
|
|
m_pMem_ofs_z = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "ofs_z" ));
|
|
m_pMem_start_time = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "start_time" ));
|
|
m_pMem_life_time = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "life_time" ));
|
|
m_pMem_emitter_size = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "emitter_size" ));
|
|
m_pMem_emitter_array = reinterpret_cast<KTemplateDataArrayObject*>(m_pObj->GetMemberObject( "emitter_array" ));
|
|
m_pMem_bool_has_polyline = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "bool_has_polyline" ));
|
|
m_pMem_polyline_width = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "polyline_width" ));
|
|
m_pMem_polyline_color = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "polyline_color" ));
|
|
m_pMem_polyline_texname = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "polyline_texname" ));
|
|
}
|
|
KFT_pfx_object( KTemplateDataObject *pObj )
|
|
{
|
|
m_pObj = pObj;
|
|
m_pMem_point_size = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "point_size" ));
|
|
m_pMem_point_array = reinterpret_cast<KSimpleDataArrayObject*>(m_pObj->GetMemberObject( "point_array" ));
|
|
m_pMem_total_point_vector_length = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "total_point_vector_length" ));
|
|
m_pMem_ofs_z = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "ofs_z" ));
|
|
m_pMem_start_time = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "start_time" ));
|
|
m_pMem_life_time = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "life_time" ));
|
|
m_pMem_emitter_size = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "emitter_size" ));
|
|
m_pMem_emitter_array = reinterpret_cast<KTemplateDataArrayObject*>(m_pObj->GetMemberObject( "emitter_array" ));
|
|
m_pMem_bool_has_polyline = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "bool_has_polyline" ));
|
|
m_pMem_polyline_width = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "polyline_width" ));
|
|
m_pMem_polyline_color = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "polyline_color" ));
|
|
m_pMem_polyline_texname = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "polyline_texname" ));
|
|
}
|
|
~KFT_pfx_object()
|
|
{
|
|
}
|
|
void SetDataObject( KTemplateDataObject *pObj )
|
|
{
|
|
m_pObj = pObj;
|
|
m_pMem_point_size = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "point_size" ));
|
|
m_pMem_point_array = reinterpret_cast<KSimpleDataArrayObject*>(m_pObj->GetMemberObject( "point_array" ));
|
|
m_pMem_total_point_vector_length = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "total_point_vector_length" ));
|
|
m_pMem_ofs_z = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "ofs_z" ));
|
|
m_pMem_start_time = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "start_time" ));
|
|
m_pMem_life_time = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "life_time" ));
|
|
m_pMem_emitter_size = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "emitter_size" ));
|
|
m_pMem_emitter_array = reinterpret_cast<KTemplateDataArrayObject*>(m_pObj->GetMemberObject( "emitter_array" ));
|
|
m_pMem_bool_has_polyline = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "bool_has_polyline" ));
|
|
m_pMem_polyline_width = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "polyline_width" ));
|
|
m_pMem_polyline_color = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "polyline_color" ));
|
|
m_pMem_polyline_texname = reinterpret_cast<KSimpleDataObject*>(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<KSimpleDataObject*>(m_pObj->GetMemberObject( "pfx_object_size" ));
|
|
m_pMem_pfx_object_array = reinterpret_cast<KTemplateDataArrayObject*>(m_pObj->GetMemberObject( "pfx_object_array" ));
|
|
m_pMem_bool_directional = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "bool_directional" ));
|
|
m_pMem_mag = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "mag" ));
|
|
m_pMem_bool_end_together = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "bool_end_together" ));
|
|
}
|
|
KFT_pfx_chain_header( KTemplateDataObject *pObj )
|
|
{
|
|
m_pObj = pObj;
|
|
m_pMem_pfx_object_size = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "pfx_object_size" ));
|
|
m_pMem_pfx_object_array = reinterpret_cast<KTemplateDataArrayObject*>(m_pObj->GetMemberObject( "pfx_object_array" ));
|
|
m_pMem_bool_directional = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "bool_directional" ));
|
|
m_pMem_mag = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "mag" ));
|
|
m_pMem_bool_end_together = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "bool_end_together" ));
|
|
}
|
|
~KFT_pfx_chain_header()
|
|
{
|
|
}
|
|
void SetDataObject( KTemplateDataObject *pObj )
|
|
{
|
|
m_pObj = pObj;
|
|
m_pMem_pfx_object_size = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "pfx_object_size" ));
|
|
m_pMem_pfx_object_array = reinterpret_cast<KTemplateDataArrayObject*>(m_pObj->GetMemberObject( "pfx_object_array" ));
|
|
m_pMem_bool_directional = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "bool_directional" ));
|
|
m_pMem_mag = reinterpret_cast<KSimpleDataObject*>(m_pObj->GetMemberObject( "mag" ));
|
|
m_pMem_bool_end_together = reinterpret_cast<KSimpleDataObject*>(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 |