00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef TEMPLATEDEXPORT_HPP_
00031 #define TEMPLATEDEXPORT_HPP_
00032 #define COVERAGE_IGNORE
00033
00039 #include <boost/serialization/export.hpp>
00040
00041 template<class> struct pack;
00042 template<class T> struct pack<void (T)> {
00043 typedef T type;
00044 };
00045
00046 #define EXPORT_TEMPLATE_CLASS2(CLASS, E, S) \
00047 BOOST_CLASS_EXPORT( pack<void (CLASS< E,S >)>::type );
00048
00049 #define EXPORT_TEMPLATE_CLASS1(CLASS, D) \
00050 BOOST_CLASS_EXPORT( pack<void (CLASS< D >)>::type );
00051
00052 #define EXPORT_TEMPLATE_CLASS_ALL_DIMS(CLASS) \
00053 EXPORT_TEMPLATE_CLASS2(CLASS, 1, 1) \
00054 EXPORT_TEMPLATE_CLASS2(CLASS, 1, 2) \
00055 EXPORT_TEMPLATE_CLASS2(CLASS, 1, 3) \
00056 EXPORT_TEMPLATE_CLASS2(CLASS, 2, 2) \
00057 EXPORT_TEMPLATE_CLASS2(CLASS, 2, 3) \
00058 EXPORT_TEMPLATE_CLASS2(CLASS, 3, 3)
00059
00060 #define EXPORT_TEMPLATE_CLASS_SAME_DIMS(CLASS) \
00061 EXPORT_TEMPLATE_CLASS1(CLASS, 1) \
00062 EXPORT_TEMPLATE_CLASS1(CLASS, 2) \
00063 EXPORT_TEMPLATE_CLASS1(CLASS, 3)
00064
00065 #undef COVERAGE_IGNORE
00066 #endif