File indexing completed on 2025-08-06 08:17:58
0001 #ifndef PHFIELD_PHFIELDUTILITY_H
0002 #define PHFIELD_PHFIELDUTILITY_H
0003
0004 #include <string>
0005
0006 class PHCompositeNode;
0007 class PHField;
0008 class PHFieldConfig;
0009
0010
0011 class PHFieldUtility
0012 {
0013 public:
0014
0015
0016
0017
0018 static PHFieldConfig *DefaultFieldConfig();
0019
0020
0021
0022
0023 static PHField *
0024 GetFieldMapNode(const PHFieldConfig *default_config = nullptr, PHCompositeNode *topNode = nullptr, const int verbosity = 0);
0025
0026
0027
0028
0029 static PHFieldConfig *
0030 GetFieldConfigNode(const PHFieldConfig *default_config = nullptr, PHCompositeNode *topNode = nullptr, const int verbosity = 0);
0031
0032
0033 static PHField *
0034 BuildFieldMap(const PHFieldConfig *field_config, float inner_radius = 0., float outer_radius = 1.e10, float size_z = 1.e10, const int verbosity = 0);
0035
0036
0037 static std::string
0038 GetDSTFieldMapNodeName()
0039 {
0040 return std::string("FIELD_MAP");
0041 }
0042
0043
0044 static std::string
0045 GetDSTConfigNodeName()
0046 {
0047 return std::string("FIELD_CONFIG");
0048 }
0049
0050 private:
0051
0052 PHFieldUtility() = delete;
0053 ~PHFieldUtility() = delete;
0054 };
0055
0056 #endif