9 #ifndef _MP_utilities_hpp_
10 #define _MP_utilities_hpp_
41 template<
int nbr,
class T>
42 std::vector<T>
makeVector(T i1, T i2=0, T i3=0, T i4=0, T i5=0) {
43 std::vector<T> S(nbr);
57 inline int mod(
int a,
int b) {
59 return (t>=0) ? t : t+b;
73 RowMajor(
int s1,
int s2,
int s3,
int s4,
int s5) :
75 size_(s1*s2*s3*s4*s5) {}
76 int f(
int i1=0,
int i2=0,
int i3=0,
int i4=0,
int i5=0)
const {
135 if(
root->count == 1) {
Functor & operator=(const Functor &)
void setName(const std::string &n)
Utility for doing reference counted pointers.
Utility interface class for adding a string name onto a structure.
int f(int i1=0, int i2=0, int i3=0, int i4=0, int i5=0) const
const int outOfBound
Distinct return value on conditions where an index goes out of bounds.
std::vector< T > makeVector(T i1, T i2=0, T i3=0, T i4=0, T i5=0)
const T & operator->() const
Function object. Often used.
RowMajor(int s1, int s2, int s3, int s4, int s5)
virtual void operator()() const =0
const Handle & operator=(const Handle &h)
int mod(int a, int b)
return the strictly positive modulus of two integers
std::string getName() const