DataPartVector.h
1 //##################################################################################################
2 //
3 // Ceetron Desktop Components
4 // Component: UnstructGrid
5 //
6 // --------------------------------------------------------------------------------------------
7 // Copyright (C) 2011, Ceetron AS
8 // This is UNPUBLISHED PROPRIETARY SOURCE CODE of Ceetron AS. The contents of this file may
9 // not be disclosed to third parties, copied or duplicated in any form, in whole or in part,
10 // without the prior written permission of Ceetron AS.
11 //##################################################################################################
12 
13 #pragma once
14 
15 #include "CeeUnstructGrid/Base.h"
16 
17 #include "CeeCore/RefCountedObject.h"
18 #include "CeeCore/Vec3d.h"
19 
20 #include <vector>
21 
22 namespace cee {
23 namespace ug {
24 
25 
26 //==================================================================================================
27 //
28 //
29 //
30 //==================================================================================================
31 class CEE_UG_EXPORT DataPartVector : public RefCountedObject
32 {
33 public:
35  virtual ~DataPartVector();
36 
37  size_t count() const;
38 
39  Vec3d value(size_t index) const;
40  const double* rawValuePointer() const;
41  double* rawValuePointer();
42 
43  void resize(size_t count);
44  void setValue(size_t index, const Vec3d& value);
45  void setValueUndefined(size_t index);
46 
47  void setValues(const std::vector<Vec3d>& values);
48  void setValues(const double values[], size_t vectorCount);
49  void setValuesFloat(const float values[], size_t vectorCount);
50 
51  bool magnitudeRange(double* min, double* max) const;
52 
53 private:
54  CEE_PRIVATE_F(DataResultVector);
55  CEE_PRIVATE_IMPL(DataPartVector);
56  CEE_DISALLOW_COPY_AND_ASSIGN(DataPartVector);
57 };
58 
59 
60 } // namespace ug
61 } // namespace cee
Namespace cee contains all functionality and structures under the Core component. ...
Definition: AppComponent.cpp:26
Vector result values for a part.
Definition: DataPartVector.h:31
Base class for all reference counted objects with built-in support for intrusive reference counting...
Definition: RefCountedObject.h:34
Vector class for a 3D double vector.
Definition: Vec3d.h:26
Vector results for all parts in the geometry.
Definition: DataResultVector.h:29