您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ BAD_CAST函数代码示例

51自学网 2021-06-01 19:48:44
  C++
这篇教程C++ BAD_CAST函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中BAD_CAST函数的典型用法代码示例。如果您正苦于以下问题:C++ BAD_CAST函数的具体用法?C++ BAD_CAST怎么用?C++ BAD_CAST使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了BAD_CAST函数的25个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: gen_nc_xml

int gen_nc_xml(const struct nc_state_t *nc_state_param){    int ret = EUCA_ERROR;    char path[MAX_PATH] = "";    xmlDocPtr doc = NULL;    xmlNodePtr nc = NULL;    xmlNodePtr version = NULL;    xmlNodePtr enabled = NULL;    INIT();    pthread_mutex_lock(&xml_mutex);    {        doc = xmlNewDoc(BAD_CAST "1.0");        nc = xmlNewNode(NULL, BAD_CAST "nc");        xmlDocSetRootElement(doc, nc);        version = xmlNewChild(nc, NULL, BAD_CAST "version", BAD_CAST(nc_state_param->version));        enabled = xmlNewChild(nc, NULL, BAD_CAST "enabled", BAD_CAST(nc_state_param->is_enabled ? "true" : "false"));        snprintf(path, sizeof(path), EUCALYPTUS_NC_STATE_FILE, nc_state.home);        ret = write_xml_file(doc, "global", path, "nc");        xmlFreeDoc(doc);    }    pthread_mutex_unlock(&xml_mutex);    return (ret);}
开发者ID:NalaGinrut,项目名称:eucalyptus,代码行数:28,


示例2: while

