Long64From32BitsPair.h
Go to the documentation of this file.
// -*- c++ -*-
//*****************************************************************************
//*****************************************************************************
#ifndef polybori_groebner_Long64From32BitsPair_h_
#define polybori_groebner_Long64From32BitsPair_h_
// include basic definitions
#include "groebner_defs.h"
#include "PseudoLongLong.h"
BEGIN_NAMESPACE_PBORIGB
template <unsigned long High, unsigned long Low, unsigned SizeOfLong>
class Long64From32BitsPairBase;
template <unsigned long High, unsigned long Low>
class Long64From32BitsPairBase<High, Low, 4> {
public:
static PseudoLongLong<High, Low> get() {
return PseudoLongLong<High, Low>();
}
};
template <unsigned long High,
unsigned long Low>
class Long64From32BitsPairBase<High, Low, 8> {
public:
typedef unsigned long long_type;
static long_type get() { return (High << sizeof(long_type)*4) + Low; }
};
template <unsigned long High, unsigned long Low>
class Long64From32BitsPair:
public Long64From32BitsPairBase<High, Low,
sizeof(unsigned long)> {
public:
typedef unsigned long long_type;
};
END_NAMESPACE_PBORIGB
#endif /* polybori_groebner_Long64From32BitsPair_h_ */
polybori::groebner::Long64From32BitsPairBase< High, Low, 8 >::long_type
unsigned long long_type
Definition: Long64From32BitsPair.h:47
END_NAMESPACE_PBORIGB
#define END_NAMESPACE_PBORIGB
Definition: groebner_defs.h:16
polybori::groebner::Long64From32BitsPair
This class defines Long64From32BitsPair.
Definition: Long64From32BitsPair.h:56
polybori::groebner::Long64From32BitsPair::long_type
unsigned long long_type
Definition: Long64From32BitsPair.h:60
polybori::groebner::Long64From32BitsPairBase
This class defines an auxiliary class for Long64From32BitsPair.
Definition: Long64From32BitsPair.h:31
BEGIN_NAMESPACE_PBORIGB
#define BEGIN_NAMESPACE_PBORIGB
Definition: groebner_defs.h:15
PseudoLongLong.h
groebner_defs.h
polybori::groebner::PseudoLongLong
This class defines PseudoLongLong.
Definition: PseudoLongLong.h:31