Fawkes API
Fawkes Development Version
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
All
Classes
Namespaces
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
multi_copy.h
1
2
/***************************************************************************
3
* multi_copy.h - Fawkes WorldModel Multi Interface Copy Fuser
4
*
5
* Created: Tue Jan 13 11:49:20 2009
6
* Copyright 2006-2009 Tim Niemueller [www.niemueller.de]
7
*
8
****************************************************************************/
9
10
/* This program is free software; you can redistribute it and/or modify
11
* it under the terms of the GNU General Public License as published by
12
* the Free Software Foundation; either version 2 of the License, or
13
* (at your option) any later version.
14
*
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU Library General Public License for more details.
19
*
20
* Read the full text in the LICENSE.GPL file in the doc directory.
21
*/
22
23
#ifndef __PLUGINS_WORLDMODEL_FUSER_MULTI_COPY_H_
24
#define __PLUGINS_WORLDMODEL_FUSER_MULTI_COPY_H_
25
26
#include "fuser.h"
27
28
#include <blackboard/interface_observer.h>
29
#include <core/utils/lock_map.h>
30
#include <string>
31
32
namespace
fawkes
33
{
34
class
BlackBoard;
35
class
Interface;
36
}
37
38
class
WorldModelMultiCopyFuser
39
:
public
WorldModelFuser
,
40
public
fawkes::BlackBoardInterfaceObserver
41
{
42
public
:
43
WorldModelMultiCopyFuser
(
fawkes::BlackBoard
*blackboard,
const
char
*type,
44
const
char
*from_id_pattern,
const
char
*to_id_format);
45
~WorldModelMultiCopyFuser
();
46
47
48
virtual
void
fuse
();
49
50
virtual
void
bb_interface_created
(
const
char
*type,
const
char
*
id
)
throw
();
51
52
private
:
53
fawkes::BlackBoard
*__blackboard;
54
55
std::string __from_id_pattern;
56
std::string __to_id_format;
57
58
fawkes::LockMap<fawkes::Interface *, fawkes::Interface *>
__ifmap;
59
fawkes::LockMap<fawkes::Interface *, fawkes::Interface *>::iterator
__imi;
60
};
61
62
63
#endif
src
plugins
worldmodel
fusers
multi_copy.h
Generated by
1.8.3.1