/[escript]/branches/arrexp_2137_win/escript/src/DataTagged.cpp
ViewVC logotype

Diff of /branches/arrexp_2137_win/escript/src/DataTagged.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1981 by jfenwick, Thu Nov 6 05:27:33 2008 UTC revision 2005 by jfenwick, Mon Nov 10 01:21:39 2008 UTC
# Line 31  using namespace std; Line 31  using namespace std;
31  namespace escript {  namespace escript {
32    
33  DataTagged::DataTagged()  DataTagged::DataTagged()
34    : DataAbstract(FunctionSpace(),DataTypes::scalarShape)    : parent(FunctionSpace(),DataTypes::scalarShape)
35  {  {
36    // default constructor    // default constructor
37    
# Line 69  DataTagged::DataTagged(const FunctionSpa Line 69  DataTagged::DataTagged(const FunctionSpa
69                         const DataTypes::ShapeType &shape,                         const DataTypes::ShapeType &shape,
70                         const int tags[],                         const int tags[],
71                         const ValueType& data)                         const ValueType& data)
72    : DataAbstract(what,shape)    : parent(what,shape)
73  {  {
74    // alternative constructor    // alternative constructor
75    // not unit_tested tested yet    // not unit_tested tested yet
# Line 103  DataTagged::DataTagged(const FunctionSpa Line 103  DataTagged::DataTagged(const FunctionSpa
103                         const DataTypes::ShapeType &shape,                         const DataTypes::ShapeType &shape,
104                         const TagListType& tags,                         const TagListType& tags,
105                         const ValueType& data)                         const ValueType& data)
106    : DataAbstract(what,shape)    : parent(what,shape)
107  {  {
108    // alternative constructor    // alternative constructor
109    
# Line 145  DataTagged::DataTagged(const FunctionSpa Line 145  DataTagged::DataTagged(const FunctionSpa
145    
146    
147  DataTagged::DataTagged(const DataTagged& other)  DataTagged::DataTagged(const DataTagged& other)
148    : DataAbstract(other.getFunctionSpace(),other.getShape()),    : parent(other.getFunctionSpace(),other.getShape()),
149    m_offsetLookup(other.m_offsetLookup),    m_offsetLookup(other.m_offsetLookup),
150    m_data(other.m_data)    m_data(other.m_data)
151  {  {
# Line 157  DataTagged::DataTagged(const DataTagged& Line 157  DataTagged::DataTagged(const DataTagged&
157  }  }
158    
159  DataTagged::DataTagged(const DataConstant& other)  DataTagged::DataTagged(const DataConstant& other)
160    : DataAbstract(other.getFunctionSpace(),other.getShape())    : parent(other.getFunctionSpace(),other.getShape())
161  {  {
162    // copy constructor    // copy constructor
163    
# Line 185  DataTagged::DataTagged(const FunctionSpa Line 185  DataTagged::DataTagged(const FunctionSpa
185               const DataTypes::ShapeType& shape,               const DataTypes::ShapeType& shape,
186           const DataTypes::ValueType& defaultvalue,           const DataTypes::ValueType& defaultvalue,
187               const DataTagged* tagsource)               const DataTagged* tagsource)
188   : DataAbstract(what,shape)   : parent(what,shape)
189  {  {
190  // This constructor has not been unit tested yet  // This constructor has not been unit tested yet
191    
# Line 233  DataTagged::getSlice(const DataTypes::Re Line 233  DataTagged::getSlice(const DataTypes::Re
233    
234  DataTagged::DataTagged(const DataTagged& other,  DataTagged::DataTagged(const DataTagged& other,
235                 const DataTypes::RegionType& region)                 const DataTypes::RegionType& region)
236    : DataAbstract(other.getFunctionSpace(),DataTypes::getResultSliceShape(region))    : parent(other.getFunctionSpace(),DataTypes::getResultSliceShape(region))
237  {  {
238    // slice constructor    // slice constructor
239    
# Line 621  DataTagged::getPointOffset(int sampleNo, Line 621  DataTagged::getPointOffset(int sampleNo,
621  {  {
622    int tagKey=getFunctionSpace().getTagFromSampleNo(sampleNo);    int tagKey=getFunctionSpace().getTagFromSampleNo(sampleNo);
623    DataMapType::const_iterator pos(m_offsetLookup.find(tagKey));    DataMapType::const_iterator pos(m_offsetLookup.find(tagKey));
624      DataTypes::ValueType::size_type offset=m_defaultValueOffset;
625      if (pos!=m_offsetLookup.end()) {
626        offset=pos->second;
627      }
628      return offset;
629    }
630    
631    DataTypes::ValueType::size_type
632    DataTagged::getPointOffset(int sampleNo,
633                               int dataPointNo)
634    {
635      int tagKey=getFunctionSpace().getTagFromSampleNo(sampleNo);
636      DataMapType::const_iterator pos(m_offsetLookup.find(tagKey));
637    DataTypes::ValueType::size_type offset=m_defaultValueOffset;    DataTypes::ValueType::size_type offset=m_defaultValueOffset;
638    if (pos!=m_offsetLookup.end()) {    if (pos!=m_offsetLookup.end()) {
639      offset=pos->second;      offset=pos->second;

Legend:
Removed from v.1981  
changed lines
  Added in v.2005

  ViewVC Help
Powered by ViewVC 1.1.26