CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ExtractStringFromDDD.cc
Go to the documentation of this file.
4 #include <vector>
5 #include <string>
6 
7 using namespace cms;
8 
9 std::string ExtractStringFromDDD::getString(std::string const & s,DDFilteredView* fv){
10  DDValue val(s);
11  std::vector<const DDsvalues_type *> result;
12  fv->specificsV(result);
13  std::vector<const DDsvalues_type *>::iterator it = result.begin();
14  bool foundIt = false;
15  for (; it != result.end(); ++it) {
16  foundIt = DDfetch(*it,val);
17  if (foundIt) break;
18  }
19  if (foundIt) {
20  std::vector<std::string> const & temp = val.strings();
21  if (temp.size() != 1) {
22  throw cms::Exception("Configuration")<< " ERROR: I need 1 "<< s << " tags";
23  }
24  return temp[0];
25  }
26  return "NotFound";
27 }
static std::string getString(std::string const &, DDFilteredView *)
bool DDfetch(const DDsvalues_type *, DDValue &)
helper for retrieving DDValues from DDsvalues_type *.
Definition: DDsvalues.cc:102
tuple result
Definition: query.py:137
const std::vector< std::string > & strings() const
a reference to the std::string-valued values stored in the given instance of DDValue ...
Definition: DDValue.h:76
void specificsV(std::vector< const DDsvalues_type * > &result) const
User specific data attached to the current node.
string s
Definition: asciidump.py:422