w11 - cpp 0.794
Backend server for Rlink and w11
Loading...
Searching...
No Matches
RtclSetList.hpp
Go to the documentation of this file.
1// $Id: RtclSetList.hpp 1186 2019-07-12 17:49:59Z mueller $
2// SPDX-License-Identifier: GPL-3.0-or-later
3// Copyright 2013-2018 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
4//
5// Revision History:
6// Date Rev Version Comment
7// 2018-12-16 1084 1.2.3 use =delete for noncopyable instead of boost
8// 2018-12-15 1083 1.2.2 Add(): use rval ref and move semantics
9// 2018-12-14 1081 1.2.1 use std::function instead of boost
10// 2018-12-01 1076 1.2 use unique_ptr
11// 2015-01-08 631 1.1 add Clear()
12// 2013-02-12 487 1.0 Initial version
13// ---------------------------------------------------------------------------
14
19#ifndef included_Retro_RtclSetList
20#define included_Retro_RtclSetList 1
21
22#include "tcl.h"
23
24#include <cstdint>
25#include <string>
26#include <map>
27#include <memory>
28#include <functional>
29
30#include "RtclSet.hpp"
32
33namespace Retro {
34
36 public:
37 typedef std::unique_ptr<RtclSetBase> set_uptr_t;
38
40 virtual ~RtclSetList();
41
42 RtclSetList(const RtclSetList&) = delete; // noncopyable
43 RtclSetList& operator=(const RtclSetList&) = delete; // noncopyable
44
45 void Add(const std::string& name, set_uptr_t&& upset);
46
47 template <class TP>
48 void Add(const std::string& name,
49 std::function<void(TP)>&& set);
50
51 void Clear();
52 int M_set(RtclArgs& args);
53
54 protected:
55 typedef std::map<std::string, set_uptr_t> map_t;
56
58 };
59
60} // end namespace Retro
61
62#include "RtclSetList.ipp"
63
64#endif
FIXME_docs.
Definition: RtclArgs.hpp:41
virtual ~RtclSetList()
FIXME_docs.
Definition: RtclSetList.cpp:46
void Add(const std::string &name, set_uptr_t &&upset)
FIXME_docs.
Definition: RtclSetList.cpp:52
RtclSetList & operator=(const RtclSetList &)=delete
void Clear()
FIXME_docs.
Definition: RtclSetList.cpp:64
int M_set(RtclArgs &args)
FIXME_docs.
Definition: RtclSetList.cpp:73
std::map< std::string, set_uptr_t > map_t
Definition: RtclSetList.hpp:55
std::unique_ptr< RtclSetBase > set_uptr_t
Definition: RtclSetList.hpp:37
RtclSetList(const RtclSetList &)=delete
RtclSetList()
FIXME_docs.
Definition: RtclSetList.cpp:39
Declaration of class ReventLoop.
Definition: ReventLoop.cpp:47