Main Page
Modules
Namespaces
Classes
Files
File List
File Members
SimpleContent.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 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 SimpleContent.h
22
23
\brief A class that models an XML Schema simpleContent element.
24
*/
25
26
#ifndef __TERRALIB_XSD_INTERNAL_SIMPLECONTENT_H
27
#define __TERRALIB_XSD_INTERNAL_SIMPLECONTENT_H
28
29
// TerraLib
30
#include "
Annotated.h
"
31
#include "
Identifiable.h
"
32
33
namespace
te
34
{
35
namespace
xsd
36
{
37
// Forward declarations
38
class
TypeDerivation;
39
40
/*!
41
\class SimpleContent
42
43
\brief A class that models an XML Schema simpleContent element.
44
45
The simpleContent element contains extensions or restrictions on a text-only complex type or
46
on a simple type as content and contains no elements.
47
48
\note Parent elements: complexType.
49
*/
50
class
TEXSDEXPORT
SimpleContent
:
public
Identifiable
,
public
Annotated
51
{
52
public
:
53
54
/*!
55
\brief Constructor.
56
57
\param dev It specifies the element content and can be: restriction | extension.
58
\param ann An annotation.
59
\param id It specifies a unique ID for the element.
60
61
\note The SimpleContent object will take the ownership of the pointers.
62
*/
63
SimpleContent
(
TypeDerivation
* dev = 0,
Annotation
* ann = 0, std::string*
id
= 0);
64
65
/*!
66
\brief Copy constructor.
67
68
\param rhs Right-hand-side object.
69
*/
70
SimpleContent
(
const
SimpleContent
& rhs);
71
72
/*! \brief Destructor. */
73
~
SimpleContent
();
74
75
/*!
76
\brief Assignment operator.
77
78
\param rhs Right-hand-side object.
79
80
\return A reference to this object.
81
*/
82
SimpleContent
& operator=(
const
SimpleContent
& rhs);
83
84
/*!
85
\brief It returns the derivation type of this SimpleContent.
86
87
\return The derivation type: restriction | extension.
88
*/
89
TypeDerivation
* getTypeDerivation()
const
;
90
91
/*!
92
\brief It sets the derivation type of this SimpleContent.
93
94
\param dev The derivation type: restriction | extension.
95
*/
96
void
setTypeDerivation(
TypeDerivation
* dev);
97
98
private
:
99
100
TypeDerivation
*
m_derivation
;
//!< It can be: restriction (Restriction4SimpleContent) | extension. (Required)
101
};
102
103
}
// end namespace xsd
104
}
// end namespace te
105
106
#endif // __TERRALIB_XSD_INTERNAL_SIMPLECONTENT_H
te::xsd::Annotated
A base class for XSD classes that may allow annotation.
Definition:
Annotated.h:49
Annotated.h
A base class for XSD classes that may allow annotation.
te::xsd::SimpleContent::m_derivation
TypeDerivation * m_derivation
It can be: restriction (Restriction4SimpleContent) | extension. (Required)
Definition:
SimpleContent.h:100
te::xsd::Identifiable
A base class for XSD classes that must provide a unique ID property.
Definition:
Identifiable.h:46
te
URI C++ Library.
Definition:
AddressGeocodingOp.h:51
te::xsd::TypeDerivation
SimpleType, SimpleContent and ComplexContent can be extend other types. This is just a base class for...
Definition:
TypeDerivation.h:41
Identifiable.h
A base class for XSD classes that must provide a unique ID property.
TEXSDEXPORT
#define TEXSDEXPORT
You can use this macro in order to export/import classes and functions from this module.
Definition:
Config.h:57
te::xsd::SimpleContent
A class that models an XML Schema simpleContent element.
Definition:
SimpleContent.h:50
te::xsd::Annotation
A class that models a XSD annotation element.
Definition:
Annotation.h:55
git_master
terralib5
src
terralib
xsd
SimpleContent.h
Generated on Mon Feb 29 2016 13:55:44 for TerraLib by
1.8.9.1