6 #ifndef CRYPTOPP_EPRECOMP_H 7 #define CRYPTOPP_EPRECOMP_H 25 virtual Element
ConvertIn(
const Element &v)
const {
return v;}
26 virtual Element
ConvertOut(
const Element &v)
const {
return v;}
62 {
return !m_bases.empty();}
83 #ifdef CRYPTOPP_MANUALLY_INSTANTIATE_TEMPLATES virtual bool NeedConversions() const
virtual Element Exponentiate(const DL_GroupPrecomputation< Element > &group, const Integer &exponent) const =0
virtual ~DL_FixedBasePrecomputation()
#define NAMESPACE_BEGIN(x)
DL_FixedBasePrecomputationImpl()
virtual ~DL_FixedBasePrecomputationImpl()
bool IsInitialized() const
Abstract base classes that provide a uniform interface to this library.
virtual void Load(const DL_GroupPrecomputation< Element > &group, BufferedTransformation &storedPrecomputation)=0
virtual Element CascadeExponentiate(const DL_GroupPrecomputation< Element > &group, const Integer &exponent, const DL_FixedBasePrecomputation< Element > &pc2, const Integer &exponent2) const =0
const Element & GetBase(const DL_GroupPrecomputation< Element > &group) const
unsigned int m_windowSize
Classes for performing mathematics over different fields.
virtual Element ConvertIn(const Element &v) const
virtual void SetBase(const DL_GroupPrecomputation< Element > &group, const Element &base)=0
virtual bool IsInitialized() const =0
std::vector< Element > m_bases
virtual const Element & GetBase(const DL_GroupPrecomputation< Element > &group) const =0
virtual void Save(const DL_GroupPrecomputation< Element > &group, BufferedTransformation &storedPrecomputation) const =0
Multiple precision integer with arithmetic operations.
virtual ~DL_GroupPrecomputation()
Multiple precision integer with arithmetic operations.
virtual void Precompute(const DL_GroupPrecomputation< Element > &group, unsigned int maxExpBits, unsigned int storage)=0
virtual Element ConvertOut(const Element &v) const