#pragma once
#include "AxisAngleFwd.h"
#include <string>
//This is a implementation file used by the templated AxisAngle class. The primary purpose of this 
//class is to form a compilation firewall for the Ve
namespace Aftr
{
   namespace AxisAngleImpl
   {
      //template< typename T >
      //Aftr::VectorT<T> make_VectorT( std::string const& str );

      template< typename T >
      std::string toString( AxisAngleT<T> const& v, size_t length );

      template< typename T >
      T modulus_deg_180_to_neg180( T const deg );

      template< typename T >
      bool isEqual( AxisAngleT<T> const& a, AxisAngleT<T> const& b, T epsilon = 0.00001f ) noexcept;

      //template< typename T >
      //std::string toStringWithMag( VectorT<T> const& v, size_t length );

      //template< typename T >
      //std::optional< VectorT<T> > fromString_opt( std::string const& str );
   
   }

}
