Main Page
Modules
Namespaces
Classes
Files
File List
File Members
AbstractVisitor.h
Go to the documentation of this file.
1
/* Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil.
2
3
This file is part of the TerraLib - a Framework for building GIS enabled applications.
4
5
TerraLib is free software: you can redistribute it and/or modify
6
it under the terms of the GNU Lesser General Public License as published by
7
the Free Software Foundation, either version 3 of the License,
8
or (at your option) any later version.
9
10
TerraLib is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU Lesser General Public License for more details.
14
15
You should have received a copy of the GNU Lesser General Public License
16
along with TerraLib. See COPYING. If not, write to
17
TerraLib Team at <terralib-team@terralib.org>.
18
*/
19
20
/*!
21
\file AbstractVisitor.h
22
23
\brief Abstract class to represent a visitor. All classes representing a visitor must inherit from this class.
24
25
\ingroup layout
26
*/
27
28
#ifndef __TERRALIB_LAYOUT_INTERNAL_CONTEXT_ABSTRACT_VISITOR_H
29
#define __TERRALIB_LAYOUT_INTERNAL_CONTEXT_ABSTRACT_VISITOR_H
30
31
// TerraLib
32
#include "../../ContextItem.h"
33
34
namespace
te
35
{
36
namespace
layout
37
{
38
class
Visitable;
39
40
/*!
41
\brief Abstract class to represent a visitor. All classes representing a visitor must inherit from this class.
42
43
\ingroup layout
44
*/
45
class
AbstractVisitor
46
{
47
public
:
48
49
/*!
50
\brief Constructor
51
*/
52
AbstractVisitor
();
53
54
/*!
55
\brief Destructor
56
*/
57
~AbstractVisitor
(
void
);
58
59
/*!
60
\brief Constructor
61
*/
62
virtual
void
visit
(
Visitable
* visitable);
63
64
/*!
65
\brief Separate this object from visitable.
66
*/
67
virtual
void
disassociate
();
68
69
/*!
70
\brief Return the object to be visited.
71
72
\param
73
*/
74
virtual
Visitable
*
getVisitable
();
75
76
protected
:
77
78
/*!
79
\brief visit and if necessary redraw
80
*/
81
virtual
void
visitDependent
(
ContextItem
context) = 0;
82
83
/*!
84
\brief Returns context maintaining the drawing context of a MVC component.
85
86
\param context maintaining the drawing context of a MVC component
87
*/
88
virtual
ContextItem
getContextItem
();
89
90
Visitable
*
m_visitable
;
//!< object to be visited
91
};
92
}
93
}
94
95
#endif
te::layout::Visitable
Class to represent a visitable. All classes representing a visitable must inherit from this class...
Definition:
Visitable.h:45
te::layout::ContextItem
Class responsible for maintaining the drawing context of a MVC component. It is always used by the "M...
Definition:
ContextItem.h:49
te::layout::AbstractVisitor::m_visitable
Visitable * m_visitable
object to be visited
Definition:
AbstractVisitor.h:90
te::layout::AbstractVisitor
Abstract class to represent a visitor. All classes representing a visitor must inherit from this clas...
Definition:
AbstractVisitor.h:45
te::layout::AbstractVisitor::disassociate
virtual void disassociate()
Separate this object from visitable.
Definition:
AbstractVisitor.cpp:72
te::layout::AbstractVisitor::getContextItem
virtual ContextItem getContextItem()
Returns context maintaining the drawing context of a MVC component.
Definition:
AbstractVisitor.cpp:77
te
URI C++ Library.
Definition:
AddressGeocodingOp.h:51
te::layout::AbstractVisitor::visit
virtual void visit(Visitable *visitable)
Constructor.
Definition:
AbstractVisitor.cpp:46
te::layout::AbstractVisitor::AbstractVisitor
AbstractVisitor()
Constructor.
Definition:
AbstractVisitor.cpp:35
te::layout::AbstractVisitor::~AbstractVisitor
~AbstractVisitor(void)
Destructor.
Definition:
AbstractVisitor.cpp:41
te::layout::AbstractVisitor::getVisitable
virtual Visitable * getVisitable()
Return the object to be visited.
Definition:
AbstractVisitor.cpp:95
te::layout::AbstractVisitor::visitDependent
virtual void visitDependent(ContextItem context)=0
visit and if necessary redraw
git_master
terralib5
src
terralib
layout
core
pattern
derivativevisitor
AbstractVisitor.h
Generated on Tue Jan 12 2016 08:40:55 for TerraLib by
1.8.9.1