NAMD
Public Member Functions | Protected Attributes | List of all members
SortedArray< Type > Class Template Reference

#include <ResizeArrayRaw.h>

Inheritance diagram for SortedArray< Type >:
SortableResizeArray< Elem > ResizeArray< T > UniqueSortedArray< PatchElem >

Public Member Functions

 SortedArray (void)
 
 SortedArray (int s)
 
 SortedArray (SortedArray< Elem > &sa)
 
 SortedArray (SortableResizeArray< Elem > &ra)
 
SortedArray< Elem > & operator= (SortedArray< Elem > &sa)
 
SortedArray< Elem > & operator= (SortableResizeArray< Elem > &ra)
 
int load (const Elem &elem)
 
int add (const Elem &elem)
 
void del (const Elem &elem)
 
void sort (void)
 
int bsearch (const Elem &elem)
 
int insert (const Elem &elem)
 
int index (const Elem &elem)
 
Elem * find (const Elem &elem)
 
- Public Member Functions inherited from SortableResizeArray< Elem >
 SortableResizeArray (void)
 
 SortableResizeArray (int size)
 
 SortableResizeArray (ResizeArray< Elem > &ra)
 
 SortableResizeArray (SortableResizeArray< Elem > &ra)
 
 SortableResizeArray (const ResizeArray< Elem > *ra)
 
 SortableResizeArray (const SortableResizeArray< Elem > *ra)
 
 SortableResizeArray (Elem **const r, int numElem, int maxElem)
 
SortableResizeArray< Elem > & operator= (SortableResizeArray< Elem > &sa)
 
 ~SortableResizeArray (void)
 
void init (void)
 
void sort (void)
 
void sort (int bot, int top)
 
void uniq (void)
 
int bsearch (const Elem &elem) const
 
- Public Member Functions inherited from ResizeArray< T >
iterator begin (void)
 
iterator end (void)
 
const_iterator const_begin (void) const
 
const_iterator const_end (void) const
 
 ResizeArray (void)
 
 ResizeArray (int s)
 
void copy (ResizeArray< Elem > &ra)
 
void swap (ResizeArray< Elem > &ra)
 
bool shared () const
 
 ResizeArray (Elem **array, int arraySize, int allocSize=0)
 
 ~ResizeArray (void)
 
void resize (int i)
 
void clear ()
 
void setall (const Elem &elem)
 
int add (const Elem &elem)
 
void del (int index, int num=1)
 
int insert (const Elem &elem, int index)
 
Elem & item (int i)
 
Elem & operator[] (int index)
 
const Elem & operator[] (int index) const
 
int size (void) const
 
int find (const Elem &e) const
 

Protected Attributes

int isSorted
 
- Protected Attributes inherited from ResizeArray< T >
ResizeArrayRaw< Elem > rep
 

Additional Inherited Members

- Public Types inherited from ResizeArray< T >
typedef Elem * iterator
 
typedef const Elem * const_iterator
 

Detailed Description

template<class Type>
class SortedArray< Type >

Copyright (c) 1995, 1996, 1997, 1998, 1999, 2000 by The Board of Trustees of the University of Illinois. All rights reserved.

Definition at line 27 of file ResizeArrayRaw.h.

Constructor & Destructor Documentation

template<class Type>
SortedArray< Type >::SortedArray ( void  )
inline

Definition at line 20 of file SortedArray.h.

template<class Type>
SortedArray< Type >::SortedArray ( int  s)
inline

Definition at line 24 of file SortedArray.h.

template<class Type>
SortedArray< Type >::SortedArray ( SortedArray< Elem > &  sa)
inline

Definition at line 28 of file SortedArray.h.

29  if(!(isSorted = sa.isSorted)) sort();
30  isSorted = 1;
31  }
void sort(void)
Definition: SortedArray.h:66
template<class Type>
SortedArray< Type >::SortedArray ( SortableResizeArray< Elem > &  ra)
inline

Definition at line 33 of file SortedArray.h.

33  :
35  sort(); isSorted = 1;
36  }
void sort(void)
Definition: SortedArray.h:66

Member Function Documentation

template<class Type>
int SortedArray< Type >::add ( const Elem &  elem)
inline
template<class Type>
int SortedArray< Type >::bsearch ( const Elem &  elem)
inline
template<class Type>
void SortedArray< Type >::del ( const Elem &  elem)
inline

Definition at line 59 of file SortedArray.h.

Referenced by PatchMgr::sendMovePatches(), PatchMgr::sendOneHomePatch(), Patch::unregisterDEdaSumDeposit(), Patch::unregisterForceDeposit(), Patch::unregisterPositionPickup(), and Patch::unregisterPsiSumDeposit().

59  {
60  int found = bsearch(elem);
61  if (this->size() != 0 && this->rep[found] == elem) {
63  }
64  }
ResizeArrayRaw< Elem > rep
Definition: ResizeArray.h:31
void del(int index, int num=1)
Definition: ResizeArray.h:104
int bsearch(const Elem &elem)
Definition: SortedArray.h:68
int size(void) const
Definition: ResizeArray.h:127
template<class Type>
Elem* SortedArray< Type >::find ( const Elem &  elem)
inline
template<class Type>
int SortedArray< Type >::index ( const Elem &  elem)
inline

Definition at line 75 of file SortedArray.h.

75 { return bsearch(elem); }
int bsearch(const Elem &elem)
Definition: SortedArray.h:68
template<class Type>
int SortedArray< Type >::insert ( const Elem &  elem)
inline
template<class Type>
int SortedArray< Type >::load ( const Elem &  elem)
inline

Definition at line 50 of file SortedArray.h.

Referenced by PatchMgr::createHomePatch(), PatchMgr::movePatch(), ComputeQM::processFullQM(), and ComputeQMMgr::recvPntChrg().

50  {
51  isSorted = 0;
52  return(ResizeArray<Elem>::add(elem));
53  }
template<class Type>
SortedArray<Elem>& SortedArray< Type >::operator= ( SortedArray< Elem > &  sa)
inline

Definition at line 38 of file SortedArray.h.

Referenced by UniqueSortedArray< PatchElem >::operator=().

38  {
40  isSorted = sa.isSorted;
41  return(*this);
42  }
SortableResizeArray< Elem > & operator=(SortableResizeArray< Elem > &sa)
template<class Type>
SortedArray<Elem>& SortedArray< Type >::operator= ( SortableResizeArray< Elem > &  ra)
inline

Definition at line 44 of file SortedArray.h.

44  {
46  sort(); isSorted = 1;
47  return(*this);
48  }
void sort(void)
Definition: SortedArray.h:66
SortableResizeArray< Elem > & operator=(SortableResizeArray< Elem > &sa)
template<class Type>
void SortedArray< Type >::sort ( void  )
inline

Member Data Documentation

template<class Type>
int SortedArray< Type >::isSorted
protected

The documentation for this class was generated from the following files: