File indexing completed on 2024-04-21 03:52:32

0001 /* This file is part of the KDE libraries
0002    SPDX-FileCopyrightText: 2000-2005 David Faure <faure@kde.org>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "kfilterbase.h"
0008 
0009 #include <QIODevice>
0010 
0011 class KFilterBasePrivate
0012 {
0013 public:
0014     KFilterBasePrivate()
0015         : m_flags(KFilterBase::WithHeaders)
0016         , m_dev(nullptr)
0017         , m_bAutoDel(false)
0018     {
0019     }
0020     KFilterBase::FilterFlags m_flags;
0021     QIODevice *m_dev;
0022     bool m_bAutoDel;
0023 };
0024 
0025 KFilterBase::KFilterBase()
0026     : d(new KFilterBasePrivate)
0027 {
0028 }
0029 
0030 KFilterBase::~KFilterBase()
0031 {
0032     if (d->m_bAutoDel) {
0033         delete d->m_dev;
0034     }
0035     delete d;
0036 }
0037 
0038 void KFilterBase::setDevice(QIODevice *dev, bool autodelete)
0039 {
0040     d->m_dev = dev;
0041     d->m_bAutoDel = autodelete;
0042 }
0043 
0044 QIODevice *KFilterBase::device()
0045 {
0046     return d->m_dev;
0047 }
0048 
0049 bool KFilterBase::inBufferEmpty() const
0050 {
0051     return inBufferAvailable() == 0;
0052 }
0053 
0054 bool KFilterBase::outBufferFull() const
0055 {
0056     return outBufferAvailable() == 0;
0057 }
0058 
0059 bool KFilterBase::terminate()
0060 {
0061     return true;
0062 }
0063 
0064 void KFilterBase::reset()
0065 {
0066 }
0067 
0068 void KFilterBase::setFilterFlags(FilterFlags flags)
0069 {
0070     d->m_flags = flags;
0071 }
0072 
0073 KFilterBase::FilterFlags KFilterBase::filterFlags() const
0074 {
0075     return d->m_flags;
0076 }
0077 
0078 void KFilterBase::virtual_hook(int, void *)
0079 {
0080     /*BASE::virtual_hook( id, data );*/
0081 }