ESyS-Particle
2.2
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
VtkDataArray.h
Go to the documentation of this file.
1
2
// //
3
// Copyright (c) 2003-2013 by The University of Queensland //
4
// Earth Systems Science Computational Centre (ESSCC) //
5
// http://www.uq.edu.au/esscc //
6
// //
7
// Primary Business: Brisbane, Queensland, Australia //
8
// Licensed under the Open Software License version 3.0 //
9
// http://www.opensource.org/licenses/osl-3.0.php //
10
// //
12
13
14
#ifndef ESYS_LSM_VTKDATAARRAY_H
15
#define ESYS_LSM_VTKDATAARRAY_H
16
17
#include <vector>
18
#include <map>
19
#include <iostream>
20
#include <sstream>
21
22
#include "
Tools/StressCalculator/VtkDataType.h
"
23
24
namespace
esys
25
{
26
namespace
lsm
27
{
28
namespace
vtk
29
{
30
template
<
typename
TmplDataType>
31
class
DataArray
32
{
33
public
:
34
typedef
TmplDataType
DataType
;
35
typedef
typename
DataType::value_type
value_type
;
36
37
DataArray
(
const
DataType
&dataType)
38
:
m_dataType
(dataType),
39
m_valueVector
()
40
{
41
m_valueVector
.reserve(512);
42
}
43
44
void
setData
(
int
index,
const
value_type
&val)
45
{
46
if
(static_cast<int>(
m_valueVector
.size()) <= index) {
47
m_valueVector
.resize(index+1);
48
}
49
m_valueVector
.at(index) = val;
50
}
51
52
int
size
()
const
53
{
54
return
m_valueVector
.size();
55
}
56
57
std::string
getXmlAttributeString
()
const
58
{
59
return
m_dataType
.getXmlAttributeString();
60
}
61
62
void
writeXml
(std::ostream &oStream)
63
{
64
oStream <<
"<DataArray "
<<
getXmlAttributeString
() <<
">"
<<
"\n"
;
65
for
(
typename
ValueVector::const_iterator it =
m_valueVector
.begin(); it !=
m_valueVector
.end(); it++)
66
{
67
oStream << (*it) <<
"\n"
;
68
}
69
oStream <<
"</DataArray>"
;
70
}
71
private
:
72
typedef
std::vector<value_type>
ValueVector
;
73
DataType
m_dataType
;
74
ValueVector
m_valueVector
;
75
};
76
}
77
}
78
}
79
80
#endif
Tools
StressCalculator
VtkDataArray.h
Generated on Mon May 6 2013 23:26:31 for ESyS-Particle by
1.8.3.1