All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Selector.cpp
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 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 General Public License for more details.
14 
15  You should have received a copy of the GNU 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 Selector.cpp
22 
23  \brief It models the selector element of an XML Schema.
24 */
25 
26 // TerraLib
27 #include "Selector.h"
28 
29 // STL
30 #include <cassert>
31 
32 te::xsd::Selector::Selector(std::string* xpath, Annotation* ann, std::string* id)
33  : Identifiable(id),
34  Annotated(ann),
35  m_xpath(xpath)
36 {
37  assert(m_xpath);
38 }
39 
41  : Identifiable(rhs),
42  Annotated(rhs),
43  m_xpath(0)
44 {
45  m_xpath = rhs.m_xpath ? new std::string(*(rhs.m_xpath)) : 0;
46 }
47 
49 {
50  delete m_xpath;
51 }
52 
54 {
55  return *this;
56 }
57 
58 std::string* te::xsd::Selector::getXPath() const
59 {
60  return m_xpath;
61 }
62 
63 void te::xsd::Selector::setXPath(std::string* xpath)
64 {
65  delete m_xpath;
66  m_xpath = xpath;
67 }
void setXPath(std::string *xpath)
It sets the xpath expression of the Selector element.
Definition: Selector.cpp:63
A base class for XSD classes that may allow annotation.
Definition: Annotated.h:49
It models the selector element of an XML Schema.
~Selector()
Destructor.
Definition: Selector.cpp:48
Selector(std::string *xpath, Annotation *ann=0, std::string *id=0)
Constructor.
Definition: Selector.cpp:32
A base class for XSD classes that must provide a unique ID property.
Definition: Identifiable.h:46
std::string * m_xpath
It specifies an XPath expression, relative to the element being declared, that identifies the child e...
Definition: Selector.h:99
It models the selector element of an XML Schema.
Definition: Selector.h:44
Selector & operator=(const Selector &rhs)
Assignment operator.
Definition: Selector.cpp:53
A class that models a XSD annotation element.
Definition: Annotation.h:55
std::string * getXPath() const
It returns the xpath expression of the Selector element.
Definition: Selector.cpp:58