diff options
| -rw-r--r-- | slicer/slicer/modelParts.h | 2 | ||||
| -rw-r--r-- | slicer/test/compilation.cpp | 3 | 
2 files changed, 5 insertions, 0 deletions
| diff --git a/slicer/slicer/modelParts.h b/slicer/slicer/modelParts.h index 6e87fe6..664ef6c 100644 --- a/slicer/slicer/modelParts.h +++ b/slicer/slicer/modelParts.h @@ -183,6 +183,8 @@ namespace Slicer {  			static const std::string & ToModelTypeName(const std::string &);  	}; +	template<typename T> inline ModelPartPtr ModelPartFor(T & t) { return ModelPart::CreateFor(t); } +  	template<typename T>  	class ModelPartForRoot : public ModelPart {  		public: diff --git a/slicer/test/compilation.cpp b/slicer/test/compilation.cpp index da13652..a985d7e 100644 --- a/slicer/test/compilation.cpp +++ b/slicer/test/compilation.cpp @@ -11,6 +11,9 @@ BOOST_TEST_DONT_PRINT_LOG_VALUE(std::type_info);  #define TypeTest(Var, Expr, Explicit, Expected) \  	Var obj = Expr; \ +	Slicer::ModelPartPtr mppc = Slicer::ModelPartFor(obj); \ +	BOOST_REQUIRE_EQUAL(Slicer::Expected, mppc->GetType()); \ +	\  	Slicer::ModelPartPtr mpp = Slicer::ModelPart::CreateFor(obj); \  	BOOST_REQUIRE_EQUAL(Slicer::Expected, mpp->GetType()); \  	\ | 
