--- /dev/null
+////////////////////////////////////////////////////////////////////////////////\r
+\r
+// Author: Andy Rushton\r
+// Copyright: (c) Southampton University 1999-2004\r
+// (c) Andy Rushton 2004-2009\r
+// License: BSD License, see ../docs/license.html\r
+\r
+////////////////////////////////////////////////////////////////////////////////\r
+\r
+namespace stlplus\r
+{\r
+\r
+ template<typename T1, typename T2, typename T3, typename T4, typename S1, typename S2, typename S3, typename S4>\r
+ void print_foursome(std::ostream& device,\r
+ const foursome<T1,T2,T3,T4>& values,\r
+ S1 print_fn1,\r
+ S2 print_fn2,\r
+ S3 print_fn3,\r
+ S4 print_fn4,\r
+ const std::string& separator)\r
+ {\r
+ print_fn1(device, values.first);\r
+ device << separator;\r
+ print_fn2(device, values.second);\r
+ device << separator;\r
+ print_fn3(device, values.third);\r
+ device << separator;\r
+ print_fn4(device, values.fourth);\r
+ }\r
+\r
+\r
+} // end namespace stlplus\r
+\r