#ifndef Foundation_Math_Frustum_INCLUDED
#define Foundation_Math_Frustum_INCLUDED


namespace Tn {

namespace math {

template <typename T>
struct Frustum {

  typedef T component_type;

  T left;
  T right;
  T bottom;
  T top;
  T fms_near;
  T fms_far;

  Frustum(T l, T r, T b, T t, T n, T f) 
    : left(l), right(r), bottom(b), top(t), 
      fms_near(n), 
      fms_far(f) {}
};


typedef Frustum<float> Frustumf;
typedef Frustum<double> Frustumd;

} // namespace math

} // namespace Tn


#endif
