Ticket.h
Click here to get the file
Size
1.7 kB
-
File type
text/plain
File contents
/*ident "@(#)Graph:incl/Ticket.h 3.1" */
/******************************************************************************
*
* C++ Standard Components, Release 3.0.
*
* Copyright (c) 1991, 1992 AT&T and Unix System Laboratories, Inc.
* Copyright (c) 1988, 1989, 1990 AT&T. All Rights Reserved.
*
* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T and Unix System
* Laboratories, Inc. The copyright notice above does not evidence
* any actual or intended publication of such source code.
*
******************************************************************************/
#ifndef TICKET_DOT_H
#define TICKET_DOT_H
class Vertex;
class Edge;
class Bits;
class Ticket_ATTLC {
friend class Vertex;
friend class Edge;
static const int bits_increment;
int num;
protected:
void Validate(Bits&);
void Invalidate(Bits&);
public:
Ticket_ATTLC() : num(-1) {}
Ticket_ATTLC& operator=(const Ticket_ATTLC& vt) {
num = vt.num;
return *this;
}
virtual void validate() = 0;
virtual void invalidate() = 0;
~Ticket_ATTLC() {}
};
class Vis_v_ticket : public Ticket_ATTLC {
friend class Vertex;
static Bits b;
public:
Vis_v_ticket() {}
~Vis_v_ticket() {}
void validate();
void invalidate();
};
class Vis_e_ticket : public Ticket_ATTLC {
friend class Edge;
static Bits b;
public:
Vis_e_ticket() {}
~Vis_e_ticket() {}
void validate();
void invalidate();
};
class Val_v_ticket : public Ticket_ATTLC {
friend class Vertex;
static Bits b;
public:
Val_v_ticket() {}
~Val_v_ticket() {}
void validate();
void invalidate();
};
class Val_e_ticket : public Ticket_ATTLC {
friend class Edge;
static Bits b;
public:
Val_e_ticket() {}
~Val_e_ticket() {}
void validate();
void invalidate();
};
#endif