Classes | Namespaces | Macros | Typedefs | Functions
types.h File Reference

Typedefs for easier changing of types. More...

#include <gtsam/dllexport.h>
#include <gtsam/config.h>
#include <cstddef>
#include <cstdint>
#include <exception>
#include <string>
Include dependency graph for types.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  gtsam::const_selector< TEST_TYPE, BASIC_TYPE, AS_NON_CONST, AS_CONST >
 
struct  gtsam::const_selector< BASIC_TYPE, BASIC_TYPE, AS_NON_CONST, AS_CONST >
 
struct  gtsam::const_selector< const BASIC_TYPE, BASIC_TYPE, AS_NON_CONST, AS_CONST >
 
struct  gtsam::needs_eigen_aligned_allocator< typename, typename >
 
struct  gtsam::needs_eigen_aligned_allocator< T, void_t< typename T::_eigen_aligned_allocator_trait > >
 
class  gtsam::TbbOpenMPMixedScope
 
struct  gtsam::ValueWithDefault< T, defaultValue >
 

Namespaces

 gtsam
 traits
 

Macros

#define assert_throw(CONDITION, EXCEPTION)
 
#define CLANG_DIAGNOSTIC_PUSH_IGNORE(diag)
 
#define DIAGNOSTIC_POP()
 
#define DO_PRAGMA(x)   _Pragma (#x)
 
#define GCC_DIAGNOSTIC_PUSH_IGNORE(diag)
 
#define GTSAM_DEPRECATED
 
#define GTSAM_MAKE_ALIGNED_OPERATOR_NEW
 
#define GTSAM_MAKE_ALIGNED_OPERATOR_NEW_IF(NeedsToAlign)
 
#define MSVC_DIAGNOSTIC_PUSH_IGNORE(code)
 

Typedefs

typedef ptrdiff_t gtsam::DenseIndex
 The index type for Eigen objects. More...
 
typedef std::uint64_t gtsam::FactorIndex
 Integer nonlinear factor index type. More...
 
typedef std::uint64_t gtsam::Key
 Integer nonlinear key type. More...
 
template<typename ... >
using gtsam::void_t = void
 Convenience void_t as we assume C++11, it will not conflict the std one in C++17 as this is in gtsam:: More...
 

Functions

std::string gtsam::demangle (const char *name)
 Pretty print Value type name. More...
 

Detailed Description

Typedefs for easier changing of types.

Author
Richard Roberts
Date
Aug 21, 2010

Definition in file types.h.

Macro Definition Documentation

◆ assert_throw

#define assert_throw (   CONDITION,
  EXCEPTION 
)
Value:
if (!(CONDITION)) { \
throw (EXCEPTION); \
}

An assertion that throws an exception if NDEBUG is not defined and evaluates to an empty statement otherwise.

Definition at line 201 of file types.h.

◆ CLANG_DIAGNOSTIC_PUSH_IGNORE

#define CLANG_DIAGNOSTIC_PUSH_IGNORE (   diag)

Definition at line 67 of file types.h.

◆ DIAGNOSTIC_POP

#define DIAGNOSTIC_POP ( )

Definition at line 93 of file types.h.

◆ DO_PRAGMA

#define DO_PRAGMA (   x)    _Pragma (#x)

Definition at line 61 of file types.h.

◆ GCC_DIAGNOSTIC_PUSH_IGNORE

#define GCC_DIAGNOSTIC_PUSH_IGNORE (   diag)

Definition at line 75 of file types.h.

◆ GTSAM_DEPRECATED

#define GTSAM_DEPRECATED

Definition at line 44 of file types.h.

◆ GTSAM_MAKE_ALIGNED_OPERATOR_NEW

#define GTSAM_MAKE_ALIGNED_OPERATOR_NEW
Value:
EIGEN_MAKE_ALIGNED_OPERATOR_NEW \
using _eigen_aligned_allocator_trait = void;

This marks a GTSAM object to require alignment. With this macro an object will automatically be allocated in aligned memory when one uses gtsam::make_shared. It reduces future misalignment problems that is hard to debug. See https://eigen.tuxfamily.org/dox/group__DenseMatrixManipulation__Alignement.html for detailed explanation.

Definition at line 284 of file types.h.

◆ GTSAM_MAKE_ALIGNED_OPERATOR_NEW_IF

#define GTSAM_MAKE_ALIGNED_OPERATOR_NEW_IF (   NeedsToAlign)
Value:
using _eigen_aligned_allocator_trait = void;
#define EIGEN_MAKE_ALIGNED_OPERATOR_NEW_IF(NeedsToAlign)
Definition: Memory.h:838

This marks a GTSAM object to require alignment. With this macro an object will automatically be allocated in aligned memory when one uses gtsam::make_shared. It reduces future misalignment problems that is hard to debug. See https://eigen.tuxfamily.org/dox/group__DenseMatrixManipulation__Alignement.html for detailed explanation.

Definition at line 293 of file types.h.

◆ MSVC_DIAGNOSTIC_PUSH_IGNORE

#define MSVC_DIAGNOSTIC_PUSH_IGNORE (   code)

Definition at line 83 of file types.h.



gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:40:57