GCC Code Coverage Report
Directory: ./ Exec Total Coverage
File: include/crocoddyl/multibody/data/impulses.hpp Lines: 6 8 75.0 %
Date: 2024-02-13 11:12:33 Branches: 0 2 0.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 <boost/shared_ptr.hpp>
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
4259
  DataCollectorImpulseTpl(
25
      boost::shared_ptr<ImpulseDataMultipleTpl<Scalar> > impulses)
26
4259
      : DataCollectorAbstractTpl<Scalar>(), impulses(impulses) {}
27
4264
  virtual ~DataCollectorImpulseTpl() {}
28
29
  boost::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
4257
  DataCollectorMultibodyInImpulseTpl(
38
      pinocchio::DataTpl<Scalar>* const pinocchio,
39
      boost::shared_ptr<ImpulseDataMultipleTpl<Scalar> > impulses)
40
      : DataCollectorMultibodyTpl<Scalar>(pinocchio),
41
4257
        DataCollectorImpulseTpl<Scalar>(impulses) {}
42
8522
  virtual ~DataCollectorMultibodyInImpulseTpl() {}
43
};
44
45
}  // namespace crocoddyl
46
47
#endif  // CROCODDYL_CORE_DATA_MULTIBODY_IN_IMPULSE_HPP_