Personal tools
You are here: Home Projects C++ Cfront releases Release 3.0.3 source incl-master const-headers Ticket.h
Document Actions

Ticket.h

by Michael L Powell last modified 2007-01-26 03:20

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
« April 2024 »
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
 

Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: