diff options
Diffstat (limited to 'ml/dlib/dlib/memory_manager_stateless/memory_manager_stateless_kernel_abstract.h')
-rw-r--r-- | ml/dlib/dlib/memory_manager_stateless/memory_manager_stateless_kernel_abstract.h | 142 |
1 files changed, 0 insertions, 142 deletions
diff --git a/ml/dlib/dlib/memory_manager_stateless/memory_manager_stateless_kernel_abstract.h b/ml/dlib/dlib/memory_manager_stateless/memory_manager_stateless_kernel_abstract.h deleted file mode 100644 index 2c5b1e73c..000000000 --- a/ml/dlib/dlib/memory_manager_stateless/memory_manager_stateless_kernel_abstract.h +++ /dev/null @@ -1,142 +0,0 @@ -// Copyright (C) 2006 Davis E. King (davis@dlib.net) -// License: Boost Software License See LICENSE.txt for the full license. -#undef DLIB_MEMORY_MANAGER_STATELESs_ABSTRACT_ -#ifdef DLIB_MEMORY_MANAGER_STATELESs_ABSTRACT_ - -#include "../algs.h" - -namespace dlib -{ - template < - typename T - > - class memory_manager_stateless - { - /*! - REQUIREMENTS ON T - T must have a default constructor. - - WHAT THIS OBJECT REPRESENTS - This object represents some kind of stateless memory manager or memory pool. - Stateless means that all instances (instances of the same kernel implementation that is) - of this object are identical and can be used interchangeably. Note that - implementations are allowed to have some shared global state such as a - global memory pool. - - THREAD SAFETY - This object is thread safe. You may access it from any thread at any time - without synchronizing access. - !*/ - - public: - - typedef T type; - const static bool is_stateless = true; - - template <typename U> - struct rebind { - typedef memory_manager_stateless<U> other; - }; - - memory_manager_stateless( - ); - /*! - ensures - - #*this is properly initialized - throws - - std::bad_alloc - !*/ - - virtual ~memory_manager_stateless( - ); - /*! - ensures - - frees any resources used by *this but has no effect on any shared global - resources used by the implementation. - !*/ - - T* allocate ( - ); - /*! - ensures - - allocates a new object of type T and returns a pointer to it. - throws - - std::bad_alloc or any exception thrown by T's constructor. - If this exception is thrown then the call to allocate() - has no effect on #*this. - !*/ - - void deallocate ( - T* item - ); - /*! - requires - - item == is a pointer to memory that was obtained from a call to - allocate(). (i.e. The pointer you are deallocating must have - come from the same implementation of memory_manager_stateless - that is trying to deallocate it.) - - the memory pointed to by item hasn't already been deallocated. - ensures - - deallocates the object pointed to by item - !*/ - - T* allocate_array ( - unsigned long size - ); - /*! - ensures - - allocates a new array of size objects of type T and returns a - pointer to it. - throws - - std::bad_alloc or any exception thrown by T's constructor. - If this exception is thrown then the call to allocate() - has no effect on #*this. - !*/ - - void deallocate_array ( - T* item - ); - /*! - requires - - item == is a pointer to memory that was obtained from a call to - allocate_array(). (i.e. The pointer you are deallocating must have - come from the same implementation of memory_manager_stateless - that is trying to deallocate it.) - - the memory pointed to by item hasn't already been deallocated. - ensures - - deallocates the array pointed to by item - !*/ - - void swap ( - memory_manager_stateless& item - ); - /*! - ensures - - this function has no effect on *this or item. It is just provided - to make this object's interface more compatable with the other - memory managers. - !*/ - - private: - - // restricted functions - memory_manager_stateless(memory_manager_stateless&); // copy constructor - memory_manager_stateless& operator=(memory_manager_stateless&); // assignment operator - }; - - template < - typename T - > - inline void swap ( - memory_manager_stateless<T>& a, - memory_manager_stateless<T>& b - ) { a.swap(b); } - /*! - provides a global swap function - !*/ - -} - -#endif // DLIB_MEMORY_MANAGER_STATELESs_ABSTRACT_ - - |