Can I change Point to inherit from VectorValue<Real>? To generalize FE and
FEMap (see libmesh issue here), I'd like to replace a lot of the
occurrences in the FEAbstract interface of Point with something like
`PointType<RealType>::type` where I define PointType like:

template <typename RealType>
struct PointType
{
  typedef VectorValue<RealType> type;
};
template <>
struct PointType<Real>
{
  typedef Point type;
};

I'd like the user who's exercising the generalized capability to have some
consistency. E.g. they're used to passing in a std::vector of Points when
optionally reinit'ing on custom points. But if they want points to be a
std::vector of point like things that may include derivative information,
they generally can't use raw TypeVectors (because we've restricted how they
can construct them); they have to use VectorValues. So if they need to use
VectorValues when calling reinit with their custom point type, then I think
it would be good if Point itself is a VectorValue<Real>.

Alex
_______________________________________________
Libmesh-devel mailing list
Libmesh-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to