src/core/ptr.h
changeset 570 cc38d7fae91e
parent 569 31a7c6fc511e
child 573 0da9201a048e
--- a/src/core/ptr.h	Fri May 11 08:35:41 2007 +0200
+++ b/src/core/ptr.h	Fri May 11 08:59:11 2007 +0200
@@ -141,6 +141,12 @@
 template <typename T, typename T1, typename T2, typename T3, typename T4, typename T5>
 Ptr<T> MakeNewObject (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5);
 
+template <typename T, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6>
+Ptr<T> MakeNewObject (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6);
+
+template <typename T, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7>
+Ptr<T> MakeNewObject (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7);
+
 
 template <typename T>
 Ptr<T> MakeNewObject (void)
@@ -196,6 +202,24 @@
   return p;
 }
 
+template <typename T, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6>
+Ptr<T> MakeNewObject (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6)
+{
+  T *obj = new T (a1, a2, a3, a4, a5, a6);
+  Ptr<T> p = obj;
+  obj->Unref ();
+  return p;
+}
+
+template <typename T, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7>
+Ptr<T> MakeNewObject (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7)
+{
+  T *obj = new T (a1, a2, a3, a4, a5, a6, a7);
+  Ptr<T> p = obj;
+  obj->Unref ();
+  return p;
+}
+
 
 template <typename T>
 void