template<typename T> struct RemovePointer
{ typedef typename T::myint type; };

template<typename T> struct RemovePointer<T*>
{ typedef typename T::myint type; };

typedef RemovePointer<psttest>::type mymyint;