Skip to content

Commit fd7777f

Browse files
committed
other minor changes to get DICe building on linux
this issue has to do with newer versions of gcc(8) that enforce static asserts on comparators
1 parent 82fa959 commit fd7777f

File tree

2 files changed

+63
-97
lines changed

2 files changed

+63
-97
lines changed

src/base/DICe_FieldEnums.cpp

Lines changed: 47 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -211,7 +211,7 @@ void create_string_maps()
211211
field_name_string[field_enums::UNCERTAINTY] = "UNCERTAINTY";
212212
field_name_string[field_enums::UNCERTAINTY_ANGLE] = "UNCERTAINTY_ANGLE";
213213
field_name_string[field_enums::STEREO_M_MAX] = "STEREO_M_MAX";
214-
field_name_string[field_enums::PROJECTION_Z] = "PROJECTION_Z";
214+
field_name_string[field_enums::PROJECTION_Z] = "PROJECTION_Z";
215215
field_name_string[field_enums::PROJECTION_PHI] = "PROJECTION_PHI";
216216
field_name_string[field_enums::PROJECTION_THETA] = "PROJECTION_THETA";
217217
field_name_string[field_enums::ROT_TRANS_3D_ANG_X] = "ROT_TRANS_3D_ANG_X";
@@ -221,8 +221,6 @@ void create_string_maps()
221221
field_name_string[field_enums::ROT_TRANS_3D_TRANS_Y] = "ROT_TRANS_3D_TRANS_Y";
222222
field_name_string[field_enums::ROT_TRANS_3D_TRANS_Z] = "ROT_TRANS_3D_TRANS_Z";
223223

224-
225-
226224
for (std::map<field_enums::Field_Type,std::string>::iterator pos = field_type_string.begin(); pos != field_type_string.end(); ++pos){
227225
string_field_type[pos->second] = pos->first;
228226
}
@@ -235,53 +233,45 @@ void create_string_maps()
235233
}
236234

