GCC Code Coverage Report


Directory: ./
File: include/crocoddyl/multibody/data/impulses.hpp
Date: 2025-03-26 19:23:43
Exec Total Coverage
Lines: 6 6 100.0%
Branches: 2 5 40.0%

Line Branch Exec Source
1 ///////////////////////////////////////////////////////////////////////////////
2 // BSD 3-Clause License
3 //
4 // Copyright (C) 2019-2020, University of Edinburgh
5 // Copyright note valid unless otherwise stated in individual files.
6 // All rights reserved.
7 ///////////////////////////////////////////////////////////////////////////////
8
9 #ifndef CROCODDYL_CORE_DATA_IMPULSES_HPP_
10 #define CROCODDYL_CORE_DATA_IMPULSES_HPP_
11
12 #include <memory>
13
14 #include "crocoddyl/multibody/data/multibody.hpp"
15 #include "crocoddyl/multibody/fwd.hpp"
16 #include "crocoddyl/multibody/impulses/multiple-impulses.hpp"
17
18 namespace crocoddyl {
19
20 template <typename Scalar>
21 struct DataCollectorImpulseTpl : virtual DataCollectorAbstractTpl<Scalar> {
22 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
23
24 8516 DataCollectorImpulseTpl(
25 std::shared_ptr<ImpulseDataMultipleTpl<Scalar> > impulses)
26 8516 : DataCollectorAbstractTpl<Scalar>(), impulses(impulses) {}
27 4264 virtual ~DataCollectorImpulseTpl() {}
28
29 std::shared_ptr<ImpulseDataMultipleTpl<Scalar> > impulses;
30 };
31
32 template <typename Scalar>
33 struct DataCollectorMultibodyInImpulseTpl : DataCollectorMultibodyTpl<Scalar>,
34 DataCollectorImpulseTpl<Scalar> {
35 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
36
37 8514 DataCollectorMultibodyInImpulseTpl(
38 pinocchio::DataTpl<Scalar>* const pinocchio,
39 std::shared_ptr<ImpulseDataMultipleTpl<Scalar> > impulses)
40 : DataCollectorMultibodyTpl<Scalar>(pinocchio),
41
2/5
✓ Branch 2 taken 4257 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 6 taken 4257 times.
✗ Branch 7 not taken.
8514 DataCollectorImpulseTpl<Scalar>(impulses) {}
42 4261 virtual ~DataCollectorMultibodyInImpulseTpl() {}
43 };
44
45 } // namespace crocoddyl
46
47 CROCODDYL_DECLARE_EXTERN_TEMPLATE_STRUCT(crocoddyl::DataCollectorImpulseTpl)
48 CROCODDYL_DECLARE_EXTERN_TEMPLATE_STRUCT(
49 crocoddyl::DataCollectorMultibodyInImpulseTpl)
50
51 #endif // CROCODDYL_CORE_DATA_MULTIBODY_IN_IMPULSE_HPP_
52