StringPosition.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/se/StringPosition.h
22 
23  \brief It returns the position of first occurence of a substring (String formatting functions).
24 */
25 
26 #ifndef __TERRALIB_SE_INTERNAL_STRINGPOSITION_H
27 #define __TERRALIB_SE_INTERNAL_STRINGPOSITION_H
28 
29 // TerraLib
30 #include "Function.h"
31 
32 namespace te
33 {
34 // Forward declaration
35  class ParameterValue;
36 
37  namespace se
38  {
39  /*!
40  \class StringPosition
41 
42  \brief It returns the position of first occurence of a substring (String formatting functions).
43 
44  This function returns the position of the first
45  occurrence (counting from 1) of the LookupString
46  in StringValue. Zero is returned in case of
47  search failure. The direction of search is determined
48  by the attribute searchdirection, which can take
49  values "frontToBack" and "backToFront", where
50  the former is the default.
51 
52  \sa Function, ParameterValue, StringLength, Trim
53  */
55  {
56  public:
57 
58  /*!
59  \enum SearchDirectionType
60 
61  \brief It controls the direction of search.
62  */
64  {
65  FRONTTOBACK, /*!< It means to search from front to back. */
66  BACKTOFRONT /*!< It means to search from back to front. */
67  };
68 
69  /** @name Initializer Methods
70  * Methods related to instantiation and destruction.
71  */
72  //@{
73 
74  /*! \brief It initializes a new StringPosition. */
76 
77  /*! \brief Destructor. */
78  ~StringPosition();
79 
80  //@}
81 
82  void setLookupString(ParameterValue* v);
83  void setStringValue(ParameterValue* v);
84  void setSearchDirection(SearchDirectionType t);
85 
86  private:
87 
88  ParameterValue* m_lookupString; //!< Mandatory.
89  ParameterValue* m_stringValue; //!< Mandatory.
91  };
92 
93  } // end namespace se
94 } // end namespace te
95 
96 #endif // __TERRALIB_SE_INTERNAL_STRINGPOSITION_H
SearchDirectionType
It controls the direction of search.
SearchDirectionType m_searchDirection
Mandatory.
Symbology Encoding functions.
Definition: Function.h:65
The "ParameterValueType" uses WFS-Filter expressions to give values for SE graphic parameters...
URI C++ Library.
#define TESEEXPORT
You can use this macro in order to export/import classes and functions from this module.
Definition: Config.h:187
Symbology Encoding functions.
ParameterValue * m_stringValue
Mandatory.
ParameterValue * m_lookupString
Mandatory.
It returns the position of first occurence of a substring (String formatting functions).