237235
DICE_LIB_DLL_EXPORT
238-
std::string tostring(const field_enums::Field_Type & field_type)
239-
{
236+
std::string tostring(const field_enums::Field_Type & field_type){
240237
create_string_maps();
241238
std::map<field_enums::Field_Type,std::string>::iterator pos=field_type_string.find(field_type);
242-
if (pos == field_type_string.end())
243-
{
244-
std::stringstream oss;
245-
oss << "Unknown field type: " << field_type << std::endl;
246-
TEUCHOS_TEST_FOR_EXCEPTION(true,std::invalid_argument,oss.str());
247-
}
248-
return pos->second;
239+
if(field_type_string.count(field_type) == 0){
240+
std::stringstream oss;
241+
oss << "Unknown field type: " << field_type << std::endl;
242+
TEUCHOS_TEST_FOR_EXCEPTION(true,std::invalid_argument,oss.str());
243+
}
244+
return pos->second;
249245
}
250246
DICE_LIB_DLL_EXPORT
251-
std::string tostring(const field_enums::Field_Name & field_name)
252-
{
247+
std::string tostring(const field_enums::Field_Name & field_name){
253248
create_string_maps();
254249
std::map<field_enums::Field_Name,std::string>::iterator pos=field_name_string.find(field_name);
255-
if (pos == field_name_string.end())
256-
{
257-
std::stringstream oss;
258-
oss << "Unknown field name: " << field_name << std::endl;
259-
TEUCHOS_TEST_FOR_EXCEPTION(true,std::invalid_argument,oss.str());
260-
}
261-
return pos->second;
250+
if(field_name_string.count(field_name)==0){
251+
std::stringstream oss;
252+
oss << "Unknown field name: " << field_name << std::endl;
253+
TEUCHOS_TEST_FOR_EXCEPTION(true,std::invalid_argument,oss.str());
254+
}
255+
return pos->second;
262256
}
263257
DICE_LIB_DLL_EXPORT
264-
std::string tostring(const field_enums::Entity_Rank & entity_rank)
265-
{
258+
std::string tostring(const field_enums::Entity_Rank & entity_rank){
266259
create_string_maps();
267260
std::map<field_enums::Entity_Rank,std::string>::iterator pos=entity_rank_string.find(entity_rank);
268-
if (pos == entity_rank_string.end())
269-
{
270-
std::stringstream oss;
271-
oss << "Unknown field type: " << entity_rank << std::endl;
272-
TEUCHOS_TEST_FOR_EXCEPTION(true,std::invalid_argument,oss.str());
273-
}
274-
return pos->second;
261+
if(entity_rank_string.count(entity_rank)==0){
262+
std::stringstream oss;
263+
oss << "Unknown field type: " << entity_rank << std::endl;
264+
TEUCHOS_TEST_FOR_EXCEPTION(true,std::invalid_argument,oss.str());
265+
}
266+
return pos->second;
275267
}
276268

277269

278270
DICE_LIB_DLL_EXPORT
279-
field_enums::Field_Type string_to_field_type(const std::string & input_string)
280-
{
271+
field_enums::Field_Type string_to_field_type(const std::string & input_string){
281272
create_string_maps();
282273
std::map<std::string,field_enums::Field_Type,std::string>::iterator pos=string_field_type.find(input_string);
283-
if (pos == string_field_type.end())
284-
{
274+
if(string_field_type.count(input_string)==0){
285275
std::stringstream oss;
286276
oss << "Unknown field type: " << input_string << std::endl;
287277
oss << "Valid options are: " << std::endl;
@@ -296,13 +286,11 @@ field_enums::Field_Type string_to_field_type(const std::string & input_string)
296286

297287
DICE_LIB_DLL_EXPORT
298288
std::list<std::string>
299-
get_reverse_sorted_field_names()
300-
{
289+
get_reverse_sorted_field_names(){
301290
std::list<std::string> names_list;
302291
std::map<std::string,field_enums::Field_Name>::iterator string_name_it = string_field_name.begin();
303292
std::map<std::string,field_enums::Field_Name>::iterator string_name_end = string_field_name.end();
304-
for(;string_name_it!=string_name_end;++string_name_it)
305-
{
293+
for(;string_name_it!=string_name_end;++string_name_it){
306294
names_list.push_back(string_name_it->first);
307295
}
308296
names_list.sort();
@@ -312,24 +300,20 @@ get_reverse_sorted_field_names()
312300

313301
DICE_LIB_DLL_EXPORT
314302
void
315-
update_field_names(const field_enums::Field_Name & field_name, const std::string & input_string)
316-
{
303+
update_field_names(const field_enums::Field_Name & field_name, const std::string & input_string){
317304
field_name_string[field_name] = input_string;
318305
std::map<field_enums::Field_Name,std::string>::iterator pos = field_name_string.find(field_name);
319306
string_field_name[pos->second] = pos->first;
320307
}
321-
int_t num_field_names()
322-
{
308+
int_t num_field_names(){
323309
return string_field_name.size();
324310
}
325311

326312
DICE_LIB_DLL_EXPORT
327-
field_enums::Field_Name string_to_field_name(const std::string & input_string)
328-
{
313+
field_enums::Field_Name string_to_field_name(const std::string & input_string){
329314
create_string_maps();
330315
std::map<std::string,field_enums::Field_Name,std::string >::iterator pos=string_field_name.find(input_string);
331-
if (pos == string_field_name.end())
332-
{
316+
if(string_field_name.count(input_string)==0){
333317
std::stringstream oss;
334318
oss << "Unknown field name: " << input_string << std::endl;
335319
oss << "Valid options are: " << std::endl;
@@ -343,12 +327,10 @@ field_enums::Field_Name string_to_field_name(const std::string & input_string)
343327
}
344328

345329
DICE_LIB_DLL_EXPORT
346-
field_enums::Entity_Rank string_to_entity_rank(const std::string & input_string)
347-
{
330+
field_enums::Entity_Rank string_to_entity_rank(const std::string & input_string){
348331
create_string_maps();
349332
std::map<std::string,field_enums::Entity_Rank,std::string>::iterator pos=string_entity_rank.find(input_string);
350-
if (pos == string_entity_rank.end())
351-
{
333+
if(string_entity_rank.count(input_string)==0){
352334
std::stringstream oss;
353335
oss << "Unknown field rank: " << input_string << std::endl;
354336
oss << "Valid options are: " << std::endl;
@@ -362,12 +344,12 @@ field_enums::Entity_Rank string_to_entity_rank(const std::string & input_string)
362344
}
363345

364346
field_enums::Field_Spec::Field_Spec():
365-
field_type_(NO_SUCH_FS.get_field_type()),
366-
name_(NO_SUCH_FS.get_name()),
367-
rank_(NO_SUCH_FS.get_rank()),
368-
state_(NO_SUCH_FS.get_state()),
369-
is_printable_(false),
370-
is_dof_(false)
347+
field_type_(NO_SUCH_FS.get_field_type()),
348+
name_(NO_SUCH_FS.get_name()),
349+
rank_(NO_SUCH_FS.get_rank()),
350+
state_(NO_SUCH_FS.get_state()),
351+
is_printable_(false),
352+
is_dof_(false)
371353
{}
372354

373355
field_enums::Field_Spec::Field_Spec(const field_enums::Field_Type field_type,
@@ -376,12 +358,12 @@ field_enums::Field_Spec::Field_Spec(const field_enums::Field_Type field_type,
376358
const Field_State field_state,
377359
const bool is_printable,
378360
const bool is_dof):
379-
field_type_(field_type),
380-
name_(label),
381-
rank_(rank),
382-
state_(field_state),
383-
is_printable_(is_printable),
384-
is_dof_(is_dof)
361+
field_type_(field_type),
362+
name_(label),
363+
rank_(rank),
364+
state_(field_state),
365+
is_printable_(is_printable),
366+
is_dof_(is_dof)
385367
{}
386368

387369
bool field_enums::Field_Spec::operator == (const Field_Spec& right) const {
@@ -394,9 +376,9 @@ bool field_enums::Field_Spec::operator != (const Field_Spec& right) const {
394376

395377
std::ostream& field_enums::Field_Spec::print(std::ostream& os) const {
396378
os << "Field: " << tostring(name_) << " Type: " << tostring(field_type_) << " Rank: " << tostring(rank_)
397-
<< " State: " << state_
398-
<< " Is printable: "
399-
<< is_printable_ << " Is dof: " << is_dof_ << std::endl;
379+
<< " State: " << state_
380+
<< " Is printable: "
381+
<< is_printable_ << " Is dof: " << is_dof_ << std::endl;
400382
return os;
401383
}
402384

src/mesh/DICe_MeshEnums.cpp

Lines changed: 16 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -103,12 +103,10 @@ void create_mesh_string_maps()
103103
}
104104

105105
DICE_LIB_DLL_EXPORT
106-
std::string tostring(const Physics_Term & physics_term)
107-
{
106+
std::string tostring(const Physics_Term & physics_term){
108107
create_mesh_string_maps();
109108
std::map<Physics_Term,std::string>::iterator pos=physics_term_string.find(physics_term);
110-
if (pos == physics_term_string.end())
111-
{
109+
if (physics_term_string.count(physics_term)==0){
112110
std::stringstream oss;
113111
oss << "Unknown physics term: " << physics_term << std::endl;
114112
TEUCHOS_TEST_FOR_EXCEPTION(true,std::invalid_argument,oss.str());
@@ -117,55 +115,47 @@ std::string tostring(const Physics_Term & physics_term)
117115
}
118116

119117
DICE_LIB_DLL_EXPORT
120-
std::string tostring(const Component & comp)
121-
{
118+
std::string tostring(const Component & comp){
122119
create_mesh_string_maps();
123120
std::map<Component,std::string>::iterator pos=component_string.find(comp);
124-
if (pos == component_string.end())
125-
{
121+
if (component_string.count(comp)==0){
126122
std::stringstream oss;
127123
oss << "Unknown component: " << comp << std::endl;
128124
TEUCHOS_TEST_FOR_EXCEPTION(true,std::invalid_argument,oss.str());
129125
}
130126
return pos->second;
131127
}
132128
DICE_LIB_DLL_EXPORT
133-
std::string tostring(const Base_Element_Type & base_element_type)
134-
{
129+
std::string tostring(const Base_Element_Type & base_element_type){
135130
create_mesh_string_maps();
136131
std::map<Base_Element_Type,std::string>::iterator pos=base_element_type_string.find(base_element_type);
137-
if (pos == base_element_type_string.end())
138-
{
132+
if (base_element_type_string.count(base_element_type)==0){
139133
std::stringstream oss;
140134
oss << "Unknown base element type: " << base_element_type << std::endl;
141135
TEUCHOS_TEST_FOR_EXCEPTION(true,std::invalid_argument,oss.str());
142136
}
143137
return pos->second;
144138
}
145139
DICE_LIB_DLL_EXPORT
146-
int_t toindex(const Component comp)
147-
{
140+
int_t toindex(const Component comp){
148141
if(comp == NO_COMP || comp == X_COMP)
149142
return 0;
150143
else if(comp == Y_COMP)
151144
return 1;
152145
else if(comp == Z_COMP)
153146
return 2;
154-
else
155-
{
147+
else{
156148
std::stringstream oss;
157149
oss << " toindex(): Unknown component " << tostring(comp) << std::endl;
158150
TEUCHOS_TEST_FOR_EXCEPTION(true,std::invalid_argument,oss.str());
159151
}
160152
return -1;
161153
}
162154
DICE_LIB_DLL_EXPORT
163-
Physics_Term string_to_physics_term(const std::string & input_string)
164-
{
155+
Physics_Term string_to_physics_term(const std::string & input_string){
165156
create_mesh_string_maps();
166157
std::map<std::string,Physics_Term,std::string>::iterator pos=string_physics_term.find(input_string);
167-
if (pos == string_physics_term.end())
168-
{
158+
if (string_physics_term.count(input_string)==0){
169159
std::stringstream oss;
170160
oss << "Unknown physics term: " << input_string << std::endl;
171161
oss << "Valid options are: " << std::endl;
@@ -179,12 +169,10 @@ Physics_Term string_to_physics_term(const std::string & input_string)
179169
}
180170

181171
DICE_LIB_DLL_EXPORT
182-
Component string_to_component(const std::string & input_string)
183-
{
172+
Component string_to_component(const std::string & input_string){
184173
create_mesh_string_maps();
185174
std::map<std::string,Component,std::string>::iterator pos=string_component.find(input_string);
186-
if (pos == string_component.end())
187-
{
175+
if (string_component.count(input_string)==0){
188176
std::stringstream oss;
189177
oss << "Unknown component: " << input_string << std::endl;
190178
oss << "Valid options are: " << std::endl;
@@ -198,8 +186,7 @@ Component string_to_component(const std::string & input_string)
198186
}
199187

200188
DICE_LIB_DLL_EXPORT
201-
std::string index_to_component(const int_t index)
202-
{
189+
std::string index_to_component(const int_t index){
203190
if (index==0)
204191
return "X";
205192
else if (index==1)
@@ -211,8 +198,7 @@ std::string index_to_component(const int_t index)
211198
}
212199

213200
DICE_LIB_DLL_EXPORT
214-
std::string index_to_component_string(const int_t index)
215-
{
201+
std::string index_to_component_string(const int_t index){
216202
if (index==0)
217203
return "_X";
218204
else if (index==1)
@@ -224,12 +210,10 @@ std::string index_to_component_string(const int_t index)
224210
}
225211

226212
DICE_LIB_DLL_EXPORT
227-
Base_Element_Type string_to_base_element_type(const std::string & input_string)
228-
{
213+
Base_Element_Type string_to_base_element_type(const std::string & input_string){
229214
create_mesh_string_maps();
230215
std::map<std::string,Base_Element_Type,std::string>::iterator pos=string_base_element_type.find(input_string);
231-
if (pos == string_base_element_type.end())
232-
{
216+
if (string_base_element_type.count(input_string)==0){
233217
std::stringstream oss;
234218
oss << "Unknown base element type: " << input_string << std::endl;
235219
oss << "Valid options are: " << std::endl;

0 commit comments

Comments
 (0)