DataPartSymmetricTensor.h
1 //##################################################################################################
2 //
3 // Ceetron Desktop Components
4 // Component: UnstructGrid
5 //
6 // --------------------------------------------------------------------------------------------
7 // Copyright (C) 2014, 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/SymmetricTensor.h"
19 
20 #include <vector>
21 
22 namespace cee {
23 namespace ug {
24 
25 
26 //==================================================================================================
27 //
28 //
29 //
30 //==================================================================================================
31 class CEE_UG_EXPORT DataPartSymmetricTensor : public RefCountedObject
32 {
33 public:
35  virtual ~DataPartSymmetricTensor();
36 
37  size_t count() const;
38  const SymmetricTensor& value(size_t index) const;
39  SymmetricTensor& value(size_t index);
40 
41  const double* rawValuePointer() const;
42  double* rawValuePointer();
43 
44  void resize(size_t count);
45  void setValue(size_t index, const SymmetricTensor& value);
46  void setValueUndefined(size_t index);
47 
48  void setValues(const std::vector<SymmetricTensor>& values);
49  void setValues(const double values[], size_t symmetricTensorCount);
50 
51 private:
52  CEE_PRIVATE_F(DataResultSymmetricTensor);
53  CEE_PRIVATE_IMPL(DataPartSymmetricTensor);
54  CEE_DISALLOW_COPY_AND_ASSIGN(DataPartSymmetricTensor);
55 
56 };
57 
58 } // namespace ug
59 } // namespace cee
Symmetric tensor results for all parts in the geometry.
Definition: DataResultSymmetricTensor.h:29
Namespace cee contains all functionality and structures under the Core component. ...
Definition: AppComponent.cpp:26
Symmetric tensor result values for a part.
Definition: DataPartSymmetricTensor.h:31
A symmetric 3x3 tensor represented by 6 values: xx, yy, zz, xy, yz, zx.
Definition: SymmetricTensor.h:26
Base class for all reference counted objects with built-in support for intrusive reference counting...
Definition: RefCountedObject.h:34