WebCFace 2.5.2
Web-based Communication Framework & Dashboard-like UI
|
関数1つを表すクラス More...
#include <webcface/func.h>
Public Types | |
using | FuncType = void(CallHandle) |
Public Member Functions | |
Func ()=default | |
Func (const Field &base) | |
Func (const Field &base, const SharedString &field) | |
Func | child (std::string_view field) const |
「(thisの名前).(追加の名前)」を新しい名前とするField | |
Func | child (std::wstring_view field) const |
「(thisの名前).(追加の名前)」を新しい名前とするField (wstring) | |
Func | child (int index) const |
Func | operator[] (std::string_view field) const |
Func | operator[] (std::wstring_view field) const |
Func | operator[] (const char *field) const |
Func | operator[] (const wchar_t *field) const |
Func | operator[] (int index) const |
Func | parent () const |
nameの最後のピリオドの前までを新しい名前とするField | |
template<typename T , typename traits::FuncObjTrait< T >::ReturnTypeTrait::ReturnTypeSupportedByWebCFaceFunc = traits::TraitOk, typename traits::FuncObjTrait< T >::ArgTypesTrait::ArgTypesSupportedByWebCFaceFunc = traits::TraitOk> | |
const Func & | set (T func) const |
関数をセットする | |
template<typename T , typename traits::FuncObjTrait< T >::ReturnTypeTrait::ReturnTypeSupportedByWebCFaceFunc = traits::TraitOk, typename traits::FuncObjTrait< T >::ArgTypesTrait::ArgTypesSupportedByWebCFaceFunc = traits::TraitOk> | |
const Func & | setAsync (T func) const |
非同期に実行される関数をセットする | |
template<typename T > | |
const Func & | operator= (T func) const |
関数をセットする | |
template<typename T , typename std::enable_if_t< std::is_same_v< std::invoke_result_t< T, CallHandle >, void >, std::nullptr_t > = nullptr> | |
const Func & | set (std::vector< Arg > args, ValType return_type, T callback) const |
引数にCallHandleを取る関数を登録する | |
template<typename T , typename std::enable_if_t< std::is_same_v< std::invoke_result_t< T, CallHandle >, void >, std::nullptr_t > = nullptr> | |
const Func & | setAsync (std::vector< Arg > args, ValType return_type, T callback) const |
引数にFuncCallHandleを取り非同期に実行される関数を登録する | |
template<typename T , typename std::enable_if_t< std::is_same_v< std::invoke_result_t< T, CallHandle >, void >, std::nullptr_t > = nullptr> | |
const Func & | set (T callback) const |
引数にCallHandleを取る関数を登録する | |
template<typename T , typename std::enable_if_t< std::is_same_v< std::invoke_result_t< T, CallHandle >, void >, std::nullptr_t > = nullptr> | |
const Func & | setAsync (T callback) const |
引数にFuncCallHandleを取り非同期に実行される関数を登録する | |
const Func & | hidden (bool) const |
関数を関数リストで非表示にする (他clientのentryに表示されなくする) | |
const Func & | free () const |
関数の設定を削除 | |
template<typename... Args> | |
ValAdaptor | run (Args... args) const |
関数を実行する (同期) | |
ValAdaptor | run (std::vector< ValAdaptor > &&args_vec) const |
template<typename... Args> | |
ValAdaptor | operator() (Args... args) const |
run()と同じ | |
template<typename... Args> | |
Promise | runAsync (Args... args) const |
関数を実行する (非同期) | |
Promise | runAsync (std::vector< ValAdaptor > args_vec) const |
bool | exists () const |
関数の情報が存在すればtrue | |
ValType | returnType () const |
戻り値の型を返す | |
std::vector< Arg > | args () const |
引数の情報を返す | |
const Arg | args (std::size_t i) const |
const Func & | setArgs (const std::vector< Arg > &args) const |
引数の情報を更新する | |
const Func & | setReturnType (ValType return_type) const |
戻り値の型の情報を更新する | |
template<typename T , typename std::enable_if_t< std::is_same_v< T, Func >, std::nullptr_t > = nullptr> | |
bool | operator== (const T &other) const |
Funcの参照先を比較 | |
template<typename T , typename std::enable_if_t< std::is_same_v< T, Func >, std::nullptr_t > = nullptr> | |
bool | operator!= (const T &other) const |
std::string | lastName () const |
nameのうちピリオドで区切られた最後の部分を取り出す | |
Member | member () const |
Memberを返す | |
const std::string & | name () const |
field名を返す | |
const std::wstring & | nameW () const |
field名を返す (wstring) | |
Protected Member Functions | |
const Func & | setImpl (ValType return_type, std::vector< Arg > &&args, std::function< FuncType > &&func_impl) const |
const Func & | setImpl (ValType return_type, std::nullopt_t, std::function< FuncType > &&func_impl) const |
const Func & | setImpl (const std::shared_ptr< internal::FuncInfo > &func_info) const |
std::shared_ptr< internal::ClientData > | dataLock () const |
data_wをlockし、失敗したらruntime_errorを投げる | |
std::shared_ptr< internal::ClientData > | setCheck () const |
data_wをlockし、memberがselfではなければinvalid_argumentを投げる | |
bool | expired () const |
SharedString | lastName8 () const |
Field | child (const SharedString &field) const |
std::wstring | lastNameW () const |
nameのうちピリオドで区切られた最後の部分を取り出す (wstring) | |
Value | value (std::string_view field="") const |
Value | value (std::wstring_view field) const |
Text | text (std::string_view field="") const |
Text | text (std::wstring_view field) const |
RobotModel | robotModel (std::string_view field="") const |
RobotModel | robotModel (std::wstring_view field) const |
Image | image (std::string_view field="") const |
Image | image (std::wstring_view field) const |
Func | func (std::string_view field="") const |
Func | func (std::wstring_view field) const |
FuncListener | funcListener (std::string_view field) const |
FuncListener | funcListener (std::wstring_view field) const |
View | view (std::string_view field="") const |
View | view (std::wstring_view field) const |
Canvas3D | canvas3D (std::string_view field="") const |
Canvas3D | canvas3D (std::wstring_view field) const |
Canvas2D | canvas2D (std::string_view field="") const |
Canvas2D | canvas2D (std::wstring_view field) const |
Log | log (std::string_view field="") const |
Log | log (std::wstring_view field) const |
std::vector< Value > | valueEntries () const |
std::vector< Text > | textEntries () const |
std::vector< RobotModel > | robotModelEntries () const |
std::vector< Func > | funcEntries () const |
std::vector< View > | viewEntries () const |
std::vector< Canvas3D > | canvas3DEntries () const |
std::vector< Canvas2D > | canvas2DEntries () const |
std::vector< Image > | imageEntries () const |
std::vector< Log > | logEntries () const |
bool | isSelf () const |
memberがselfならtrue | |
bool | operator== (const Field &other) const |
bool | operator== (const FieldBase &rhs) const |
bool | operator!= (const Field &other) const |
bool | operator!= (const FieldBase &rhs) const |
Static Protected Member Functions | |
template<typename F1 > | |
static void | catchAll (F1 &&f_run, const CallHandle &handle) |
template<typename F1 > | |
static void | tryRun (F1 &&f_run, const CallHandle &handle) |
Protected Attributes | |
std::weak_ptr< internal::ClientData > | data_w |
ClientDataの参照 | |
SharedString | member_ |
メンバー名 | |
SharedString | field_ |
フィールド名 | |
Friends | |
class | TemporalViewComponent |
class | TemporalCanvas2DComponent |
関数1つを表すクラス
using FuncType = void (CallHandle) |
|
default |
|
inline |
std::vector< Arg > args | ( | ) | const |
引数の情報を返す
変更するにはsetArgsを使う(このvectorの中身を書き換えても反映されない)
|
inline |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inlinestaticprotected |
f_run()を実行し例外を投げた場合はrejectする
|
inherited |
|
inline |
|
inline |
「(thisの名前).(追加の名前)」を新しい名前とするField
|
inline |
「(thisの名前).(追加の名前)」を新しい名前とするField (wstring)
|
inherited |
data_wをlockし、失敗したらruntime_errorを投げる
bool exists | ( | ) | const |
関数の情報が存在すればtrue
|
inherited |
const Func & free | ( | ) | const |
関数の設定を削除
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inline |
関数を関数リストで非表示にする (他clientのentryに表示されなくする)
|
inherited |
|
inherited |
|
inherited |
|
inherited |
memberがselfならtrue
data_wがlockできなければruntime_errorを投げる
|
inline |
nameのうちピリオドで区切られた最後の部分を取り出す
|
protectedinherited |
|
inlineinherited |
nameのうちピリオドで区切られた最後の部分を取り出す (wstring)
|
inherited |
|
inherited |
|
inherited |
Member member | ( | ) | const |
Memberを返す
|
inline |
field名を返す
|
inline |
field名を返す (wstring)
|
inlineinherited |
|
inlineinherited |
|
inline |
|
inline |
run()と同じ
|
inline |
関数をセットする
set() と同じ。
|
inherited |
|
inlineinherited |
|
inline |
Funcの参照先を比較
|
inline |
operator[](long, const char *)と解釈されるのを防ぐための定義
|
inline |
|
inline |
nameの最後のピリオドの前までを新しい名前とするField
ValType returnType | ( | ) | const |
戻り値の型を返す
|
inherited |
|
inherited |
|
inherited |
|
inline |
関数を実行する (同期)
例外が発生した場合 runtime_error, 関数が存在しない場合 FuncNotFound をthrowする
|
inline |
|
inline |
関数を実行する (非同期)
AsyncFuncResult runAsync | ( | std::vector< ValAdaptor > | args_vec | ) | const |
|
inline |
引数にCallHandleを取る関数を登録する
args | 引数の型などの情報 |
return_type | 戻り値の型 |
func | セットする関数または関数オブジェクト。 引数としてCallHandleを1つ取り、戻り値はvoidで、 CallHandle::respond() や reject() を通して値を返す |
|
inline |
引数にCallHandleを取る関数を登録する
func | セットする関数または関数オブジェクト。 引数としてCallHandleを1つ取り、戻り値はvoidで、 CallHandle::respond() や reject() を通して値を返す |
|
inline |
関数をセットする
func | セットする関数または関数オブジェクト。 引数はValAdaptorからキャスト可能な型ならいくつでも、 戻り値はvoidまたはValAdaptorにキャスト可能な型が使用可能 |
引数の情報を更新する
setArgsで渡された引数の情報(名前など)とFuncがすでに持っている引数の情報(型など)がマージされる
関数のセットの後に呼ばなければならない(セット前に呼ぶと std::invalid_argument) (例えば Func(...).set(...).setArgs({...}) ) また、関数をセットしたあと cli.sync() をする前に呼ばなければならない 実際にセットした関数の引数の数とargsの要素数は一致していなければならない (一致していない場合 std::invalid_argument )
|
inline |
引数にFuncCallHandleを取り非同期に実行される関数を登録する
args | 引数の型などの情報 |
return_type | 戻り値の型 |
func | セットする関数または関数オブジェクト。 引数としてCallHandleを1つ取り、戻り値はvoidで、 CallHandle::respond() や reject() を通して値を返す |
|
inline |
引数にFuncCallHandleを取り非同期に実行される関数を登録する
func | セットする関数または関数オブジェクト。 引数としてCallHandleを1つ取り、戻り値はvoidで、 CallHandle::respond() や reject() を通して値を返す |
|
inline |
非同期に実行される関数をセットする
func | セットする関数または関数オブジェクト。 引数はValAdaptorからキャスト可能な型ならいくつでも、 戻り値はvoidまたはValAdaptorにキャスト可能な型が使用可能 |
|
inherited |
data_wをlockし、memberがselfではなければinvalid_argumentを投げる
|
protected |
|
protected |
引数の個数不定バージョン
|
protected |
set2()で構築された関数の情報(FuncInfo)をclientにセット
|
inherited |
|
inherited |
|
inherited |
|
inlinestaticprotected |
f_run()を実行し結果をCallHandleに渡す
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
friend |
|
friend |
|
inherited |
ClientDataの参照
ClientData内に保持するクラスもあるので循環参照を避けるためweak_ptr
|
inherited |
フィールド名
Memberなどフィールド名が不要なクラスでは使用しない
|
inherited |
メンバー名