MCPcopy Create free account
hub / github.com/TorqueGameEngines/Torque3D / writeDataTable

Method writeDataTable

Engine/source/Verve/Core/VController.cpp:610–634  ·  view source on GitHub ↗

----------------------------------------------------------------------------- VController::writeDataTable( pElement ); Write the DataTable out to a TinyXML document. -----------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

608//
609//-----------------------------------------------------------------------------
610bool VController::writeDataTable( tinyxml2::XMLElement *pElement )
611{
612 // Create Data Table Root.
613 tinyxml2::XMLElement *dataTableRoot = pElement->GetDocument()->NewElement( "DataTable" );
614 pElement->LinkEndChild( dataTableRoot );
615
616 for ( VDataTable::VDataMap::Iterator itr = mDataTable.mDataMap.begin(); itr != mDataTable.mDataMap.end(); ++itr )
617 {
618 // Fetch Data.
619 VDataTable::sDataItem *data = &itr->value;
620
621 // Create Element.
622 tinyxml2::XMLElement* dataElement = pElement->GetDocument()->NewElement( "DataItem" );
623
624 // Apply Attributes.
625 dataElement->SetAttribute( "Type", VDataTable::getDataTypeDescription( data->Type ) );
626 dataElement->SetAttribute( "Name", data->FieldName.c_str() );
627 dataElement->SetAttribute( "Value", getDataField( StringTable->insert( data->FieldName.c_str() ), NULL ) );
628
629 // Add.
630 dataTableRoot->LinkEndChild( dataElement );
631 }
632
633 return true;
634}
635
636//-----------------------------------------------------------------------------
637//

Callers 1

writeFunction · 0.45

Calls 6

NewElementMethod · 0.80
beginMethod · 0.45
endMethod · 0.45
SetAttributeMethod · 0.45
c_strMethod · 0.45
insertMethod · 0.45

Tested by

no test coverage detected