35 #ifndef _BLAZE_MATH_ADAPTORS_SYMMETRICMATRIX_SHAREDVALUE_H_
36 #define _BLAZE_MATH_ADAPTORS_SYMMETRICMATRIX_SHAREDVALUE_H_
43 #include <boost/shared_ptr.hpp>
66 template<
typename Type >
102 inline Pointer
base() const noexcept;
117 void* operator&() const;
144 template< typename Type >
158 template<
typename Type >
160 :
value_( new Type( value ) )
178 template<
typename Type >
182 value_.reset(
new Type() );
193 template<
typename Type >
197 value_.reset(
new Type() );
216 template<
typename Type >
235 template<
typename T1,
typename T2 >
238 template<
typename T1,
typename T2 >
252 template<
typename T1,
typename T2 >
255 return ( lhs.
base() == rhs.
base() );
268 template<
typename T1,
typename T2 >
271 return ( lhs.
base() != rhs.
base() );
287 template<
typename Type >
288 inline bool isDefault(
const SharedValue<Type>& value );
303 template<
typename Type >
#define BLAZE_CONSTRAINT_MUST_NOT_BE_CONST(T)
Constraint on the data type.In case the given data type is a const-qualified type, a compilation error is created.
Definition: Const.h:79
Type & Reference
Reference to the shared value.
Definition: SharedValue.h:72
const Type * ConstPointer
Pointer-to-const to the shared value.
Definition: SharedValue.h:75
Pointer base() const noexcept
Low-level access to the underlying, shared value.
Definition: SharedValue.h:217
#define BLAZE_CONSTRAINT_MUST_NOT_BE_VOLATILE(T)
Constraint on the data type.In case the given data type is a volatile-qualified type, a compilation error is created.
Definition: Volatile.h:79
Type * Pointer
Pointer to the shared value.
Definition: SharedValue.h:74
bool isDefault(const DiagonalProxy< MT > &proxy)
Returns whether the represented element is in default state.
Definition: DiagonalProxy.h:573
Constraint on the data type.
Namespace of the Blaze C++ math library.
Definition: Blaze.h:57
#define BLAZE_CONSTRAINT_MUST_NOT_BE_POINTER_TYPE(T)
Constraint on the data type.In case the given data type T is not a pointer type, a compilation error ...
Definition: Pointer.h:79
Constraint on the data type.
SharedValue()
Default constructor for a SharedValue.
Definition: SharedValue.h:145
Constraint on the data type.
boost::shared_ptr< Type > value_
The shared value.
Definition: SharedValue.h:110
#define BLAZE_CONSTRAINT_MUST_NOT_BE_REFERENCE_TYPE(T)
Constraint on the data type.In case the given data type T is not a reference type, a compilation error is created.
Definition: Reference.h:79
Constraint on the data type.
Type ValueType
Type of the shared value.
Definition: SharedValue.h:71
Value shared among several positions within a symmetric matrix.The SharedValue class template represe...
Definition: SharedValue.h:67
bool operator==(const NegativeAccuracy< A > &lhs, const T &rhs)
Equality comparison between a NegativeAccuracy object and a floating point value. ...
Definition: Accuracy.h:249
bool operator!=(const NegativeAccuracy< A > &lhs, const T &rhs)
Inequality comparison between a NegativeAccuracy object and a floating point value.
Definition: Accuracy.h:289
const Type & ConstReference
Reference-to-const to the shared value.
Definition: SharedValue.h:73
Reference operator*()
Direct access to the shared value.
Definition: SharedValue.h:179