Ginga  0.13.6.1771-df200
The iTV middleware.
NclBind.h
Go to the documentation of this file.
1 /* Copyright (C) 2006-2017 PUC-Rio/Laboratorio TeleMidia
2 
3 This file is part of Ginga (Ginga-NCL).
4 
5 Ginga is free software: you can redistribute it and/or modify it
6 under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 2 of the License, or
8 (at your option) any later version.
9 
10 Ginga is distributed in the hope that it will be useful, but WITHOUT
11 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
12 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
13 License for more details.
14 
15 You should have received a copy of the GNU General Public License
16 along with Ginga. If not, see <http://www.gnu.org/licenses/>. */
17 
18 #ifndef NCL_BIND_H
19 #define NCL_BIND_H
20 
21 #include "NclNode.h"
22 #include "Event.h"
23 #include "Predicate.h"
24 
26 
27 class NclBind
28 {
29 public:
30  enum RoleType
31  {
32  CONDITION = 0,
34  };
35 
36  NclBind (const string &, NclBind::RoleType, Event::Type,
38  NclNode *, NclAnchor *);
39  ~NclBind ();
40 
41  string getRole ();
46 
47  NclNode *getNode ();
49 
50  const map<string, string> *getParameters ();
51  bool getParameter (const string &, string *);
52  bool setParameter (const string &, const string &);
53 
54  static bool isReserved (const string &,
55  Event::Type *,
57 private:
58  string _role;
65  map<string, string> _parameters;
66 };
67 
69 
70 #endif // NCL_BIND_H
string getRole()
Definition: NclBind.cpp:45
string _role
Definition: NclBind.h:58
Definition: NclBind.h:33
Definition: NclBind.h:32
NclAnchor * _interface
Definition: NclBind.h:64
Definition: NclBind.h:27
RoleType
Definition: NclBind.h:30
NclNode * _node
Definition: NclBind.h:63
Event::Transition getTransition()
Definition: NclBind.cpp:63
static bool isReserved(const string &, Event::Type *, Event::Transition *)
Definition: NclBind.cpp:105
NclBind::RoleType _roleType
Definition: NclBind.h:59
Event::Type getEventType()
Definition: NclBind.cpp:57
#define GINGA_NAMESPACE_END
Definition: aux-ginga.h:62
Predicate * _predicate
Definition: NclBind.h:62
NclAnchor * getInterface()
Definition: NclBind.cpp:81
Definition: NclAnchor.h:25
bool getParameter(const string &, string *)
Definition: NclBind.cpp:93
Event::Type _eventType
Definition: NclBind.h:60
#define GINGA_NAMESPACE_BEGIN
Definition: aux-ginga.h:61
Predicate * getPredicate()
Definition: NclBind.cpp:69
Transition
Definition: Event.h:44
NclBind(const string &, NclBind::RoleType, Event::Type, Event::Transition, Predicate *, NclNode *, NclAnchor *)
Definition: NclBind.cpp:25
NclBind::RoleType getRoleType()
Definition: NclBind.cpp:51
Definition: Predicate.h:25
~NclBind()
Definition: NclBind.cpp:40
Type
Definition: Event.h:30
Definition: NclNode.h:26
bool setParameter(const string &, const string &)
Definition: NclBind.cpp:99
Event::Transition _transition
Definition: NclBind.h:61
map< string, string > _parameters
Definition: NclBind.h:65
NclNode * getNode()
Definition: NclBind.cpp:75
const map< string, string > * getParameters()
Definition: NclBind.cpp:87