Ginga  0.13.6.1771-df200
The iTV middleware.
NclComposition.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_COMPOSITION_H
19 #define NCL_COMPOSITION_H
20 
21 #include "NclNode.h"
22 #include "NclPort.h"
23 
25 
26 class NclComposition: public NclNode
27 {
28 public:
29  NclComposition (NclDocument *, const string &);
30  ~NclComposition ();
31 
32  void addNode (NclNode *);
33  const list<NclNode *> *getNodes ();
34  NclNode *getNode (const string &);
35  NclNode *getNestedNode (const string &);
36 
37  void addPort (NclPort *);
38  const list<NclPort *> *getPorts ();
39  NclPort *getPort (const string &);
40 
42 
43 protected:
44  list<NclNode *> _nodes;
45  list<NclPort *> _ports;
46 };
47 
49 
50 #endif // NCL_COMPOSITION_H
Definition: NclComposition.h:26
Definition: NclDocument.h:25
const list< NclNode * > * getNodes()
Definition: NclComposition.cpp:47
#define GINGA_NAMESPACE_END
Definition: aux-ginga.h:62
void addNode(NclNode *)
Definition: NclComposition.cpp:39
NclComposition(NclDocument *, const string &)
Definition: NclComposition.cpp:23
list< NclPort * > _ports
Definition: NclComposition.h:45
NclPort * getPort(const string &)
Definition: NclComposition.cpp:93
Definition: NclAnchor.h:25
#define GINGA_NAMESPACE_BEGIN
Definition: aux-ginga.h:61
Definition: NclPort.h:27
NclAnchor * getMapInterface(NclPort *)
Definition: NclComposition.cpp:102
list< NclNode * > _nodes
Definition: NclComposition.h:44
const list< NclPort * > * getPorts()
Definition: NclComposition.cpp:87
NclNode * getNestedNode(const string &)
Definition: NclComposition.cpp:62
Definition: NclNode.h:26
NclNode * getNode(const string &)
Definition: NclComposition.cpp:53
void addPort(NclPort *)
Definition: NclComposition.cpp:79
~NclComposition()
Definition: NclComposition.cpp:28