Chris@49
|
1 // Copyright (C) 2008-2011 NICTA (www.nicta.com.au)
|
Chris@49
|
2 // Copyright (C) 2008-2011 Conrad Sanderson
|
Chris@49
|
3 //
|
Chris@49
|
4 // This Source Code Form is subject to the terms of the Mozilla Public
|
Chris@49
|
5 // License, v. 2.0. If a copy of the MPL was not distributed with this
|
Chris@49
|
6 // file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
Chris@49
|
7
|
Chris@49
|
8
|
Chris@49
|
9 //! \addtogroup BaseCube
|
Chris@49
|
10 //! @{
|
Chris@49
|
11
|
Chris@49
|
12
|
Chris@49
|
13
|
Chris@49
|
14 template<typename elem_type, typename derived>
|
Chris@49
|
15 arma_inline
|
Chris@49
|
16 const derived&
|
Chris@49
|
17 BaseCube<elem_type,derived>::get_ref() const
|
Chris@49
|
18 {
|
Chris@49
|
19 return static_cast<const derived&>(*this);
|
Chris@49
|
20 }
|
Chris@49
|
21
|
Chris@49
|
22
|
Chris@49
|
23
|
Chris@49
|
24 template<typename elem_type, typename derived>
|
Chris@49
|
25 inline
|
Chris@49
|
26 void
|
Chris@49
|
27 BaseCube<elem_type,derived>::print(const std::string extra_text) const
|
Chris@49
|
28 {
|
Chris@49
|
29 const unwrap_cube<derived> tmp( (*this).get_ref() );
|
Chris@49
|
30
|
Chris@49
|
31 tmp.M.impl_print(extra_text);
|
Chris@49
|
32 }
|
Chris@49
|
33
|
Chris@49
|
34
|
Chris@49
|
35
|
Chris@49
|
36 template<typename elem_type, typename derived>
|
Chris@49
|
37 inline
|
Chris@49
|
38 void
|
Chris@49
|
39 BaseCube<elem_type,derived>::print(std::ostream& user_stream, const std::string extra_text) const
|
Chris@49
|
40 {
|
Chris@49
|
41 const unwrap_cube<derived> tmp( (*this).get_ref() );
|
Chris@49
|
42
|
Chris@49
|
43 tmp.M.impl_print(user_stream, extra_text);
|
Chris@49
|
44 }
|
Chris@49
|
45
|
Chris@49
|
46
|
Chris@49
|
47
|
Chris@49
|
48 template<typename elem_type, typename derived>
|
Chris@49
|
49 inline
|
Chris@49
|
50 void
|
Chris@49
|
51 BaseCube<elem_type,derived>::raw_print(const std::string extra_text) const
|
Chris@49
|
52 {
|
Chris@49
|
53 const unwrap_cube<derived> tmp( (*this).get_ref() );
|
Chris@49
|
54
|
Chris@49
|
55 tmp.M.impl_raw_print(extra_text);
|
Chris@49
|
56 }
|
Chris@49
|
57
|
Chris@49
|
58
|
Chris@49
|
59
|
Chris@49
|
60 template<typename elem_type, typename derived>
|
Chris@49
|
61 inline
|
Chris@49
|
62 void
|
Chris@49
|
63 BaseCube<elem_type,derived>::raw_print(std::ostream& user_stream, const std::string extra_text) const
|
Chris@49
|
64 {
|
Chris@49
|
65 const unwrap_cube<derived> tmp( (*this).get_ref() );
|
Chris@49
|
66
|
Chris@49
|
67 tmp.M.impl_raw_print(user_stream, extra_text);
|
Chris@49
|
68 }
|
Chris@49
|
69
|
Chris@49
|
70
|
Chris@49
|
71
|
Chris@49
|
72 //! @}
|