BOOL CLibXmlXmlParser::SetElementValue( LPCTSTR strElementName, LPCTSTR strValue ){    BOOL bResult = FALSE;    if( this->m_pXMLRootNode )    {        xmlNodePtr pChild = this->m_pXMLRootNode->children;        while( pChild )        {            if( xmlStrcmp( pChild->name , BAD_CAST(strElementName) ) == 0 )            {                break;            }            pChild = pChild->next;        }        if( !pChild )        {            //			pChild = xmlNewNode(NULL , BAD_CAST ( strEleName ));            pChild = xmlNewChild( this->m_pXMLRootNode, NULL, BAD_CAST(strElementName), BAD_CAST(strValue) );        }        if( pChild )        {            xmlNodeSetContent( pChild,  BAD_CAST( strValue ) );            //pChild->content = BAD_CAST( strValue );        }        bResult = ( NULL != pChild );    }    // 写完保存。    bResult &= this->SaveXML();    return bResult;}
开发者ID:dalinhuang,项目名称:ffmpeg-port,代码行数:33,


示例3: parseHttpStyle

static int parseHttpStyle(xmlDocPtr doc, xmlNodePtr cur){	xmlChar * temp;	int ret=1;	cur = cur->xmlChildrenNode;	while(cur!=NULL){		if(!xmlStrcmp(cur->name,(const xmlChar *)"packetLength")){			temp = xmlNodeListGetString(doc,cur->xmlChildrenNode,1);			if(temp!=NULL){				httpConTemp->packetLength=atoi((char *)temp);				if(httpConTemp->packetLength>MAXLENGTH)					httpConTemp->packetLength=MAXLENGTH;			}			else{				printf("X Error: read xml 'style.packetLength' Wrong./n");				ret &= 0;			}			xmlFree(temp);		}		else if(!xmlStrcmp(cur->name,(const xmlChar *)"dataHeader")){			parseHttpDataHeader(doc,cur);		}		else if(!xmlStrcmp(cur->name,(const xmlChar *)"data")){			temp = xmlGetProp(cur,BAD_CAST("random"));			if(xmlStrcmp(temp,BAD_CAST("true"))==0)				httpConTemp->dataRandom = 1;			else				httpConTemp->dataRandom = 2;			xmlFree(temp);			parseHttpData(doc,cur,httpConTemp->dataRandom);		}		cur = cur->next;	}	return ret;}
开发者ID:bannerzhu,项目名称:mygit,代码行数:35,


示例4: xmlNewNode

/**/brief Save this Planet to an xml node */xmlNodePtr Planet::ToXMLNode(string componentName) {	char buff[256];	xmlNodePtr section = xmlNewNode(NULL, BAD_CAST componentName.c_str() );	xmlNewChild(section, NULL, BAD_CAST "name", BAD_CAST this->GetName().c_str() );	xmlNewChild(section, NULL, BAD_CAST "alliance", BAD_CAST this->GetAlliance()->GetName().c_str() );	snprintf(buff, sizeof(buff), "%d", (int)this->GetWorldPosition().GetX() );	xmlNewChild(section, NULL, BAD_CAST "x", BAD_CAST buff );	snprintf(buff, sizeof(buff), "%d", (int)this->GetWorldPosition().GetY() );	xmlNewChild(section, NULL, BAD_CAST "y", BAD_CAST buff );	xmlNewChild(section, NULL, BAD_CAST "landable", BAD_CAST (this->GetLandable()?"1":"0") );	snprintf(buff, sizeof(buff), "%d", this->GetTraffic() );	xmlNewChild(section, NULL, BAD_CAST "traffic", BAD_CAST buff );	xmlNewChild(section, NULL, BAD_CAST "image", BAD_CAST this->GetImage()->GetPath().c_str() );	snprintf(buff, sizeof(buff), "%d", this->GetMilitiaSize() );	xmlNewChild(section, NULL, BAD_CAST "militia", BAD_CAST buff );	snprintf(buff, sizeof(buff), "%d", this->GetInfluence() );	xmlNewChild(section, NULL, BAD_CAST "sphereOfInfluence", BAD_CAST buff );	list<Technology*> techs = this->GetTechnologies();	for( list<Technology*>::iterator it = techs.begin(); it!=techs.end(); ++it ){		xmlNewChild(section, NULL, BAD_CAST "technology", BAD_CAST (*it)->GetName().c_str() );	}	return section;}
开发者ID:Maka7879,项目名称:Epiar,代码行数:27,


示例5: xml_out_string

static voidxml_out_string (xmlTextWriterPtr xml, const char *name, const char *value){    xmlTextWriterStartElement (xml, BAD_CAST ("option"));    xmlTextWriterWriteAttribute (xml, BAD_CAST ("name"), BAD_CAST (name));    xmlTextWriterWriteAttribute (xml, BAD_CAST ("value"), BAD_CAST (value));    xmlTextWriterEndElement (xml);}
开发者ID:7sevenx7,项目名称:snes9x,代码行数:8,


示例6: contact_core

History::Contact::Contact (boost::shared_ptr<Ekiga::ContactCore> _contact_core,			   boost::shared_ptr<xmlDoc> _doc,			   xmlNodePtr _node):  contact_core(_contact_core), doc(_doc), node(_node){  xmlChar* xml_str = NULL;  xml_str = xmlGetProp (node, (const xmlChar *)"type");  if (xml_str != NULL) {    m_type = (call_type)(xml_str[0] - '0'); // FIXME: I don't like it!    xmlFree (xml_str);  }  xml_str = xmlGetProp (node, (const xmlChar *)"uri");  if (xml_str != NULL) {    uri = (const char *)xml_str;    xmlFree (xml_str);  }  for (xmlNodePtr child = node->children ;       child != NULL ;       child = child->next) {    if (child->type == XML_ELEMENT_NODE        && child->name != NULL) {      if (xmlStrEqual (BAD_CAST ("name"), child->name)) {        xml_str = xmlNodeGetContent (child);	if (xml_str != NULL)	  name = (const char *)xml_str;        xmlFree (xml_str);      }      if (xmlStrEqual (BAD_CAST ("call_start"), child->name)) {        xml_str = xmlNodeGetContent (child);	if (xml_str != NULL)	  call_start = (time_t) atoi ((const char *) xml_str);        xmlFree (xml_str);      }      if (xmlStrEqual (BAD_CAST ("call_duration"), child->name)) {        xml_str = xmlNodeGetContent (child);	if (xml_str != NULL)	  call_duration = (const char *) xml_str;        xmlFree (xml_str);      }    }  }}
开发者ID:Klom,项目名称:ekiga,代码行数:54,


示例7: xen_init

voidxen_init(void){    responsePath =        xmlXPathCompile(            BAD_CAST(                "/methodResponse/params/param/value/struct/member/value"));    faultPath =        xmlXPathCompile(            BAD_CAST("/methodResponse/fault/value/struct/member/value"));}
开发者ID:Angel666,项目名称:android_hardware_intel,代码行数:11,


示例8: xml_out_binding

static voidxml_out_binding (xmlTextWriterPtr xml, const char *name, unsigned int value){    char string[1024];    snprintf (string, 1024, "%u", value);    xmlTextWriterStartElement (xml, BAD_CAST ("binding"));    xmlTextWriterWriteAttribute (xml, BAD_CAST ("name"), BAD_CAST (name));    xmlTextWriterWriteAttribute (xml, BAD_CAST ("binding"), BAD_CAST (string));    xmlTextWriterEndElement (xml);}
开发者ID:7sevenx7,项目名称:snes9x,代码行数:11,


示例9: parsePacketTime

static int parsePacketTime (xmlDocPtr doc, xmlNodePtr cur){	xmlChar * temp;	int flag_ptime_random;	int ptime_value,ptime_meth;	int ret=1;	temp = xmlGetProp(cur,BAD_CAST("random"));	if(temp!=NULL){		if(xmlStrcmp(temp,BAD_CAST("false"))==0)			flag_ptime_random = 2;		else			flag_ptime_random = 1;		xmlFree(temp);		cur = cur->xmlChildrenNode;		while(cur!=NULL){			if(flag_ptime_random==2&&!xmlStrcmp(cur->name,(const xmlChar *)"value")){				temp=xmlNodeListGetString(doc,cur->xmlChildrenNode,1);				if(temp!=NULL){					ptime_value = atoi((char *)temp);				}				else{					printf("X Error: read xml 'packetTime.value' Wrong./n");					ret &= 0;				}				xmlFree(temp);			}			else if(flag_ptime_random==1&&!xmlStrcmp(cur->name,(const xmlChar *)"scope")){				ret &= parsePacketTimeScope(doc,cur);			}			else if(flag_ptime_random==1&&!xmlStrcmp(cur->name,(const xmlChar *)"meth")){				temp=xmlNodeListGetString(doc,cur->xmlChildrenNode,1);				if(temp!=NULL){					ptime_meth = atoi((char *)temp);				}				else{					printf("X Error: read xml 'packetTime.meth' Wrong./n");					ret &= 0;				}				xmlFree(temp);			}			cur = cur->next;		}		ddosc->packetTimels = get_packetTime(flag_ptime_random,											ptime_value,											ptime_from,ptime_to,ptime_meth);	}	else{		printf("X Error: read xml 'packetTime.random' Wrong./n");		xmlFree(temp);		return 0;	}	return ret;}
开发者ID:bannerzhu,项目名称:mygit,代码行数:53,


示例10: core

History::Contact::Contact (Ekiga::ServiceCore &_core,			   xmlNodePtr _node):  core(_core), node(_node){  xmlChar *xml_str;  contact_core    = dynamic_cast<Ekiga::ContactCore*>(core.get ("contact-core"));  xml_str = xmlGetProp (node, (const xmlChar *)"type");  if (xml_str != NULL)    m_type = (call_type)(xml_str[0] - '0'); // FIXME: I don't like it!  xmlFree (xml_str);  xml_str = xmlGetProp (node, (const xmlChar *)"uri");  if (xml_str != NULL)    uri = (const char *)xml_str;  xmlFree (xml_str);  for (xmlNodePtr child = node->children ;       child != NULL ;       child = child->next) {    if (child->type == XML_ELEMENT_NODE        && child->name != NULL) {      if (xmlStrEqual (BAD_CAST ("name"), child->name)) {        xml_str = xmlNodeGetContent (child);	if (xml_str != NULL)	  name = (const char *)xml_str;        xmlFree (xml_str);      }      if (xmlStrEqual (BAD_CAST ("call_start"), child->name)) {        xml_str = xmlNodeGetContent (child);	if (xml_str != NULL)	  call_start = (time_t) atoi ((const char *) xml_str);        xmlFree (xml_str);      }      if (xmlStrEqual (BAD_CAST ("call_duration"), child->name)) {        xml_str = xmlNodeGetContent (child);	if (xml_str != NULL)	  call_duration = (const char *) xml_str;        xmlFree (xml_str);      }    }  }}
开发者ID:nightfly19,项目名称:renyang-learn,代码行数:52,


示例11: xar_link_lookup

static xar_file_t xar_link_lookup(xar_t x, dev_t dev, ino_t ino, xar_file_t f) {	char key[32];	xar_file_t ret;	memset(key, 0, sizeof(key));	snprintf(key, sizeof(key)-1, "%08" DEV_HEXSTRING "%08" INO_HEXSTRING, DEV_CAST dev, INO_CAST ino);	ret = xmlHashLookup(XAR(x)->ino_hash, BAD_CAST(key));	if( ret == NULL ) {		xmlHashAddEntry(XAR(x)->ino_hash, BAD_CAST(key), XAR_FILE(f));		return NULL;	}	return ret;}
开发者ID:ALEXGUOQ,项目名称:DocSets-for-iOS,代码行数:13,


示例12: cluster_getparam

/*------------------------------------------------------------------------------*/static voidcluster_getparam(int thr_nb, void *data, cl_error_desc_t *err_desc){  xmlDocPtr doc = NULL;  xmlNodePtr exanodes_node;  int ret;  exalog_debug("getparam");  /* Create XML document */  doc = xmlNewDoc(BAD_CAST("1.0"));  if (doc == NULL)  {    set_error(err_desc, -EXA_ERR_XML_INIT, "Failed to create result document");    return;  }  exanodes_node = xmlNewNode(NULL, BAD_CAST("Exanodes"));  if (exanodes_node == NULL)  {    set_error(err_desc, -EXA_ERR_XML_INIT,	      "Failed to create node in result document");    xmlFreeDoc(doc);    return;  }  xmlDocSetRootElement(doc, exanodes_node);  ret = build_response(exanodes_node);  if (ret ==  EXA_SUCCESS)    {      xmlChar *xmlchar_doc;      int buf_size;      xmlDocDumpFormatMemory(doc, &xmlchar_doc, &buf_size, 1);      send_payload_str((char *)xmlchar_doc);      xmlFree(xmlchar_doc);    }  xmlFreeDoc(doc);  set_error(err_desc, ret, NULL);}
开发者ID:OznOg,项目名称:OpenExanodes,代码行数:49,


示例13: config_get_value

const char * config_get_value(const char * _xpath) {    xmlXPathObjectPtr xmlobject = NULL;    const xmlChar * xpath = BAD_CAST(_xpath);    const xmlChar * value = NULL;            /* Rquete XPath*/    xmlobject = xmlXPathEval(xpath, config->context);    if (!xmlobject)        return NULL;        if (xmlobject->type == XPATH_NODESET) {         if (xmlobject->nodesetval) {             /* nodeNr = nb nodes in struct nodesetval */             if (xmlobject->nodesetval->nodeNr > 0) {                xmlNodePtr n;		                n = xmlobject->nodesetval->nodeTab[0];                if ((n->type == XML_TEXT_NODE) ||                     (n->type == XML_CDATA_SECTION_NODE))                    value = n->content;            }        }    }        xmlXPathFreeObject(xmlobject);        return (char *)value;}
开发者ID:frs69wq,项目名称:Simbatch,代码行数:30,


示例14: getXNodes

xmlNodeSetPtr getXNodes(xmlXPathContextPtr context, const gchar *xpath) {  xmlXPathObjectPtr xobj = xmlXPathEvalExpression(BAD_CAST(xpath), context);  xmlNodeSetPtr ret = xobj->nodesetval;  xmlXPathFreeNodeSetList(xobj);  return ret;}
开发者ID:twouters,项目名称:apt-dater,代码行数:7,


示例15: details

LM::Bank::Bank (boost::shared_ptr<Ekiga::PersonalDetails> details_,		boost::shared_ptr<Dialect> dialect_,		boost::shared_ptr<Cluster> cluster_):  details(details_), cluster(cluster_), dialect(dialect_), doc (NULL){  gchar* c_raw = gm_conf_get_string (JABBER_KEY);  if (c_raw != NULL) { // we already have it in store    const std::string raw = c_raw;    doc = xmlRecoverMemory (raw.c_str (), raw.length ());    xmlNodePtr root = xmlDocGetRootElement (doc);    if (root == NULL) {      root = xmlNewDocNode (doc, NULL, BAD_CAST "list", NULL);      xmlDocSetRootElement (doc, root);    }    for (xmlNodePtr child = root->children; child != NULL; child = child->next) {      if (child->type == XML_ELEMENT_NODE && child->name != NULL && xmlStrEqual (BAD_CAST ("entry"), child->name)) {	boost::shared_ptr<Account> account (new Account (details, dialect, cluster, child));	add (account);      }    }    g_free (c_raw);  } else { // create a new XML document    doc = xmlNewDoc (BAD_CAST "1.0");    xmlNodePtr root = xmlNewDocNode (doc, NULL, BAD_CAST "list", NULL);    xmlDocSetRootElement (doc, root);  }}
开发者ID:Klom,项目名称:ekiga,代码行数:35,


示例16: xmlNodeGetContent

voidLocal::Presentity::rename_group (const std::string old_name,				 const std::string new_name){  bool old_name_present = false;  bool already_in_new_name = false;  std::set<xmlNodePtr> nodes_to_remove;  /* remove the old name's node   * and check if we aren't already in the new name's group   */  for (xmlNodePtr child = node->children ;       child != NULL ;       child = child->next) {    if (child->type == XML_ELEMENT_NODE        && child->name != NULL) {      if (xmlStrEqual (BAD_CAST ("group"), child->name)) {	xmlChar* xml_str = xmlNodeGetContent (child);	if (xml_str != NULL) {	  if (!xmlStrcasecmp ((const xmlChar*)old_name.c_str (), xml_str)) {	    nodes_to_remove.insert (child); // don't free what we loop on!            old_name_present = true;	  }	  if (!xmlStrcasecmp ((const xmlChar*)new_name.c_str (), xml_str)) {	    already_in_new_name = true;	  }	  xmlFree (xml_str);	}      }    }  }  // ok, now we can clean up!  for (std::set<xmlNodePtr>::iterator iter = nodes_to_remove.begin ();       iter != nodes_to_remove.end ();       ++iter) {    xmlUnlinkNode (*iter);    xmlFreeNode (*iter);  }  if (old_name_present && !already_in_new_name) {    xmlNewChild (node, NULL,		 BAD_CAST "group",		 BAD_CAST robust_xmlEscape (node->doc,					    new_name).c_str ());  }  updated ();  trigger_saving ();}
开发者ID:Klom,项目名称:ekiga,代码行数:60,


示例17: xmlDocGetRootElement

voidRL::Heap::parse_doc (std::string raw){  doc = std::tr1::shared_ptr<xmlDoc> (xmlRecoverMemory (raw.c_str (), raw.length ()), xmlFreeDoc);  if ( !doc)    doc = std::tr1::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);  xmlNodePtr doc_root = xmlDocGetRootElement (doc.get ());  if (doc_root == NULL      || doc_root->name == NULL      || !xmlStrEqual (BAD_CAST "resource-lists", doc_root->name)) {    std::cout << "Invalid document in " << __PRETTY_FUNCTION__ << std::endl;    // FIXME: warn the user somehow?    doc.reset ();  } else {    for (xmlNodePtr child = doc_root->children;	 child != NULL;	 child = child->next)      if (child->type == XML_ELEMENT_NODE	  && child->name != NULL	  && xmlStrEqual (BAD_CAST ("list"), child->name)) {	parse_list (child);	break; // read only one!      }  }}
开发者ID:NeoWing,项目名称:ekiga-3.2.7,代码行数:30,


示例18: analyze_board

static xmlNodePtr analyze_board(Board *b){    xmlNodePtr anaNode;    anaNode = xmlNewNode(NULL, BAD_CAST("analysis"));    (void)b; /* TODO */    return anaNode;}
开发者ID:maksverver,项目名称:Pillars,代码行数:8,


示例19: m_relsByType

libvisio::VSDXRelationships::VSDXRelationships(librevenge::RVNGInputStream *input)  : m_relsByType(), m_relsById(){  if (input)  {    const std::shared_ptr<xmlTextReader> reader(      xmlReaderForStream(input, nullptr, nullptr, XML_PARSE_NOBLANKS|XML_PARSE_NOENT|XML_PARSE_NONET|XML_PARSE_RECOVER),      xmlFreeTextReader);    if (reader)    {      bool inRelationships = false;      int ret = xmlTextReaderRead(reader.get());      while (ret == 1)      {        const xmlChar *name = xmlTextReaderConstName(reader.get());        if (name)        {          if (xmlStrEqual(name, BAD_CAST("Relationships")))          {            if (xmlTextReaderNodeType(reader.get()) == 1)            {              // VSD_DEBUG_MSG(("Relationships ON/n"));              inRelationships = true;            }            else if (xmlTextReaderNodeType(reader.get()) == 15)            {              // VSD_DEBUG_MSG(("Relationships OFF/n"));              inRelationships = false;            }          }          else if (xmlStrEqual(name, BAD_CAST("Relationship")))          {            if (inRelationships)            {              VSDXRelationship relationship(reader.get());              m_relsByType[relationship.getType()] = relationship;              m_relsById[relationship.getId()] = relationship;            }          }        }        ret = xmlTextReaderRead(reader.get());      }    }  }}
开发者ID:LibreOffice,项目名称:libvisio,代码行数:45,


示例20: evalXPath

xmlXPathObjectPtr evalXPath(xmlXPathContextPtr context, const gchar *xpath) {  xmlXPathObjectPtr result = xmlXPathEvalExpression(BAD_CAST(xpath), context);  if(result == NULL) {    g_warning("xmlXPathEvalExpression '%s' failed!/n", xpath);    exit(1);  }  return result;}
开发者ID:twouters,项目名称:apt-dater,代码行数:9,


示例21: xml_CreateDoc

xml_doc_info * SACONFIG_API xml_CreateDoc(char const * const xml_root, char const * const xml_base){	xml_doc_info * docinfo = NULL;	xmlDocPtr doc = NULL;	xmlNodePtr curNode = NULL;	xmlInitParser();	doc = xmlNewDoc(BAD_CAST("1.0"));	curNode = xmlNewNode(NULL, BAD_CAST(xml_root));	xmlDocSetRootElement(doc, curNode);	curNode = xmlNewChild(curNode, NULL, BAD_CAST(xml_base), NULL);	docinfo = (xml_doc_info *)malloc(sizeof(xml_doc_info));	memset(docinfo, 0, sizeof(xml_doc_info));	docinfo->isInitParser = true;	docinfo->doc = doc;	strcpy(docinfo->xml_root, xml_root);	strcpy(docinfo->xml_base, xml_base);	return docinfo;}
开发者ID:ADVANTECH-Corp,项目名称:WISEAgent,代码行数:19,


示例22: xmlNewNode

xmlNodePtr Lua::ConvertToXML( lua_State *L, int value_index, int key_index) {    int t;    char buff[1024];    xmlNodePtr section = xmlNewNode(NULL, BAD_CAST "value");    // Using lua_tostring will convert a value into a string.    // Never use this on a table key.    lua_pushvalue(L, key_index);    t = lua_type(L, key_index);    // Save the Key and keytype    xmlSetProp( section, BAD_CAST "key", BAD_CAST lua_tostring(L, lua_gettop(L)) );    xmlSetProp( section, BAD_CAST "keytype", BAD_CAST lua_typename(L, t));    lua_pop(L,1); // Pop the copied key now that we're done with it.    // Save the type    t = lua_type(L, value_index);    xmlSetProp( section, BAD_CAST "type", BAD_CAST lua_typename(L, t));    // Save the value    switch (t) {    case LUA_TBOOLEAN:        xmlNodeSetContent( section, BAD_CAST (lua_toboolean(L, value_index) ? "true" : "false"));        break;    case LUA_TNUMBER:        snprintf(buff, sizeof(buff), "%f", lua_tonumber(L, value_index) );        xmlNodeSetContent( section, BAD_CAST buff);        break;    case LUA_TSTRING:        xmlNodeSetContent( section, BAD_CAST lua_tostring(L, value_index) );        break;    case LUA_TTABLE:        lua_pushnil(L);        while(lua_next(L, value_index)) {            xmlAddChild( section, Lua::ConvertToXML(L, lua_gettop(L), lua_gettop(L)-1));            // Pop off this value            lua_pop(L, 1);        }        break;    case LUA_TNIL:    case LUA_TLIGHTUSERDATA:    case LUA_TFUNCTION:    case LUA_TUSERDATA:    case LUA_TTHREAD:        xmlAddChild( section, xmlNewComment( BAD_CAST "Cannot convert to XML"));        break;    default:        assert(0);        break;    }    return section;}
开发者ID:cthielen,项目名称:epiar,代码行数:55,


示例23: getsempkey

int getsempkey(void* lpxmlDoc,int* lpResult){    xmlDocPtr		 pxmlDoc;    xmlNodePtr		 cur;    xmlNodePtr		 curpath;    xmlXPathContextPtr	 context = NULL;    xmlXPathObjectPtr	 result	 = NULL;    xmlNodeSetPtr	 nodeset;    xmlAttrPtr		 attrPtr;    xmlChar		*key;    xmlChar		*xpath	 = BAD_CAST("/application/semkey");            pxmlDoc = (xmlDocPtr)lpxmlDoc;        cur = xmlDocGetRootElement(pxmlDoc);    if (cur == NULL)    {        printf("Can't get the root element/n");        return 0;    }    context = xmlXPathNewContext(pxmlDoc);    result  = xmlXPathEvalExpression(xpath, context);    xmlXPathFreeContext(context);               if (result != NULL)    {	 if (xmlXPathNodeSetIsEmpty(result->nodesetval) == 0)	 {	      nodeset = result->nodesetval;	      if(nodeset->nodeNr > 0)	      {		   curpath = nodeset->nodeTab[0];		   if(curpath != NULL)		   {			attrPtr = curpath->properties;			while (attrPtr != NULL)			{			    if (!xmlStrcmp(attrPtr->name, BAD_CAST "value"))			    {				 key = xmlGetProp(curpath,(const xmlChar *)"value");				 printf("semid: %s/n", key);				 *lpResult = atoi((char*)key);				 xmlFree(key);			    }			    attrPtr = attrPtr->next;		       }		  }	       	      }	 } 	xmlXPathFreeObject(result);    }    return 0;}
开发者ID:febwave,项目名称:netpoint,代码行数:55,


示例24: xmlNewNode

/**/brief Converts the Model to an XML node. */xmlNodePtr Model::ToXMLNode(string componentName) {	char buff[256];    xmlNodePtr section = xmlNewNode(NULL, BAD_CAST componentName.c_str());	xmlNewChild(section, NULL, BAD_CAST "name", BAD_CAST this->GetName().c_str() );	xmlNewChild(section, NULL, BAD_CAST "description", BAD_CAST this->GetDescription().c_str() );	xmlNewChild(section, NULL, BAD_CAST "image", BAD_CAST this->GetImage()->GetPath().c_str() );	xmlNewChild(section, NULL, BAD_CAST "engine", BAD_CAST this->GetDefaultEngine()->GetName().c_str() );	snprintf(buff, sizeof(buff), "%1.2f", this->GetMass() );	xmlNewChild(section, NULL, BAD_CAST "mass", BAD_CAST buff );	snprintf(buff, sizeof(buff), "%1.2f", this->GetRotationsPerSecond() );	xmlNewChild(section, NULL, BAD_CAST "rotationsPerSecond", BAD_CAST buff );	snprintf(buff, sizeof(buff), "%d", this->GetThrustOffset() );	xmlNewChild(section, NULL, BAD_CAST "thrustOffset", BAD_CAST buff );	snprintf(buff, sizeof(buff), "%1.1f", this->GetMaxSpeed() );	xmlNewChild(section, NULL, BAD_CAST "maxSpeed", BAD_CAST buff );	snprintf(buff, sizeof(buff), "%d", this->GetHullStrength() );	xmlNewChild(section, NULL, BAD_CAST "hullStrength", BAD_CAST buff );	snprintf(buff, sizeof(buff), "%d", this->GetShieldStrength() );	xmlNewChild(section, NULL, BAD_CAST "shieldStrength", BAD_CAST buff );	snprintf(buff, sizeof(buff), "%d", this->GetMSRP() );	xmlNewChild(section, NULL, BAD_CAST "msrp", BAD_CAST buff );	snprintf(buff, sizeof(buff), "%d", this->GetCargoSpace() );	xmlNewChild(section, NULL, BAD_CAST "cargoSpace", BAD_CAST buff );	char *ntos = (char*)malloc(256);	xmlNodePtr wsPtr = xmlNewNode(NULL, BAD_CAST "weaponSlots");	for(unsigned int w=0;w<weaponSlots.size();w++){		WeaponSlot *slot = &weaponSlots[w];		xmlNodePtr slotPtr = xmlNewNode(NULL, BAD_CAST "slot");		xmlNewChild(slotPtr, NULL, BAD_CAST "name", BAD_CAST slot->name.c_str() );		xmlNodePtr coordPtr = xmlNewNode(NULL, BAD_CAST "coord");		snprintf(ntos, 256, "%d", slot->x);		xmlNewChild(coordPtr, NULL, BAD_CAST "x", BAD_CAST ntos);		snprintf(ntos, 256, "%d", slot->y);		xmlNewChild(coordPtr, NULL, BAD_CAST "y", BAD_CAST ntos);		xmlAddChild(slotPtr, coordPtr);		snprintf(ntos, 256, "%.1f", slot->angle);		xmlNewChild(slotPtr, NULL, BAD_CAST "angle", BAD_CAST ntos);		snprintf(ntos, 256, "%.1f", slot->motionAngle);		xmlNewChild(slotPtr, NULL, BAD_CAST "motionAngle", BAD_CAST ntos);		xmlNewChild(slotPtr, NULL, BAD_CAST "content", BAD_CAST ((slot->content == NULL)		                                             ? ""		                                             : slot->content->GetName().c_str()) );		snprintf(ntos, 256, "%d", slot->firingGroup);		xmlNewChild(slotPtr, NULL, BAD_CAST "firingGroup", BAD_CAST ntos);		xmlAddChild(wsPtr, slotPtr);	}	xmlAddChild(section, wsPtr);	free(ntos);	return section;}
开发者ID:cthielen,项目名称:epiar,代码行数:56,


示例25: m_id

libvisio::VSDXRelationship::VSDXRelationship(xmlTextReaderPtr reader)  : m_id(), m_type(), m_target(){  if (reader)    // TODO: check whether we are actually parsing "Relationship" element  {    while (xmlTextReaderMoveToNextAttribute(reader))    {      const xmlChar *name = xmlTextReaderConstName(reader);      const xmlChar *value = xmlTextReaderConstValue(reader);      if (xmlStrEqual(name, BAD_CAST("Id")))        m_id = (const char *)value;      else if (xmlStrEqual(name, BAD_CAST("Type")))        m_type = (const char *)value;      else if (xmlStrEqual(name, BAD_CAST("Target")))        m_target = (const char *)value;    }    // VSD_DEBUG_MSG(("Relationship : %s type: %s target: %s/n", m_id.c_str(), m_type.c_str(), m_target.c_str()));  }}
开发者ID:LibreOffice,项目名称:libvisio,代码行数:20,



注:本文中的BAD_CAST函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ BAD_MADT_ENTRY函数代码示例
C++ BAD函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。