Loading...
Searching...
No Matches
TaskParameters.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 terralib/process/TaskParameters.h
22
23 \brief This class is a holder for all the task input and output parameters
24 */
25
26#ifndef __TERRALIB_PROCESS_INTERNAL_TASKPARAMETERS_H
27#define __TERRALIB_PROCESS_INTERNAL_TASKPARAMETERS_H
28
29 // TerraLib
30#include "Config.h"
31
32#include "TaskCapabilities.h"
33
34//STL include files
35#include <vector>
36
37namespace te
38{
39 namespace process
40 {
41 class ParameterValue;
42
43 /*!
44 \class Task
45
46 \brief This class is a holder for all the task input and output parameters
47 */
49 {
50 public:
51
52 //!< Constructor
54
55 //!< Copy constructor
57
58 /*! \brief Virtual destructor. */
59 virtual ~TaskParameters();
60
61 //!< Assigment operator
63
64 //!< Gets the number of parameters
65 virtual std::size_t size() const;
66
67 //!< Checks if the parameters are valid
68 bool isValid() const;
69
70 //!< Gets the 'index' value. If not set, returns null
71 const te::process::ParameterValue* getValue(std::size_t index) const;
72
73 //!< Sets the 'index' value. Also sets the information related to the owner of the pointer
74 void setValue(std::size_t index, te::process::ParameterValue* value, bool takeOwnership);
75
76 protected:
77
78 //!< Clears the task parameters
79 void clear();
80
81 protected:
82
83 std::vector<te::process::ParameterValue*> m_vecValues;
84 std::vector<bool> m_vecOwnership;
86
87 };
88 } // end namespace process
89} // end namespace te
90
91#endif // __TERRALIB_PROCESS_INTERNAL_TASKPARAMETERS_H
92
Represents the capabilities of a task.
Represents the capabilities of a task.
virtual ~TaskParameters()
Virtual destructor.
TaskParameters(const TaskParameters &rhs)
TaskCapabilities m_capabilities
void clear()
< Clears the task parameters
virtual TaskParameters & operator=(const TaskParameters &rhs)
Gets the number of parameters.
const te::process::ParameterValue * getValue(std::size_t index) const
Sets the 'index' value. Also sets the information related to the owner of the pointer.
std::vector< te::process::ParameterValue * > m_vecValues
TaskParameters(const te::process::TaskCapabilities &taskCapabilities)
< Constructor
std::vector< bool > m_vecOwnership
void setValue(std::size_t index, te::process::ParameterValue *value, bool takeOwnership)
virtual std::size_t size() const
Checks if the parameters are valid.
bool isValid() const
Gets the 'index' value. If not set, returns null.
TerraLib.
#define TEPROCESSEXPORT
Definition: Config.h:47
Proxy configuration file for TerraView (see terraview_config.h).