Loading...
Searching...
No Matches
ScalarCapabilities.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 ScalarCapabilities.h
22
23 \brief Scalar capabilities include the ability to process logical expressions, comparisons and arithmetic operations including the ability to process a list of named functions.
24 */
25
26#ifndef __TERRALIB_FE_INTERNAL_SCALARCAPABILITIES_H
27#define __TERRALIB_FE_INTERNAL_SCALARCAPABILITIES_H
28
29// TerraLib
30#include "Config.h"
31
32namespace te
33{
34 namespace fe
35 {
36// Forward declarations
37 class ArithmeticOperators;
38 class ComparisonOperators;
39
40 /*! \class ScalarCapabilities
41
42 \brief Scalar capabilities include the ability to process logical expressions, comparisons and arithmetic operations including the ability to process a list of named functions.
43
44 \sa FilterCapabilities, ComparisonOperators, ArithmeticOperators
45 */
47 {
48 public:
49
50 /** @name Initializer Methods
51 * Methods related to instantiation and destruction.
52 */
53 //@{
54
55 /*! \brief It initializes a new ScalarCapabilities. */
57
58 /*! \brief Destructor. */
60
61 //@}
62
63 /** @name Accessor methods
64 * Methods used to get or set properties.
65 */
66 //@{
67
68 /*!
69 \brief It returns true if it has logical operators support, otherwise, returns false.
70
71 \return True if it has logical operators support, otherwise, returns false.
72 */
73 bool hasLogicalOperators() const;
74
75 /*! \brief It enables the logical operators support. */
77
78 /*! brief It disables the logical operators support. */
80
81 /*!
82 \brief It sets the comparison operators.
83
84 \param cOps The comparison operators.
85
86 \note It will take the ownership of the comparison operators.
87 So, don't release the comparison operators resources.
88 */
90
91 /*!
92 \brief It returns the comparison operators.
93
94 \return The comparison operators.
95 */
97
98 /*! \brief It sets the arithmetic operators.
99
100 \param aOps The arithmetic operators.
101
102 \note It will take the ownership of the arithmetic operators.
103 So, don't release the arithmetic operators resources.
104 */
106
107 /*!
108 \brief It returns the arithmetic operators.
109
110 \return The arithmetic operators.
111 */
113
114 //@}
115
116 private:
117
118 bool m_hasLogicalOperators; //!< It is used to indicate that the filter can process And, Or and Not operators. Default: false. (Optional)
121 };
122
123 } // end namespace fe
124} // end namespace te
125
126#endif // __TERRALIB_FE_INTERNAL_SCALARCAPABILITIES_H
It is used to indicate the arithmetic operators that a service can support.
It is used to indicate what types of comparison operators are supported by a service.
Scalar capabilities include the ability to process logical expressions, comparisons and arithmetic op...
~ScalarCapabilities()
Destructor.
ArithmeticOperators * m_arithmeticOperators
Optional.
const ArithmeticOperators * getArithmeticOperators() const
It returns the arithmetic operators.
ComparisonOperators * m_comparisonOperators
Optional.
void enableLogicalOperators()
It enables the logical operators support.
bool m_hasLogicalOperators
It is used to indicate that the filter can process And, Or and Not operators. Default: false....
const ComparisonOperators * getComparisonOperators() const
It returns the comparison operators.
void setArithmeticOperators(ArithmeticOperators *aOps)
It sets the arithmetic operators.
ScalarCapabilities()
It initializes a new ScalarCapabilities.
void setComparisonOperators(ComparisonOperators *cOps)
It sets the comparison operators.
bool hasLogicalOperators() const
It returns true if it has logical operators support, otherwise, returns false.
TerraLib.
#define TEFEEXPORT
You can use this macro in order to export/import classes and functions from this module.
Definition: Config.h:59
Proxy configuration file for TerraView (see terraview_config.h).