casacore
Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
casacore::ListNotice< t > Class Template Reference

More...

#include <List.h>

Public Types

enum  modification {
  DELETE ,
  ADD ,
  REMOVE ,
  SWAP
}
 

Public Member Functions

uInt type () const
 This function returns the Notice "type", which is retrieved from the "type registry". More...
 
int operator== (const Notice &op) const
 This operator can be used to compare two ListNotices. More...
 
- Public Member Functions inherited from casacore::Notice
 Notice ()
 
virtual ~Notice ()
 

Private Member Functions

 ListNotice (modification m, Link< t > *oc, Link< t > *op, Link< t > *nc, Link< t > *np, int of, int nf=0)
 This is used to construct a list notice. More...
 
 ListNotice ()
 This constructor is used to initialize a notice for a deleted "List". More...
 

Private Attributes

modification mod
 
Link< t > * oprev
 
Link< t > * ocur
 
Link< t > * nprev
 
Link< t > * ncur
 
int off
 
int otherOff
 

Friends

class ConstListIter< t >
 
class ListIter< t >
 
class List< t >
 

Detailed Description

template<class t>
class casacore::ListNotice< t >

Linked list update notice

Intended use:

Internal

Review Status

Reviewed By:
UNKNOWN
Date Reviewed:
before2004/08/25

Synopsis

This class is the notification which is passed between List<t> and ListIter<t> in order to keep cursors and container in sync. This is the mechanism which allows multiple iterators to view the same list and automatically update as the list is changed. See the Notice class for more information.

Definition at line 73 of file List.h.

Member Enumeration Documentation

◆ modification

template<class t >
enum casacore::ListNotice::modification
Enumerator
DELETE 
ADD 
REMOVE 
SWAP 

Definition at line 78 of file List.h.

Constructor & Destructor Documentation

◆ ListNotice() [1/2]

template<class t >
casacore::ListNotice< t >::ListNotice ( modification  m,
Link< t > *  oc,
Link< t > *  op,
Link< t > *  nc,
Link< t > *  np,
int  of,
int  nf = 0 
)
inlineprivate

This is used to construct a list notice.

The parameters are:

  • (m) what was done to the list
  • (oc) the old current position
  • (op) the old previous position
  • (nc) the new current position
  • (np) the new previous position
  • (of) current offset;
  • (nf) other offset (only used with SWAP mod)

Definition at line 115 of file List.h.

◆ ListNotice() [2/2]

template<class t >
casacore::ListNotice< t >::ListNotice ( )
inlineprivate

This constructor is used to initialize a notice for a deleted "List".

Definition at line 122 of file List.h.

Member Function Documentation

◆ operator==()

template<class t >
int casacore::ListNotice< t >::operator== ( const Notice op) const
virtual

This operator can be used to compare two ListNotices.

Implements casacore::Notice.

◆ type()

template<class t >
uInt casacore::ListNotice< t >::type ( ) const

This function returns the Notice "type", which is retrieved from the "type registry".

The registry information is maintained automatically by the Notice constructors. A form of run time type information, this function is mostly intended for advanced users.

Friends And Related Function Documentation

◆ ConstListIter< t >

template<class t >
friend class ConstListIter< t >
friend

Definition at line 50 of file List.h.

◆ List< t >

template<class t >
friend class List< t >
friend

Definition at line 50 of file List.h.

◆ ListIter< t >

template<class t >
friend class ListIter< t >
friend

Definition at line 50 of file List.h.

Member Data Documentation

◆ mod

template<class t >
modification casacore::ListNotice< t >::mod
private

Definition at line 95 of file List.h.

◆ ncur

template<class t >
Link<t>* casacore::ListNotice< t >::ncur
private

Definition at line 99 of file List.h.

◆ nprev

template<class t >
Link<t>* casacore::ListNotice< t >::nprev
private

Definition at line 98 of file List.h.

◆ ocur

template<class t >
Link<t>* casacore::ListNotice< t >::ocur
private

Definition at line 97 of file List.h.

◆ off

template<class t >
int casacore::ListNotice< t >::off
private

Definition at line 100 of file List.h.

◆ oprev

template<class t >
Link<t>* casacore::ListNotice< t >::oprev
private

Definition at line 96 of file List.h.

◆ otherOff

template<class t >
int casacore::ListNotice< t >::otherOff
private

Definition at line 101 of file List.h.


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