8#ifndef elementformulaRCP_std_hh
9#define elementformulaRCP_std_hh
16#define ElemFormRCPClone_D 0
17#define ElemFormRCPValue_D 0
18#define FormRCPClone_D 0
19#define FormRCPValue_D 0
26 template<
class F,
typename G>
27 class RCP<const ElementFormula<F,G> >
28 :
public std::shared_ptr<const ElementFormula<F,G> >
38 explicit RCP(
const F x)
48 template<
class OldF,
class OldG>
77 RCP(
const std::shared_ptr<H>& x)
81 template<
class H,
class I>
100 DEBUGL(ElemFormRCPClone_D,
"Cloned " << **
this <<
" = *" << *
this);
112 operator=(
const RCP<H>& x)
118#if ElemFormRCPValue_D
120 const ElementFormula<F,G>& operator* () const
123 return std::shared_ptr<const ElementFormula<F,G> >(*this).operator*();
132 class RCP<const Formula<F> > :
public std::shared_ptr<const Formula<F> >
161 : std::shared_ptr<const
Formula<F> >(x) {}
164 : std::shared_ptr<const
Formula<F> >(x) {}
167 RCP(
const std::shared_ptr<H>& x)
168 : std::shared_ptr<const Formula<F> >(x) {}
171 template<
class H,
class I>
188 DEBUGL(FormRCPClone_D,
"Cloned " << **
this <<
" = *" << *
this);
200 operator=(
const RCP<H>& x)
211 return std::shared_ptr<const Formula<F> >(*this).operator*();
RCP()
Default constructor.
#define DEBUGL(doit, msg)
Set< F > makeSet(uint n, const F &first,...)