| RMVL 2.4.0 Robotic Manipulation and Vision Library

载入中...
搜索中...
未找到
Public 成员函数 | 所有成员列表
rm::StateInfo类 参考
状态类型系统

状态类型系统 更多...

`#include <rmvl/types.hpp>`

rm::StateInfo 的协作图:

## Public 成员函数
| StateInfo ()=default
void | add (std::string_view key, double val)
| 添加数值状态
void | add (std::string_view key, std::string_view str)
| 添加字符串状态
bool | remove (std::string_view key)
| 移除状态类型
bool | contains (std::string_view key) const noexcept
| 是否包含状态类型
void | clear () noexcept
| 清空状态类型
bool | empty () const noexcept
| 状态类型是否为空
const StateType & | at (std::string_view key) const
| 获取状态
double | at_numeric (std::string_view key) const
| 获取数值状态，若状态类型不是数值类型，则抛出 std::bad_variant_access 异常
const std::string & | at_string (std::string_view key) const
| 获取字符串状态，若状态类型不是字符串类型，则抛出 std::bad_variant_access 异常
StateType & | at (std::string_view key)
| 设置状态
StateType & | operator[] (std::string_view key) noexcept
| 访问状态

## 详细描述

状态类型系统

## 构造及析构函数说明

## ◆ StateInfo()

rm::StateInfo::StateInfo | ( |  | ) |
| default

## 成员函数说明

## ◆ add() [1/2]

void rm::StateInfo::add | ( | std::string_view | key,
|  | double | val )

Python:
| rm.StateInfo.add( | key, val | ) -> | None
| rm.StateInfo.add( | key, str | ) -> | None

添加数值状态

StateInfo state;
state.add("tag1", 1.2); // 添加 tag1 状态类型，值为 1.2
rm::StateInfo::StateInfo
StateInfo()=default
rm::StateInfo::add
void add(std::string_view key, double val)
添加数值状态

参数

  [in] | key | 状态类型名称
  [in] | val | 数值状态值

## ◆ add() [2/2]

void rm::StateInfo::add | ( | std::string_view | key,
|  | std::string_view | str )

Python:
| rm.StateInfo.add( | key, val | ) -> | None
| rm.StateInfo.add( | key, str | ) -> | None

添加字符串状态

StateInfo state;
state.add("tag1", "hello"); // 添加 tag1 状态类型，值为 "hello"

参数

  [in] | key | 状态类型名称
  [in] | str | 字符串状态值

## ◆ at() [1/2]

StateType & rm::StateInfo::at | ( | std::string_view | key | ) |

设置状态

参数

  [in] | key | 状态类型名称

返回
  状态

函数调用图:

## ◆ at() [2/2]

const StateType & rm::StateInfo::at | ( | std::string_view | key | ) | const

获取状态

参数

  [in] | key | 状态类型名称

返回
  状态

函数调用图:

## ◆ at_numeric()

double rm::StateInfo::at_numeric | ( | std::string_view | key | ) | const

Python:
| rm.StateInfo.at_numeric( | key | ) -> | val

获取数值状态，若状态类型不是数值类型，则抛出 std::bad_variant_access 异常

参数

  [in] | key | 状态类型名称

返回
  状态

函数调用图:

## ◆ at_string()

const std::string & rm::StateInfo::at_string | ( | std::string_view | key | ) | const

Python:
| rm.StateInfo.at_string( | key | ) -> | val

获取字符串状态，若状态类型不是字符串类型，则抛出 std::bad_variant_access 异常

参数

  [in] | key | 状态类型名称

返回
  状态

函数调用图:

## ◆ clear()

void rm::StateInfo::clear | ( |  | ) |
| noexcept

Python:
| rm.StateInfo.clear( |  | ) -> | None

清空状态类型

## ◆ contains()

bool rm::StateInfo::contains | ( | std::string_view | key | ) | const
| noexcept

Python:
| rm.StateInfo.contains( | key | ) -> | <Is Contained ?>

是否包含状态类型

参数

  [in] | key | 状态类型名称

返回
  是否包含

## ◆ empty()

bool rm::StateInfo::empty | ( |  | ) | const
| noexcept

Python:
| rm.StateInfo.empty( |  | ) -> | <Is Empty ?>

状态类型是否为空

函数调用图:

## ◆ operator[]()

StateType & rm::StateInfo::operator[] | ( | std::string_view | key | ) |
| noexcept

Python:
| rm.StateInfo.__getitem__( | key | ) -> | val
| rm.StateInfo.__setitem__( | key, val | ) -> | None

访问状态

参数

  [in] | key | 状态类型名称

返回
  状态

## ◆ remove()

bool rm::StateInfo::remove | ( | std::string_view | key | ) |

Python:
| rm.StateInfo.remove( | key | ) -> | None

移除状态类型

参数

  [in] | key | 状态类型名称

返回
  是否移除成功