本文整理汇总了C++中DataItem::getElementName方法的典型用法代码示例。如果您正苦于以下问题:C++ DataItem::getElementName方法的具体用法?C++ DataItem::getElementName怎么用?C++ DataItem::getElementName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DataItem
的用法示例。
在下文中一共展示了DataItem::getElementName方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: addEvent
void XmlPrinter::addEvent (xmlTextWriterPtr writer, ComponentEvent *result)
{
DataItem *dataItem = result->getDataItem( );
if ( dataItem->isCondition( ) )
{
THROW_IF_XML2_ERROR(xmlTextWriterStartElement(writer, BAD_CAST result->getLevelString( ).c_str( )));
}
else
{
xmlChar *element = NULL;
if ( !dataItem->getPrefix( ).empty( ) )
{
map<string, SchemaNamespace>::iterator ns = sStreamsNamespaces.find(dataItem->getPrefix( ));
if ( ns != sStreamsNamespaces.end( ) )
{
element = BAD_CAST dataItem->getPrefixedElementName( ).c_str( );
}
}
if ( element == NULL )
{
element = BAD_CAST dataItem->getElementName( ).c_str( );
}
THROW_IF_XML2_ERROR(xmlTextWriterStartElement(writer, element));
}
addAttributes(writer, result->getAttributes( ));
if ( result->isTimeSeries( ) )
{
ostringstream ostr;
ostr.precision(6);
const vector<float> & v = result->getTimeSeries( );
for ( size_t i = 0; i < v.size( ); i++ )
{
ostr << v[i] << ' ';
}
string str = ostr.str( );
THROW_IF_XML2_ERROR(xmlTextWriterWriteString(writer, BAD_CAST str.c_str( )));
}
else if ( !result->getValue( ).empty( ) )
{
xmlChar *text = xmlEncodeEntitiesReentrant(NULL, BAD_CAST result->getValue( ).c_str( ));
THROW_IF_XML2_ERROR(xmlTextWriterWriteString(writer, text));
xmlFree(text);
}
THROW_IF_XML2_ERROR(xmlTextWriterEndElement(writer)); // Streams
}