BioDynaMo  v1.05.119-a4ff3934
real_t.h
Go to the documentation of this file.
1 // -----------------------------------------------------------------------------
2 //
3 // Copyright (C) 2021 CERN & University of Surrey for the benefit of the
4 // BioDynaMo collaboration. All Rights Reserved.
5 //
6 // Licensed under the Apache License, Version 2.0 (the "License");
7 // you may not use this file except in compliance with the License.
8 //
9 // See the LICENSE file distributed with this work for details.
10 // See the NOTICE file distributed with this work for additional information
11 // regarding copyright ownership.
12 //
13 // -----------------------------------------------------------------------------
14 #ifndef CORE_REAL_H_
15 #define CORE_REAL_H_
16 
17 namespace bdm {
18 
19 #ifndef BDM_REALT
20 
21 using real_t = double;
22 constexpr const char* kRealtName = "double";
23 
24 #else
25 
26 using real_t = BDM_REALT;
27 
28 // Workaround, bc the ROOT interpreter does not process the
29 // following code:
30 // constexpr const char* kRealtName = #BDM_REALT;
31 #define BDM_STRINGIFY_IMPL(var) #var
32 #define BDM_STRINGIFY(var) BDM_STRINGIFY_IMPL(var)
33 constexpr const char* kRealtName = BDM_STRINGIFY(BDM_REALT);
34 
35 #endif // BDM_REALT
36 
37 } // namespace bdm
38 
39 #endif // CORE_REAL_H_
bdm
Definition: agent.cc:39
bdm::real_t
double real_t
Definition: real_t.h:21
bdm::kRealtName
constexpr const char * kRealtName
Definition: real_t.h:22