Loading...
Searching...
No Matches
TaskCapabilities.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/TaskCapabilities.h
22
23 \brief Represents the capabilities of a task
24 */
25
26#ifndef __TERRALIB_PROCESS_INTERNAL_TASKCAPABILITIES_H
27#define __TERRALIB_PROCESS_INTERNAL_TASKCAPABILITIES_H
28
29 // TerraLib
30#include "Config.h"
31#include "ParameterDescriptor.h"
32
33//STL include files
34#include <string>
35#include <vector>
36
37namespace te
38{
39 namespace process
40 {
41 /*!
42 \class TaskCapabilities
43
44 \brief Represents the capabilities of a task
45 */
47 {
48 public:
49
50 /*!
51 \brief Constructor
52 */
54
55 /*! \brief Virtual destructor. */
57
58 //!< Clears the capabilities
59 void clear();
60
61 //!< Gets the number of parameter descriptors
62 std::size_t size() const;
63
64 //!< Adds an input parameter descriptor
66
67 //!< Gets the index-th parameter descriptors
68 const ParameterDescriptor& getParameterDescriptor(std::size_t index) const;
69
70 //!< Gets the parameters descriptors
71 const std::vector<ParameterDescriptor>& getParameterDescriptors() const;
72
73 //!< Filters the parameters list based on the given direction
74 std::vector<ParameterDescriptor> filter(te::process::ParameterDescriptor::Direction direction) const;
75
76 //!< Gets the parameter index given a parameter name
77 std::size_t getParameterIndex(const std::string& name) const;
78
79 protected:
80
81 std::vector<ParameterDescriptor> m_vecParameterDescriptors;
82 };
83 } // end namespace process
84} // end namespace te
85
86#endif // __TERRALIB_PROCESS_INTERNAL_TASKCAPABILITIES_H
87
This class represents the description of a parameter.
Represents the capabilities of a task.
std::vector< ParameterDescriptor > filter(te::process::ParameterDescriptor::Direction direction) const
Gets the parameter index given a parameter name.
std::vector< ParameterDescriptor > m_vecParameterDescriptors
void clear()
Gets the number of parameter descriptors.
virtual ~TaskCapabilities()
Virtual destructor.
const ParameterDescriptor & getParameterDescriptor(std::size_t index) const
Gets the parameters descriptors.
std::size_t size() const
Adds an input parameter descriptor.
std::size_t getParameterIndex(const std::string &name) const
void addParameterDescriptor(const ParameterDescriptor &parameter)
Gets the index-th parameter descriptors.
const std::vector< ParameterDescriptor > & getParameterDescriptors() const
Filters the parameters list based on the given direction.
TerraLib.
#define TEPROCESSEXPORT
Definition: Config.h:47
Proxy configuration file for TerraView (see terraview_config.h).