Main Page
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
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::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
AA_TL5_master
terralib5
src
terralib
xsd
SimpleContent.h
Generated on Wed Mar 16 2016 15:42:35 for TerraLib by
1.8.7