GAMS  1.4.0
gams::pose::FrameEvalSettings Class Reference

Settings class for saving/loading reference frames. More...

#include <ReferenceFrameFwd.h>

Inheritance diagram for gams::pose::FrameEvalSettings:

Public Types

using Base = madara::knowledge::EvalSettings
 

Public Member Functions

 FrameEvalSettings (Base base=Base{true})
 Default constructor. More...
 
 FrameEvalSettings (const char *prefix, Base base=Base{true})
 Custom prefix constructor. More...
 
 FrameEvalSettings (std::nullptr_t, Base base=Base{true})
 Explicit default prefix constructor. More...
 
 FrameEvalSettings (std::string prefix, Base base=Base{true})
 Custom prefix constructor. More...
 
const std::string & prefix () const
 Get prefix set for this settings object. More...
 
void prefix (std::string prefix)
 Set prefix set for this settings object. More...
 

Static Public Member Functions

static const std::string & default_prefix ()
 Get default prefix for all FrameEvalSettings that don't have another prefix set. More...
 
static void set_default_prefix (std::string new_prefix)
 Set default prefix for all FrameEvalSettings that don't have another prefix set. More...
 

Static Public Attributes

static const FrameEvalSettings DEFAULT
 

Private Attributes

std::shared_ptr< std::string > prefix_
 

Static Private Attributes

static std::string default_prefix_
 
static std::mutex defaults_lock_
 

Detailed Description

Settings class for saving/loading reference frames.

Inherits from madara::knowledge::EvalSettings, adding a prefix option for frame storage.

The EvalSettings portion defaults to EvalSettings::DELAY, equivalent to Madara containers, and the most common settings used in GAMS.

Definition at line 85 of file ReferenceFrameFwd.h.

Member Typedef Documentation

◆ Base

using gams::pose::FrameEvalSettings::Base = madara::knowledge::EvalSettings

Definition at line 88 of file ReferenceFrameFwd.h.

Constructor & Destructor Documentation

◆ FrameEvalSettings() [1/4]

gams::pose::FrameEvalSettings::FrameEvalSettings ( Base  base = Base{true})
inline

Default constructor.

Frame save/load will use default_prefix.

Definition at line 95 of file ReferenceFrameFwd.h.

◆ FrameEvalSettings() [2/4]

gams::pose::FrameEvalSettings::FrameEvalSettings ( std::string  prefix,
Base  base = Base{true} 
)
inline

Custom prefix constructor.

Frame save/load will use given prefix.

Definition at line 100 of file ReferenceFrameFwd.h.

◆ FrameEvalSettings() [3/4]

gams::pose::FrameEvalSettings::FrameEvalSettings ( std::nullptr_t  ,
Base  base = Base{true} 
)
inline

Explicit default prefix constructor.

Frame save/load will use default_prefix. Exists to avoid ambiguity with nullptr.

Definition at line 108 of file ReferenceFrameFwd.h.

◆ FrameEvalSettings() [4/4]

gams::pose::FrameEvalSettings::FrameEvalSettings ( const char *  prefix,
Base  base = Base{true} 
)
inline

Custom prefix constructor.

Frame save/load will use given prefix.

Definition at line 114 of file ReferenceFrameFwd.h.

Member Function Documentation

◆ default_prefix()

static const std::string& gams::pose::FrameEvalSettings::default_prefix ( )
inlinestatic

Get default prefix for all FrameEvalSettings that don't have another prefix set.

Definition at line 121 of file ReferenceFrameFwd.h.

◆ prefix() [1/2]

const std::string& gams::pose::FrameEvalSettings::prefix ( ) const
inline

Get prefix set for this settings object.

Definition at line 139 of file ReferenceFrameFwd.h.

◆ prefix() [2/2]

void gams::pose::FrameEvalSettings::prefix ( std::string  prefix)
inline

Set prefix set for this settings object.

Set to "" to use default_prefix.

Definition at line 150 of file ReferenceFrameFwd.h.

◆ set_default_prefix()

static void gams::pose::FrameEvalSettings::set_default_prefix ( std::string  new_prefix)
inlinestatic

Set default prefix for all FrameEvalSettings that don't have another prefix set.

Note that this is retroactively applied to any default constructed FrameEvalSettings objects.

Definition at line 131 of file ReferenceFrameFwd.h.

Member Data Documentation

◆ DEFAULT

const FrameEvalSettings gams::pose::FrameEvalSettings::DEFAULT
static

Definition at line 90 of file ReferenceFrameFwd.h.

◆ default_prefix_

std::string gams::pose::FrameEvalSettings::default_prefix_
staticprivate

Definition at line 156 of file ReferenceFrameFwd.h.

◆ defaults_lock_

std::mutex gams::pose::FrameEvalSettings::defaults_lock_
staticprivate

Definition at line 155 of file ReferenceFrameFwd.h.

◆ prefix_

std::shared_ptr<std::string> gams::pose::FrameEvalSettings::prefix_
private

Definition at line 158 of file ReferenceFrameFwd.h.


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