summaryrefslogtreecommitdiffstats
path: root/doc/man/man3/qbitarray.3qt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/man/man3/qbitarray.3qt')
-rw-r--r--doc/man/man3/qbitarray.3qt372
1 files changed, 372 insertions, 0 deletions
diff --git a/doc/man/man3/qbitarray.3qt b/doc/man/man3/qbitarray.3qt
new file mode 100644
index 000000000..3f7777a4c
--- /dev/null
+++ b/doc/man/man3/qbitarray.3qt
@@ -0,0 +1,372 @@
+'\" t
+.TH QBitArray 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
+QBitArray \- Array of bits
+.SH SYNOPSIS
+All the functions in this class are reentrant when Qt is built with thread support.</p>
+.PP
+\fC#include <qbitarray.h>\fR
+.PP
+Inherits QByteArray.
+.PP
+.SS "Public Members"
+.in +1c
+.ti -1c
+.BI "\fBQBitArray\fR ()"
+.br
+.ti -1c
+.BI "\fBQBitArray\fR ( uint size )"
+.br
+.ti -1c
+.BI "\fBQBitArray\fR ( const QBitArray & a )"
+.br
+.ti -1c
+.BI "QBitArray & \fBoperator=\fR ( const QBitArray & a )"
+.br
+.ti -1c
+.BI "uint \fBsize\fR () const"
+.br
+.ti -1c
+.BI "bool \fBresize\fR ( uint size )"
+.br
+.ti -1c
+.BI "bool \fBfill\fR ( bool v, int size = -1 )"
+.br
+.ti -1c
+.BI "virtual void \fBdetach\fR ()"
+.br
+.ti -1c
+.BI "QBitArray \fBcopy\fR () const"
+.br
+.ti -1c
+.BI "bool \fBtestBit\fR ( uint index ) const"
+.br
+.ti -1c
+.BI "void \fBsetBit\fR ( uint index )"
+.br
+.ti -1c
+.BI "void \fBsetBit\fR ( uint index, bool value )"
+.br
+.ti -1c
+.BI "void \fBclearBit\fR ( uint index )"
+.br
+.ti -1c
+.BI "bool \fBtoggleBit\fR ( uint index )"
+.br
+.ti -1c
+.BI "bool \fBat\fR ( uint index ) const"
+.br
+.ti -1c
+.BI "QBitVal \fBoperator[]\fR ( int index )"
+.br
+.ti -1c
+.BI "bool \fBoperator[]\fR ( int index ) const"
+.br
+.ti -1c
+.BI "QBitArray & \fBoperator&=\fR ( const QBitArray & a )"
+.br
+.ti -1c
+.BI "QBitArray & \fBoperator|=\fR ( const QBitArray & a )"
+.br
+.ti -1c
+.BI "QBitArray & \fBoperator^=\fR ( const QBitArray & a )"
+.br
+.ti -1c
+.BI "QBitArray \fBoperator~\fR () const"
+.br
+.in -1c
+.SH RELATED FUNCTION DOCUMENTATION
+.in +1c
+.ti -1c
+.BI "QBitArray \fBoperator&\fR ( const QBitArray & a1, const QBitArray & a2 )"
+.br
+.ti -1c
+.BI "QBitArray \fBoperator|\fR ( const QBitArray & a1, const QBitArray & a2 )"
+.br
+.ti -1c
+.BI "QBitArray \fBoperator^\fR ( const QBitArray & a1, const QBitArray & a2 )"
+.br
+.ti -1c
+.BI "QDataStream & \fBoperator<<\fR ( QDataStream & s, const QBitArray & a )"
+.br
+.ti -1c
+.BI "QDataStream & \fBoperator>>\fR ( QDataStream & s, QBitArray & a )"
+.br
+.in -1c
+.SH DESCRIPTION
+The QBitArray class provides an array of bits.
+.PP
+Because QBitArray is a QMemArray, it uses explicit sharing with a reference count.
+.PP
+A QBitArray is a special byte array that can access individual bits and perform bit-operations (AND, OR, XOR and NOT) on entire arrays or bits.
+.PP
+Bits can be manipulated by the setBit() and clearBit() functions, but it is also possible to use the indexing [] operator to test and set individual bits. The [] operator is a little slower than setBit() and clearBit() because some tricks are retquired to implement single-bit assignments.
+.PP
+Example:
+.PP
+.nf
+.br
+ QBitArray a(3);
+.br
+ a.setBit( 0 );
+.br
+ a.clearBit( 1 );
+.br
+ a.setBit( 2 ); // a = [1 0 1]
+.br
+.br
+ QBitArray b(3);
+.br
+ b[0] = 1;
+.br
+ b[1] = 1;
+.br
+ b[2] = 0; // b = [1 1 0]
+.br
+.br
+ QBitArray c;
+.br
+ c = ~a & b; // c = [0 1 0]
+.br
+.fi
+.PP
+When a QBitArray is constructed the bits are uninitialized. Use fill() to set all the bits to 0 or 1. The array can be resized with resize() and copied with copy(). Bits can be set with setBit() and cleared with clearBit(). Bits can be toggled with toggleBit(). A bit's value can be obtained with testBit() and with at().
+.PP
+QBitArray supports the & (AND), | (OR), ^ (XOR) and ~ (NOT) operators.
+.PP
+See also Collection Classes, Implicitly and Explicitly Shared Classes, and Non-GUI Classes.
+.SH MEMBER FUNCTION DOCUMENTATION
+.SH "QBitArray::QBitArray ()"
+Constructs an empty bit array.
+.SH "QBitArray::QBitArray ( uint size )"
+Constructs a bit array of \fIsize\fR bits. The bits are uninitialized.
+.PP
+See also fill().
+.SH "QBitArray::QBitArray ( const QBitArray & a )"
+Constructs a shallow copy of \fIa\fR.
+.SH "bool QBitArray::at ( uint index ) const"
+Returns the value (0 or 1) of the bit at position \fIindex\fR.
+.PP
+See also operator[]().
+.SH "void QBitArray::clearBit ( uint index )"
+Clears the bit at position \fIindex\fR, i.e. sets it to 0.
+.PP
+See also setBit() and toggleBit().
+.SH "QBitArray QBitArray::copy () const"
+Returns a deep copy of the bit array.
+.PP
+See also detach().
+.SH "void QBitArray::detach ()\fC [virtual]\fR"
+Detaches from shared bit array data and makes sure that this bit array is the only one referring to the data.
+.PP
+If multiple bit arrays share common data, this bit array dereferences the data and gets a copy of the data. Nothing happens if there is only a single reference.
+.PP
+See also copy().
+.PP
+Reimplemented from QMemArray.
+.SH "bool QBitArray::fill ( bool v, int size = -1 )"
+Fills the bit array with \fIv\fR (1's if \fIv\fR is TRUE, or 0's if \fIv\fR is FALSE).
+.PP
+fill() resizes the bit array to \fIsize\fR bits if \fIsize\fR is nonnegative.
+.PP
+Returns FALSE if a nonnegative \fIsize\fR was specified and the bit array could not be resized; otherwise returns TRUE.
+.PP
+See also resize().
+.SH "QBitArray & QBitArray::operator&= ( const QBitArray & a )"
+Performs the AND operation between all bits in this bit array and \fIa\fR. Returns a reference to this bit array.
+.PP
+The result has the length of the longest of the two bit arrays, with any missing bits (i.e. if one array is shorter than the other), taken to be 0.
+.PP
+.nf
+.br
+ QBitArray a( 3 ), b( 2 );
+.br
+ a[0] = 1; a[1] = 0; a[2] = 1; // a = [1 0 1]
+.br
+ b[0] = 1; b[1] = 0; // b = [1 0]
+.br
+ a &= b; // a = [1 0 0]
+.br
+.fi
+.PP
+See also operator|=(), operator^=(), and operator~().
+.SH "QBitArray & QBitArray::operator= ( const QBitArray & a )"
+Assigns a shallow copy of \fIa\fR to this bit array and returns a reference to this array.
+.SH "QBitVal QBitArray::operator[] ( int index )"
+Implements the [] operator for bit arrays.
+.PP
+The returned QBitVal is a context object. It makes it possible to get and set a single bit value by its \fIindex\fR position.
+.PP
+Example:
+.PP
+.nf
+.br
+ QBitArray a( 3 );
+.br
+ a[0] = 0;
+.br
+ a[1] = 1;
+.br
+ a[2] = a[0] ^ a[1];
+.br
+.fi
+.PP
+The functions testBit(), setBit() and clearBit() are faster.
+.PP
+See also at().
+.SH "bool QBitArray::operator[] ( int index ) const"
+This is an overloaded member function, provided for convenience. It behaves essentially like the above function.
+.PP
+Implements the [] operator for constant bit arrays.
+.SH "QBitArray & QBitArray::operator^= ( const QBitArray & a )"
+Performs the XOR operation between all bits in this bit array and \fIa\fR. Returns a reference to this bit array.
+.PP
+The result has the length of the longest of the two bit arrays, with any missing bits (i.e. if one array is shorter than the other), taken to be 0.
+.PP
+.nf
+.br
+ QBitArray a( 3 ), b( 2 );
+.br
+ a[0] = 1; a[1] = 0; a[2] = 1; // a = [1 0 1]
+.br
+ b[0] = 1; b[1] = 0; // b = [1 0]
+.br
+ a ^= b; // a = [0 0 1]
+.br
+.fi
+.PP
+See also operator&=(), operator|=(), and operator~().
+.SH "QBitArray & QBitArray::operator|= ( const QBitArray & a )"
+Performs the OR operation between all bits in this bit array and \fIa\fR. Returns a reference to this bit array.
+.PP
+The result has the length of the longest of the two bit arrays, with any missing bits (i.e. if one array is shorter than the other), taken to be 0.
+.PP
+.nf
+.br
+ QBitArray a( 3 ), b( 2 );
+.br
+ a[0] = 1; a[1] = 0; a[2] = 1; // a = [1 0 1]
+.br
+ b[0] = 1; b[1] = 0; // b = [1 0]
+.br
+ a |= b; // a = [1 0 1]
+.br
+.fi
+.PP
+See also operator&=(), operator^=(), and operator~().
+.SH "QBitArray QBitArray::operator~ () const"
+Returns a bit array that contains the inverted bits of this bit array.
+.PP
+Example:
+.PP
+.nf
+.br
+ QBitArray a( 3 ), b;
+.br
+ a[0] = 1; a[1] = 0; a[2] = 1; // a = [1 0 1]
+.br
+ b = ~a; // b = [0 1 0]
+.br
+.fi
+.SH "bool QBitArray::resize ( uint size )"
+Resizes the bit array to \fIsize\fR bits and returns TRUE if the bit array could be resized; otherwise returns FALSE. The array becomes a null array if \fIsize\fR == 0.
+.PP
+If the array is expanded, the new bits are set to 0.
+.PP
+See also size().
+.SH "void QBitArray::setBit ( uint index, bool value )"
+Sets the bit at position \fIindex\fR to \fIvalue\fR.
+.PP
+Equivalent to:
+.PP
+.nf
+.br
+ if ( value )
+.br
+ setBit( index );
+.br
+ else
+.br
+ clearBit( index );
+.br
+.fi
+.PP
+See also clearBit() and toggleBit().
+.SH "void QBitArray::setBit ( uint index )"
+This is an overloaded member function, provided for convenience. It behaves essentially like the above function.
+.PP
+Sets the bit at position \fIindex\fR to 1.
+.PP
+See also clearBit() and toggleBit().
+.SH "uint QBitArray::size () const"
+Returns the bit array's size (number of bits).
+.PP
+See also resize().
+.SH "bool QBitArray::testBit ( uint index ) const"
+Returns TRUE if the bit at position \fIindex\fR is set, i.e. is 1; otherwise returns FALSE.
+.PP
+See also setBit() and clearBit().
+.SH "bool QBitArray::toggleBit ( uint index )"
+Toggles the bit at position \fIindex\fR.
+.PP
+If the previous value was 0, the new value will be 1. If the previous value was 1, the new value will be 0.
+.PP
+See also setBit() and clearBit().
+.SH RELATED FUNCTION DOCUMENTATION
+.SH "QBitArray operator& ( const QBitArray & a1, const QBitArray & a2 )"
+Returns the AND result between the bit arrays \fIa1\fR and \fIa2\fR.
+.PP
+The result has the length of the longest of the two bit arrays, with any missing bits (i.e. if one array is shorter than the other), taken to be 0.
+.PP
+See also QBitArray::operator&=().
+.SH "QDataStream & operator<< ( QDataStream & s, const QBitArray & a )"
+Writes bit array \fIa\fR to stream \fIs\fR.
+.PP
+See also Format of the QDataStream operators.
+.SH "QDataStream & operator>> ( QDataStream & s, QBitArray & a )"
+Reads a bit array into \fIa\fR from stream \fIs\fR.
+.PP
+See also Format of the QDataStream operators.
+.SH "QBitArray operator^ ( const QBitArray & a1, const QBitArray & a2 )"
+Returns the XOR result between the bit arrays \fIa1\fR and \fIa2\fR.
+.PP
+The result has the length of the longest of the two bit arrays, with any missing bits (i.e. if one array is shorter than the other), taken to be 0.
+.PP
+See also QBitArray::operator^().
+.SH "QBitArray operator| ( const QBitArray & a1, const QBitArray & a2 )"
+Returns the OR result between the bit arrays \fIa1\fR and \fIa2\fR.
+.PP
+The result has the length of the longest of the two bit arrays, with any missing bits (i.e. if one array is shorter than the other), taken to be 0.
+.PP
+See also QBitArray::operator|=().
+
+.SH "SEE ALSO"
+.BR http://doc.trolltech.com/qbitarray.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
+Please include the name of the manual page (qbitarray.3qt) and the Qt
+version (3.3.8).