src/core/alloc_func.hpp
branchnoai
changeset 10181 54df587fef5d
parent 9869 6404afe43575
child 10249 58810805030e
--- a/src/core/alloc_func.hpp	Mon Apr 14 16:24:00 2008 +0000
+++ b/src/core/alloc_func.hpp	Mon Apr 14 21:21:10 2008 +0000
@@ -90,56 +90,4 @@
 	return t_ptr;
 }
 
-/**
- * A small 'wrapper' for allocations that can be done on most OSes on the
- * stack, but are just too large to fit in the stack on devices with a small
- * stack such as the NDS.
- * So when it is possible a stack allocation is made, otherwise a heap
- * allocation is made and this is freed once the struct goes out of scope.
- * @param T      the type to make the allocation for
- * @param length the amount of items to allocate
- */
-template <typename T, size_t length>
-struct SmallStackSafeStackAlloc {
-#if !defined(__NDS__)
-	/** Storing the data on the stack */
-	T data[length];
-#else
-	/** Storing it on the heap */
-	T *data;
-	/** The length (in elements) of data in this allocator. */
-	size_t len;
-
-	/** Allocating the memory */
-	SmallStackSafeStackAlloc() : data(MallocT<T>(length)), len(length) {}
-	/** And freeing when it goes out of scope */
-	~SmallStackSafeStackAlloc() { free(data); }
-#endif
-
-	/**
-	 * Gets a pointer to the data stored in this wrapper.
-	 * @return the pointer.
-	 */
-	inline operator T* () { return data; }
-
-	/**
-	 * Gets a pointer to the data stored in this wrapper.
-	 * @return the pointer.
-	 */
-	inline T* operator -> () { return data; }
-
-	/**
-	 * Gets a pointer to the last data element stored in this wrapper.
-	 * @note needed because endof does not work properly for pointers.
-	 * @return the 'endof' pointer.
-	 */
-	inline T* EndOf() {
-#if !defined(__NDS__)
-		return endof(data);
-#else
-		return &data[len];
-#endif
-	}
-};
-
 #endif /* ALLOC_FUNC_HPP */