Go to the documentation of this file. 1 #ifndef __JLANG__JTEMPLATE__
2 #define __JLANG__JTEMPLATE__
20 namespace JPP {
using namespace JLANG; }
39 template<
class JType_t>
68 inline operator const JType_t&()
const
79 inline operator JType_t&()
112 template<
class T,
bool use_polymorphism = false>
124 template<
class T,
bool use_polymorphism = false>
149 template<
bool use_polymorphism,
class T>
165 return in >>
object.object;
178 return out <<
object.object;
229 template<
class JHead_t,
class JTail_t>
254 const JTail_t& tail) :
265 template<
class T,
bool use_polymorphism = false>
277 template<
class T,
bool use_polymorphism = false>
303 template<
bool use_polymorphism,
class T>
333 return out << static_cast<const JTemplate<JHead_t>&>(
object) <<
' '
344 template<
class T,
bool use_polymorphism>
357 template<
class T,
bool use_polymorphism>
370 template<
class T,
bool use_polymorphism>
383 template<
class T,
bool use_polymorphism>
397 template<
bool use_polymorphism,
class T>
413 template<
bool use_polymorphism,
class T>
426 template<
class JHead_t>
const JType_t * operator->() const
Smart pointer operator.
T & c_get(JBool< false > option)
Get reference to object.
const T & get() const
Get reference to object.
friend std::istream & operator>>(std::istream &in, JTemplate< JType_t > &object)
Read object from input.
friend std::ostream & operator<<(std::ostream &out, const JTemplate< JType_t > &object)
Write object to output.
const T & get() const
Get reference to object.
template_type & c_set(const T &value, JBool< false > option)
Set value.
friend std::istream & operator>>(std::istream &in, JTemplate< JTypeList< JHead_t, JTail_t > > &object)
Read object from input.
const JType_t & c_get(JBool< true > option) const
Get reference to object.
const T & c_get(JBool< false > option) const
Get reference to object.
template_type & c_set(const T &value, JBool< true > option)
Set value.
T & get()
Get reference to object.
Template class test for polymorphism.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
JTemplate< JType_t > template_type
template_type & set(const T &value)
Set value.
JTemplate(const JHead_t &head, const JTail_t &tail)
Constructor.
T & c_get(JBool< true > option)
Get reference to object.
JTemplate()
Default constructor.
JType_t * operator->()
Smart pointer operator.
JTemplate()
Default constructor.
friend std::ostream & operator<<(std::ostream &out, const JTemplate< JTypeList< JHead_t, JTail_t > > &object)
Write object to output.
JTemplate()
Default constructor.
JType_t & c_get(JBool< true > option)
Get reference to object.
JTemplate(const JType_t &value)
Constructor.
template_type & set(const JType_t &value)
Set value.
const T & c_get(JBool< true > option) const
Get reference to object.
Auxiliary template class for type bool.
Auxiliary class for managing multiple objects.
template_type & c_set(const T &value, JBool< true > option)
Set value.
template_type & set(const T &value)
Set value.
Template class test for availability of a suitable constructor JType_t(const JArgument_t).
Auxiliary class for managing multiple objects.
Auxiliary classes and methods for language specific functionality.
template_type & set(const T &value)
Set value.
T & get()
Get reference to object.
JTemplate< JTypeList< JHead_t, JTail_t > > template_type
JTemplate(const JHead_t &value)
Constructor.