DataResultSymmetricTensor.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 #include "CeeUnstructGrid/DataPartSymmetricTensor.h"
17 
18 namespace cee {
19 namespace ug {
20 
21 class DataResultScalar;
22 class DataResultVector;
23 
24 //==================================================================================================
25 //
26 //
27 //
28 //==================================================================================================
29 class CEE_UG_EXPORT DataResultSymmetricTensor : public RefCountedObject
30 {
31 public:
32  DataResultSymmetricTensor(int resultId, ResultMapping mappingType);
33  virtual ~DataResultSymmetricTensor();
34 
35  int resultId() const;
36 
37  size_t partCount() const;
38  const DataPartSymmetricTensor* part(size_t partIndex) const;
39  DataPartSymmetricTensor* part(size_t partIndex);
40  ResultMapping resultMapping() const;
41  void addPart(DataPartSymmetricTensor* part);
42  void removeAllParts();
43 
44  bool deriveScalar(DeriveOperation deriveOperation, DataResultScalar* derivedScalar) const;
45  bool deriveVector(DeriveOperation deriveOperation, DataResultVector* derivedVector) const;
46 
47 private:
48  CEE_PRIVATE_F(DataResultGroup);
49  CEE_PRIVATE_IMPL(DataResultSymmetricTensor);
50  CEE_DISALLOW_COPY_AND_ASSIGN(DataResultSymmetricTensor);
51 };
52 
53 
54 } // namespace ug
55 } // 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
Result group binding a geometry and results (scalar, vector, displacement and/or transformation) ...
Definition: DataResultGroup.h:33
DeriveOperation
Available operations to derive a result from a base result.
Definition: Base.h:57
Scalar result for all parts in the geometry.
Definition: DataResultScalar.h:28
Symmetric tensor result values for a part.
Definition: DataPartSymmetricTensor.h:31
Base class for all reference counted objects with built-in support for intrusive reference counting...
Definition: RefCountedObject.h:34
ResultMapping
Available scalar and vector result mappings.
Definition: Base.h:47
Vector results for all parts in the geometry.
Definition: DataResultVector.h:29