CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DictionaryTools.h
Go to the documentation of this file.
1 #ifndef FWCore_Reflection_DictionaryTools_h
2 #define FWCore_Reflection_DictionaryTools_h
3 
4 /*----------------------------------------------------------------------
5 
6 DictionaryTools provides a small number of dictionary based tools, used in
7 the CMS event model.
8 
9 ----------------------------------------------------------------------*/
10 
11 #include <set>
12 #include <string>
13 #include <vector>
14 
15 class TClass;
16 
17 namespace edm {
18 
19  class Exception;
20  class TypeID;
21  class TypeWithDict;
22 
23  bool checkDictionary(std::vector<std::string>& missingDictionaries, TypeID const& typeID);
24 
25  bool checkDictionaryOfWrappedType(std::vector<std::string>& missingDictionaries, TypeID const& unwrappedTypeID);
26 
27  bool checkDictionaryOfWrappedType(std::vector<std::string>& missingDictionaries, std::string const& unwrappedName);
28 
29  bool checkDictionary(std::vector<std::string>& missingDictionaries,
30  std::string const& name,
31  TypeWithDict const& typeWithDict);
32 
33  bool checkClassDictionaries(std::vector<std::string>& missingDictionaries, TypeID const& typeID);
34 
35  bool checkClassDictionaries(std::vector<std::string>& missingDictionaries,
36  std::string const& name,
37  TypeWithDict const& typeWithDict);
38 
40  std::vector<std::string>& missingDictionaries,
41  std::string const& context);
42 
43  void throwMissingDictionariesException(std::vector<std::string>& missingDictionaries, std::string const& context);
44 
45  void throwMissingDictionariesException(std::vector<std::string>& missingDictionaries,
46  std::string const& context,
47  std::vector<std::string>& producedTypes);
48 
49  void throwMissingDictionariesException(std::vector<std::string>& missingDictionaries,
50  std::string const& context,
51  std::vector<std::string>& producedTypes,
52  std::vector<std::string>& branchNames,
53  bool fromStreamerSource = false);
54 
55  void throwMissingDictionariesException(std::vector<std::string>& missingDictionaries,
56  std::string const& context,
57  std::set<std::string>& producedTypes,
58  bool consumedWithView);
59 
60  bool public_base_classes(std::vector<std::string>& missingDictionaries,
61  TypeID const& typeID,
62  std::vector<TypeWithDict>& baseTypes);
63 } // namespace edm
64 
65 #endif // FWCore_Reflection_DictionaryTools_h
void throwMissingDictionariesException(std::vector< std::string > &missingDictionaries, std::string const &context)
bool public_base_classes(std::vector< std::string > &missingDictionaries, TypeID const &typeID, std::vector< TypeWithDict > &baseTypes)
bool checkDictionary(std::vector< std::string > &missingDictionaries, TypeID const &typeID)
bool checkClassDictionaries(std::vector< std::string > &missingDictionaries, TypeID const &typeID)
void addToMissingDictionariesException(edm::Exception &exception, std::vector< std::string > &missingDictionaries, std::string const &context)
bool checkDictionaryOfWrappedType(std::vector< std::string > &missingDictionaries, TypeID const &unwrappedTypeID)
tuple branchNames
Definition: haddnano.py:54