SheafSystem  0.0.0.0
st2.impl.h
Go to the documentation of this file.
1 
2 //
3 // Copyright (c) 2014 Limit Point Systems, Inc.
4 //
5 // Licensed under the Apache License, Version 2.0 (the "License");
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 // http://www.apache.org/licenses/LICENSE-2.0
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17 
20 
21 
22 #ifndef ST2_IMPL_H
23 #define ST2_IMPL_H
24 
25 #ifndef SHEAF_DLL_SPEC_H
26 #include "SheafSystem/sheaf_dll_spec.h"
27 #endif
28 
29 #ifndef ST2_H
30 #include "SheafSystem/st2.h"
31 #endif
32 
33 namespace fiber_bundle
34 {
35 
36 namespace st2_algebra
37 {
38 
39 template <typename T, typename GLN>
40 T* to_principal_axes(const T& xlite, GLN& xtransform)
41 {
42  // Preconditions:
43 
44  // Body:
45 
46  T* result = xlite.clone();
47 
48  to_principal_axes(xlite, xtransform, *result);
49 
50  // Postconditions:
51 
52  return result;
53 
54  // Exit:
55 }
56 
57 template <typename T, typename GLN>
58 void to_principal_axes(const T& xlite, GLN& xtransform, T& xresult)
59 {
60  // Preconditions:
61 
62  // Body:
63 
64  not_implemented(); //Specialized for some cases (See st2_e2 & st2_e3).
65 
66  // Postconditions:
67 
68  // Exit:
69 }
70 
71 template <typename T, typename GLN>
72 void to_principal_axes(const T& xlite, const T& xpd_lite,
73  GLN& xtransform, T& xresult)
74 {
75  // Preconditions:
76 
77  // Body:
78 
79  not_implemented(); //Specialized for some cases (See st2_e2 & st2_e3).
80 
81  // Postconditions:
82 
83  // Exit:
84 }
85 
86 } // namespace st2_algebra
87 
88 } // namespace fiber_bundle
89 
90 #endif // ifndef ST2_IMPL_H
T * to_principal_axes(const T &xlite, GLN &xtransform)
Computes the principal axes basis for xlite. Returns the diagonalization in the auto-allocated result...
Definition: st2.impl.h:40
Namespace for the fiber_bundles component of the sheaf system.