37 #ifndef NEKTAR_LIB_UTILITIES_BASICUTILS_RAW_TYPE_HPP 
   38 #define NEKTAR_LIB_UTILITIES_BASICUTILS_RAW_TYPE_HPP 
   40 #include <boost/shared_ptr.hpp> 
   90     struct RawType<const volatile T* 
volatile> { 
typedef T 
type; };
 
   99     struct RawType<volatile T* 
const volatile> { 
typedef T 
type; };
 
  102     struct RawType<const volatile T* 
const volatile> { 
typedef T 
type; };
 
  111     struct RawType<volatile boost::shared_ptr<T> > { 
typedef T 
type; };
 
  114     struct RawType<const volatile boost::shared_ptr<T> > { 
typedef T 
type; };
 
  121     struct RawType<const boost::shared_ptr<const T> > { 
typedef T 
type; };
 
  124     struct RawType<volatile boost::shared_ptr<const T> > { 
typedef T 
type; };
 
  127     struct RawType<const volatile boost::shared_ptr<const T> > { 
typedef T 
type; };
 
  132     struct RawType<boost::shared_ptr<volatile T> > { 
typedef T 
type; };
 
  135     struct RawType<const boost::shared_ptr<volatile T> > { 
typedef T 
type; };
 
  138     struct RawType<volatile boost::shared_ptr<volatile T> > { 
typedef T 
type; };
 
  141     struct RawType<const volatile boost::shared_ptr<volatile T> > { 
typedef T 
type; };
 
  145     struct RawType<boost::shared_ptr<const volatile T> > { 
typedef T 
type; };
 
  148     struct RawType<const boost::shared_ptr<const volatile T> > { 
typedef T 
type; };
 
  151     struct RawType<volatile boost::shared_ptr<const volatile T> > { 
typedef T 
type; };
 
  154     struct RawType<const volatile boost::shared_ptr<const volatile T> > { 
typedef T 
type; };
 
  158 #endif //NEKTAR_LIB_UTILITIES_BASICUTILS_RAW_TYPE_HPP