g2o
Loading...
Searching...
No Matches
Public Types | Static Public Member Functions | Static Public Attributes | Static Private Member Functions | Static Private Attributes | List of all members
g2o::ceres::internal::ParameterDims< IsDynamic, Ns > Class Template Reference

#include <parameter_dims.h>

Public Types

using Parameters = std::integer_sequence< int, Ns... >
 

Static Public Member Functions

static constexpr int GetDim (int dim)
 
template<typename T >
static std::array< T *, kNumParameterBlocksGetUnpackedParameters (T *ptr)
 

Static Public Attributes

static constexpr bool kIsValid
 
static constexpr bool kIsDynamic = IsDynamic
 
static constexpr int kNumParameterBlocks = sizeof...(Ns)
 
static constexpr int kNumParameters
 

Static Private Member Functions

template<typename T , int... Indices>
static std::array< T *, kNumParameterBlocksGetUnpackedParameters (T *ptr, std::integer_sequence< int, Indices... >)
 

Static Private Attributes

static constexpr std::array< int, kNumParameterBlocksparams_ {Ns...}
 

Detailed Description

template<bool IsDynamic, int... Ns>
class g2o::ceres::internal::ParameterDims< IsDynamic, Ns >

Definition at line 68 of file parameter_dims.h.

Member Typedef Documentation

◆ Parameters

template<bool IsDynamic, int... Ns>
using g2o::ceres::internal::ParameterDims< IsDynamic, Ns >::Parameters = std::integer_sequence<int, Ns...>

Definition at line 70 of file parameter_dims.h.

Member Function Documentation

◆ GetDim()

template<bool IsDynamic, int... Ns>
static constexpr int g2o::ceres::internal::ParameterDims< IsDynamic, Ns >::GetDim ( int  dim)
inlinestaticconstexpr

Definition at line 88 of file parameter_dims.h.

88{ return params_[dim]; }
static constexpr std::array< int, kNumParameterBlocks > params_

References g2o::ceres::internal::ParameterDims< IsDynamic, Ns >::params_.

◆ GetUnpackedParameters() [1/2]

template<bool IsDynamic, int... Ns>
template<typename T >
static std::array< T *, kNumParameterBlocks > g2o::ceres::internal::ParameterDims< IsDynamic, Ns >::GetUnpackedParameters ( T *  ptr)
inlinestatic

Definition at line 93 of file parameter_dims.h.

94 {
95 using Offsets = ExclusiveScan<Parameters>;
96 return GetUnpackedParameters(ptr, Offsets());
97 }
static std::array< T *, kNumParameterBlocks > GetUnpackedParameters(T *ptr)

References g2o::ceres::internal::ParameterDims< IsDynamic, Ns >::GetUnpackedParameters().

Referenced by g2o::ceres::internal::AutoDifferentiate(), and g2o::ceres::internal::ParameterDims< IsDynamic, Ns >::GetUnpackedParameters().

◆ GetUnpackedParameters() [2/2]

template<bool IsDynamic, int... Ns>
template<typename T , int... Indices>
static std::array< T *, kNumParameterBlocks > g2o::ceres::internal::ParameterDims< IsDynamic, Ns >::GetUnpackedParameters ( T *  ptr,
std::integer_sequence< int, Indices... >   
)
inlinestaticprivate

Definition at line 101 of file parameter_dims.h.

102 {
103 return std::array<T*, kNumParameterBlocks>{{ptr + Indices...}};
104 }

Member Data Documentation

◆ kIsDynamic

template<bool IsDynamic, int... Ns>
constexpr bool g2o::ceres::internal::ParameterDims< IsDynamic, Ns >::kIsDynamic = IsDynamic
staticconstexpr

Definition at line 80 of file parameter_dims.h.

◆ kIsValid

template<bool IsDynamic, int... Ns>
constexpr bool g2o::ceres::internal::ParameterDims< IsDynamic, Ns >::kIsValid
staticconstexpr
Initial value:
=
std::integer_sequence< int, Ns... > Parameters
constexpr bool IsValidParameterDimensionSequence(std::integer_sequence< int >)

Definition at line 74 of file parameter_dims.h.

◆ kNumParameterBlocks

template<bool IsDynamic, int... Ns>
constexpr int g2o::ceres::internal::ParameterDims< IsDynamic, Ns >::kNumParameterBlocks = sizeof...(Ns)
staticconstexpr

Definition at line 81 of file parameter_dims.h.

◆ kNumParameters

template<bool IsDynamic, int... Ns>
constexpr int g2o::ceres::internal::ParameterDims< IsDynamic, Ns >::kNumParameters
staticconstexpr
Initial value:
=
Sum<std::integer_sequence<int, Ns...>>::Value

Definition at line 85 of file parameter_dims.h.

Referenced by g2o::ceres::internal::AutoDifferentiate().

◆ params_

template<bool IsDynamic, int... Ns>
constexpr std::array< int, ParameterDims< IsDynamic, Ns... >::kNumParameterBlocks > g2o::ceres::internal::ParameterDims< IsDynamic, Ns >::params_ {Ns...}
staticconstexprprivate

Definition at line 106 of file parameter_dims.h.

106{Ns...};

Referenced by g2o::ceres::internal::ParameterDims< IsDynamic, Ns >::GetDim().


The documentation for this class was generated from the following file: