コード例 #1
0
ファイル: deviceparser.cpp プロジェクト: bilgili/FlowVR
void DeviceParser::getInputs(string tagname, multimap<string, std::string> &m)
{
  setNode(tagname);
  DOMNode * temp = node->FirstChildElement();

  while (temp)
  {
    if (temp->ValueStr().compare("button") == 0	||
	temp->ValueStr().compare("slider") == 0 ||
	temp->ValueStr().compare("sensor") == 0)
      m.insert(pair<string, std::string>(getAttribute(temp,"name"), getAttribute(temp,"id")));

    else if (temp->ValueStr().compare("dpad") == 0 ||
	     temp->ValueStr().compare("stick") == 0 )
    {
      m.insert(pair<string, std::string>(getAttribute(temp,"name"), getAttribute(temp,"idtd")));
      m.insert(pair<string, std::string>(getAttribute(temp,"name"), getAttribute(temp,"idlr")));
    }
    else if (temp->ValueStr().compare("tracker2room") == 0 ||
	     temp->ValueStr().compare("workspace") == 0)
    {
      m.insert(pair<string, std::string>("type", getAttribute(temp,"type")));
    }
    
    temp = temp->NextSiblingElement();
  }

  delete temp;
}