Files
geant4/source/geometry/solids/STEP/include/SingleLinkList.h
T
2016-06-01 15:25:35 +02:00

70 lines
1.4 KiB
C++

// This code implementation is the intellectual property of
// the RD44 GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: SingleLinkList.h,v 2.0 1998/07/02 17:03:20 gunter Exp $
// GEANT4 tag $Name: geant4-00 $
//
#ifndef singlelinklist_h
#define singlelinklist_h
/*
* NIST STEP Core Class Library
* clstepcore/SingleLinkList.h
* May 1995
* David Sauder
* KC Morris
* Development of this software was funded by the United States Government,
* and is not subject to copyright.
*/
/* */
#ifdef __O3DB__
#include <OpenOODB.h>
#endif
class SingleLinkNode {
friend class SingleLinkList;
protected:
public:
SingleLinkNode* next;
public:
virtual SingleLinkNode *NextNode () const;
SingleLinkNode() { next =0; }
virtual ~SingleLinkNode() { }
};
class SingleLinkList {
// node which represents the value is contained in the subclass
// since it may have different types for different lists
protected:
SingleLinkNode * head;
SingleLinkNode * tail;
public:
virtual SingleLinkNode *NewNode();
virtual void AppendNode (SingleLinkNode *);
virtual void Empty ();
virtual SingleLinkNode * GetHead () const;
int EntryCount() const;
SingleLinkList ();
virtual ~SingleLinkList ();
};
#endif