summaryrefslogtreecommitdiffstats
path: root/doc/man/man3/qptrstack.3qt
blob: 34a7db1b156c2ab5d71a0452f049e78c87faeb51 (plain)
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
'\" t
.TH QPtrStack 3qt "2 February 2007" "Trolltech AS" \" -*- nroff -*-
.\" Copyright 1992-2007 Trolltech ASA.  All rights reserved.  See the
.\" license file included in the distribution for a complete license
.\" statement.
.\"
.ad l
.nh
.SH NAME
QPtrStack \- Template class that provides a stack
.SH SYNOPSIS
\fC#include <qptrstack.h>\fR
.PP
.SS "Public Members"
.in +1c
.ti -1c
.BI "\fBQPtrStack\fR ()"
.br
.ti -1c
.BI "\fBQPtrStack\fR ( const QPtrStack<type> & s )"
.br
.ti -1c
.BI "\fB~QPtrStack\fR ()"
.br
.ti -1c
.BI "QPtrStack<type> & \fBoperator=\fR ( const QPtrStack<type> & s )"
.br
.ti -1c
.BI "bool \fBautoDelete\fR () const"
.br
.ti -1c
.BI "void \fBsetAutoDelete\fR ( bool enable )"
.br
.ti -1c
.BI "uint \fBcount\fR () const"
.br
.ti -1c
.BI "bool \fBisEmpty\fR () const"
.br
.ti -1c
.BI "void \fBpush\fR ( const type * d )"
.br
.ti -1c
.BI "type * \fBpop\fR ()"
.br
.ti -1c
.BI "bool \fBremove\fR ()"
.br
.ti -1c
.BI "void \fBclear\fR ()"
.br
.ti -1c
.BI "type * \fBtop\fR () const"
.br
.ti -1c
.BI "\fBoperator type *\fR () const"
.br
.ti -1c
.BI "type * \fBcurrent\fR () const"
.br
.in -1c
.SS "Protected Members"
.in +1c
.ti -1c
.BI "virtual QDataStream & \fBread\fR ( QDataStream & s, QPtrCollection::Item & item )"
.br
.ti -1c
.BI "virtual QDataStream & \fBwrite\fR ( QDataStream & s, QPtrCollection::Item item ) const"
.br
.in -1c
.SH DESCRIPTION
The QPtrStack class is a template class that provides a stack.
.PP
QValueStack is an STL-compatible alternative to this class.
.PP
Define a template instance QPtrStack<X> to create a stack that operates on pointers to X, (X*).
.PP
A stack is a last in, first out (LIFO) structure. Items are added to the top of the stack with push() and retrieved from the top with pop(). Use top() to get a reference to the top element without changing the stack.
.PP
You can control the stack's deletion policy with setAutoDelete().
.PP
For compatibility with the QPtrCollection classes current() and remove() are provided; they both operate on the top().
.PP
See also QPtrList, QPtrQueue, and Non-GUI Classes.
.SH MEMBER FUNCTION DOCUMENTATION
.SH "QPtrStack::QPtrStack ()"
Creates an empty stack.
.SH "QPtrStack::QPtrStack ( const QPtrStack<type> & s )"
Creates a stack by making a shallow copy of another stack \fIs\fR.
.SH "QPtrStack::~QPtrStack ()"
Destroys the stack. All items will be deleted if autoDelete() is TRUE.
.SH "bool QPtrStack::autoDelete () const"
The same as QPtrCollection::autoDelete().
.PP
See also setAutoDelete().
.SH "void QPtrStack::clear ()"
Removes all items from the stack, deleting them if autoDelete() is TRUE.
.PP
See also remove().
.SH "uint QPtrStack::count () const"
Returns the number of items in the stack.
.PP
See also isEmpty().
.SH "type * QPtrStack::current () const"
Returns a pointer to the top item on the stack (most recently pushed). The stack is not changed. Returns 0 if the stack is empty.
.SH "bool QPtrStack::isEmpty () const"
Returns TRUE if the stack contains no elements; otherwise returns FALSE.
.SH "QPtrStack::operator type * () const"
Returns a pointer to the top item on the stack (most recently pushed). The stack is not changed. Returns 0 if the stack is empty.
.SH "QPtrStack<type> & QPtrStack::operator= ( const QPtrStack<type> & s )"
Sets the contents of this stack by making a shallow copy of another stack \fIs\fR. Elements currently in this stack will be deleted if autoDelete() is TRUE.
.SH "type * QPtrStack::pop ()"
Removes the top item from the stack and returns it. The stack must not be empty.
.SH "void QPtrStack::push ( const type * d )"
Adds an element \fId\fR to the top of the stack. Last in, first out.
.SH "QDataStream & QPtrStack::read ( QDataStream & s, QPtrCollection::Item & item )\fC [virtual protected]\fR"
Reads a stack item, \fIitem\fR, from the stream \fIs\fR and returns a reference to the stream.
.PP
The default implementation sets \fIitem\fR to 0.
.PP
See also write().
.SH "bool QPtrStack::remove ()"
Removes the top item from the stack and deletes it if autoDelete() is TRUE. Returns TRUE if there was an item to pop; otherwise returns FALSE.
.PP
See also clear().
.SH "void QPtrStack::setAutoDelete ( bool enable )"
Defines whether this stack auto-deletes its contents. The same as QPtrCollection::setAutoDelete().
.PP
If \fIenable\fR is TRUE the stack auto-deletes its contents; if \fIenable\fR is FALSE the stack does not delete its contents.
.PP
See also autoDelete().
.SH "type * QPtrStack::top () const"
Returns a pointer to the top item on the stack (most recently pushed). The stack is not changed. Returns 0 if the stack is empty.
.SH "QDataStream & QPtrStack::write ( QDataStream & s, QPtrCollection::Item item ) const\fC [virtual protected]\fR"
Writes a stack item, \fIitem\fR, to the stream \fIs\fR and returns a reference to the stream.
.PP
The default implementation does nothing.
.PP
See also read().

.SH "SEE ALSO"
.BR http://doc.trolltech.com/qptrstack.html
.BR http://www.trolltech.com/faq/tech.html
.SH COPYRIGHT
Copyright 1992-2007 Trolltech ASA, http://www.trolltech.com.  See the
license file included in the distribution for a complete license
statement.
.SH AUTHOR
Generated automatically from the source code.
.SH BUGS
If you find a bug in Qt, please report it as described in
.BR http://doc.trolltech.com/bughowto.html .
Good bug reports help us to help you. Thank you.
.P
The definitive Qt documentation is provided in HTML format; it is
located at $QTDIR/doc/html and can be read using Qt Assistant or with
a web browser. This man page is provided as a convenience for those
users who prefer man pages, although this format is not officially
supported by Trolltech. 
.P
If you find errors in this manual page, please report them to
.BR [email protected] .
Please include the name of the manual page (qptrstack.3qt) and the Qt
version (3.3.8).