Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/kornelski/7z.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '7zip/Compress/Rar29/Original/array.hpp')
-rwxr-xr-x7zip/Compress/Rar29/Original/array.hpp121
1 files changed, 0 insertions, 121 deletions
diff --git a/7zip/Compress/Rar29/Original/array.hpp b/7zip/Compress/Rar29/Original/array.hpp
deleted file mode 100755
index 3afec70c..00000000
--- a/7zip/Compress/Rar29/Original/array.hpp
+++ /dev/null
@@ -1,121 +0,0 @@
-#ifndef _RAR_ARRAY_
-#define _RAR_ARRAY_
-
-extern ErrorHandler ErrHandler;
-
-template <class T> class Array
-{
- private:
- T *Buffer;
- int BufSize;
- int AllocSize;
- public:
- Array();
- Array(int Size);
- ~Array();
- inline void CleanData();
- inline T& operator [](int Item);
- inline int Size();
- void Add(int Items);
- void Alloc(int Items);
- void Reset();
- void operator = (Array<T> &Src);
- void Push(T Item);
-};
-
-template <class T> void Array<T>::CleanData()
-{
- Buffer=NULL;
- BufSize=0;
- AllocSize=0;
-}
-
-
-template <class T> Array<T>::Array()
-{
- CleanData();
-}
-
-
-template <class T> Array<T>::Array(int Size)
-{
- Buffer=(T *)rarmalloc(sizeof(T)*Size);
- if (Buffer==NULL && Size!=0)
- ErrHandler.MemoryError();
-
- AllocSize=BufSize=Size;
-}
-
-
-template <class T> Array<T>::~Array()
-{
- if (Buffer!=NULL)
- rarfree(Buffer);
-}
-
-
-template <class T> inline T& Array<T>::operator [](int Item)
-{
- return(Buffer[Item]);
-}
-
-
-template <class T> inline int Array<T>::Size()
-{
- return(BufSize);
-}
-
-
-template <class T> void Array<T>::Add(int Items)
-{
- BufSize+=Items;
- if (BufSize>AllocSize)
- {
- int Suggested=AllocSize+AllocSize/4+32;
- int NewSize=Max(BufSize,Suggested);
-
- Buffer=(T *)rarrealloc(Buffer,NewSize*sizeof(T));
- if (Buffer==NULL)
- ErrHandler.MemoryError();
- AllocSize=NewSize;
- }
-}
-
-
-template <class T> void Array<T>::Alloc(int Items)
-{
- if (Items>AllocSize)
- Add(Items-BufSize);
- else
- BufSize=Items;
-}
-
-
-template <class T> void Array<T>::Reset()
-{
- if (Buffer!=NULL)
- {
- rarfree(Buffer);
- Buffer=NULL;
- }
- BufSize=0;
- AllocSize=0;
-}
-
-
-template <class T> void Array<T>::operator =(Array<T> &Src)
-{
- Reset();
- Alloc(Src.BufSize);
- if (Src.BufSize!=0)
- memcpy((void *)Buffer,(void *)Src.Buffer,Src.BufSize*sizeof(T));
-}
-
-
-template <class T> void Array<T>::Push(T Item)
-{
- Add(1);
- (*this)[Size()-1]=Item;
-}
-
-#endif