GCC Code Coverage Report


Directory: ./
File: src/matrix/integrator-euler.t.cpp
Date: 2024-11-13 12:35:17
Exec Total Coverage
Lines: 1 3 33.3%
Branches: 1 6 16.7%

Line Branch Exec Source
1 /*
2 * Copyright 2010,
3 * François Bleibel,
4 * Olivier Stasse,
5 *
6 * CNRS/AIST
7 *
8 */
9
10 #include <sot/core/factory.hh>
11 #include <sot/core/integrator-euler.hh>
12
13 using namespace dynamicgraph::sot;
14 using namespace dynamicgraph;
15
16 #define SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN_EULER(sotClassType, sotSigType, \
17 sotCoefType, className) \
18 template <> \
19 std::string sotClassType<sotSigType, sotCoefType>::getTypeName(void) { \
20 return #sotSigType; \
21 } \
22 template <> \
23 const std::string sotClassType<sotSigType, sotCoefType>::CLASS_NAME = \
24 className; \
25 template <> \
26 const std::string &sotClassType<sotSigType, sotCoefType>::getClassName(void) \
27 const { \
28 return CLASS_NAME; \
29 } \
30 extern "C" { \
31 Entity *regFunction##_##sotSigType##_##sotCoefType( \
32 const std::string &objname) { \
33 return new sotClassType<sotSigType, sotCoefType>(objname); \
34 } \
35 EntityRegisterer regObj##_##sotSigType##_##sotCoefType( \
36 sotClassType<sotSigType, sotCoefType>::CLASS_NAME, \
37 &regFunction##_##sotSigType##_##sotCoefType); \
38 }
39
40 using namespace std;
41 namespace dynamicgraph {
42 namespace sot {
43 SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN_EULER(IntegratorEuler, double, double,
44 "IntegratorEulerDoubleDouble")
45 SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN_EULER(IntegratorEuler, Vector, Matrix,
46 "IntegratorEulerVectorMatrix")
47
1/2
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
2 SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN_EULER(IntegratorEuler, Vector, double,
48 "IntegratorEulerVectorDouble")
49
50 template class IntegratorEuler<double, double>;
51 template class IntegratorEuler<Vector, double>;
52 template class IntegratorEuler<Vector, Matrix>;
53 } // namespace sot
54 } // namespace dynamicgraph
55