Elements  6.2
A C++ base framework for the Euclid Software.
Auxiliary.h
Go to the documentation of this file.
1 
34 #ifndef ELEMENTSKERNEL_ELEMENTSKERNEL_AUXILIARY_H_
35 #define ELEMENTSKERNEL_ELEMENTSKERNEL_AUXILIARY_H_
36 
37 #include <string> // for string
38 #include <vector> // for vector
39 
40 #include "ElementsKernel/Export.h" // ELEMENTS_API
41 #include "ElementsKernel/Path.h" // for Path::Item
42 
43 namespace Elements {
44 inline namespace Kernel {
45 
53 
54 template <typename T>
55 ELEMENTS_API Path::Item getAuxiliaryPath(const T& file_name, bool raise_exception = true);
56 
57 // instantiation of the most expected types
58 extern template ELEMENTS_API Path::Item getAuxiliaryPath(const Path::Item& file_name, bool raise_exception);
59 extern template ELEMENTS_API Path::Item getAuxiliaryPath(const std::string& file_name, bool raise_exception);
60 
62 
63 namespace Auxiliary {
64 
71 
81 template <typename T>
82 ELEMENTS_API Path::Item getPath(const T& file_name, bool raise_exception = true);
83 
84 // instantiation of the most expected types
85 extern template ELEMENTS_API Path::Item getPath(const Path::Item& file_name, bool raise_exception);
86 extern template ELEMENTS_API Path::Item getPath(const std::string& file_name, bool raise_exception);
87 
93 ELEMENTS_API std::vector<Path::Item> getLocations(bool exist_only = false);
94 
95 } // namespace Auxiliary
96 
101 } // namespace Kernel
102 } // namespace Elements
103 
104 #define ELEMENTSKERNEL_ELEMENTSKERNEL_AUXILIARY_IMPL_
106 #undef ELEMENTSKERNEL_ELEMENTSKERNEL_AUXILIARY_IMPL_
107 
108 #endif // ELEMENTSKERNEL_ELEMENTSKERNEL_AUXILIARY_H_
109 
Elements::Kernel::Path::Item
boost::filesystem::path Item
Definition: Path.h:56
Export.h
defines the macros to be used for explicit export of the symbols
Elements::Kernel::Auxiliary::getVariableName
ELEMENTS_API std::string getVariableName()
alias for the getAuxiliaryVariableName function
Definition: Auxiliary.cpp:72
std::string
STL class.
Path.h
provide functions to retrieve resources pointed by environment variables
std::vector
STL class.
Elements::Kernel::getAuxiliaryLocations
ELEMENTS_API std::vector< Path::Item > getAuxiliaryLocations(bool exist_only=false)
Definition: Auxiliary.cpp:49
ELEMENTS_API
#define ELEMENTS_API
Dummy definitions for the backward compatibility mode.
Definition: Export.h:74
Elements::Kernel::getAuxiliaryVariableName
ELEMENTS_API std::string getAuxiliaryVariableName()
retrieve the variable name used for the auxiliary file lookup
Definition: Auxiliary.cpp:41
Elements::Kernel::Auxiliary::getLocations
ELEMENTS_API std::vector< Path::Item > getLocations(bool exist_only=false)
alias for the getAuxiliaryLocations function
Definition: Auxiliary.cpp:80
Elements::Kernel::getAuxiliaryPath
ELEMENTS_API Path::Item getAuxiliaryPath(const T &file_name, bool raise_exception=true)
Auxiliary.tpp
Elements::Kernel::Auxiliary::getPath
template ELEMENTS_API Path::Item getPath(const std::string &file_name, bool raise_exception)
Elements
Definition: callBackExample.h:35