// GenFem - A high-level finite element library
// Copyright (C) 2010-2026 Eric Bechet
//
// See the LICENSE file for license information and contributions.
// Please report all bugs and problems to <bechet@cadxfem.org>.

#ifndef _GENTENSORBASE_H_
#define _GENTENSORBASE_H_
template<int N=3> class genTensorBase
{
  static int _index2[N][N];
  static int _index3[N][N][N];
  static int _index4[N][N][N][N];
//protected :  
//  static const int _nele[5]; // number of elements based on N and the order of the tensor (0 to 4)
public : 
  inline int getIndex() const
  {
    return 0;
  }
  inline int getIndex(int i) const
  {
    return i;
  }
  inline int getIndex(int i, int j) const
  {
    return _index2[i][j];
  }
  inline int getIndex(int i, int j, int k) const
  {
    return _index3[i][j][k];
  }
  inline int getIndex(int i, int j, int k, int l) const
  {
    return _index4[i][j][k][l];
  }
};




#endif //_GENTENSORBASE_H_