summaryrefslogtreecommitdiffstats
path: root/kfile-plugins/torrent/blist.h
diff options
context:
space:
mode:
Diffstat (limited to 'kfile-plugins/torrent/blist.h')
-rw-r--r--kfile-plugins/torrent/blist.h200
1 files changed, 0 insertions, 200 deletions
diff --git a/kfile-plugins/torrent/blist.h b/kfile-plugins/torrent/blist.h
deleted file mode 100644
index 89721822..00000000
--- a/kfile-plugins/torrent/blist.h
+++ /dev/null
@@ -1,200 +0,0 @@
-/*
- * Copyright (c) 2003, 2004 Michael Pyne <michael.pyne@kdemail.net>
- *
- * This software is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this library; see the file COPYING.
- * If not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-#ifndef _BLIST_H
-#define _BLIST_H
-
-#include <tqvaluelist.h>
-#include <tqcstring.h>
-#include "bbase.h"
-#include "bytetape.h"
-
-typedef TQValueList<BBase *> BBaseVector;
-typedef TQValueList<BBase *>::iterator BBaseVectorIterator;
-
-// Predeclare the following classes
-class BDict;
-class BString;
-class BInt;
-
-/**
- * Class to construct a list of BBase objects from a b-encoded
- * list.
- *
- * @author Michael Pyne <mpyne@grammarian.homelinux.net>
- * @see BBase
- */
-class BList : public BBase
-{
- public:
-
- /**
- * Construct a BList from @p dict.
- *
- * @param dict the buffer to read from
- * @param start the position in the buffer to start
- * reading from
- */
- BList (TQByteArray &dict, unsigned int start = 0);
-
- /**
- * Construct a BList from @p tape. Any changes made to
- * @p tape, such as its current position and data, will be
- * shared with the object that called this constructor. @p tape
- * should already be positioned at the position to read from.
- * If construction was successful, @p tape will point to the
- * byte after the list data. If construction was unsuccessful,
- * the position of the tape is undefined.
- *
- * @param tape the ByteTape to read from.
- */
- BList (ByteTape &tape);
-
- /**
- * Destroys the list, and deletes all of the items that had
- * been contained within.
- */
- virtual ~BList ();
-
- /**
- * Returns the type of this class.
- *
- * @return bList. This value is only returned by this class.
- */
- virtual classID type_id() const { return bList; }
-
- /**
- * Returns the number of items contained within the list.
- *
- * @return number of items in the list
- */
- virtual unsigned int count() const { return m_array.count(); }
-
- /**
- * This function should be called to determine whether the
- * list was successfully created, since no exceptions
- * are thrown.
- *
- * @return true if this is a valid list, false otherwise
- */
- virtual bool isValid() const { return m_valid; }
-
- /**
- * This function returns a pointer to the appropriate
- * item in the list.
- *
- * @param i index of the item to return
- * @return pointer to the appropriate BBase, or 0 if
- * the index is out-of-bounds
- */
- inline BBase * index (unsigned int i);
-
- /**
- * Convience function to return a pointer to the appropriate
- * item in the list, already casted.
- *
- * @param i index of the item to return
- * @return pointer to the appropriate BBase, downcasted to
- * BList. If the element is <b>not</b> a BList, 0
- * will be returned instead, even if it was a valid
- * BBase.
- */
- BList * indexList (unsigned int i);
-
- /**
- * Convience function to return a pointer to the appropriate
- * item in the list, already casted.
- *
- * @param i index of the item to return
- * @return pointer to the appropriate BBase, downcasted to
- * BInt. If the element is <b>not</b> a BInt, 0
- * will be returned instead, even if it was a valid
- * BBase.
- */
- BInt * indexInt (unsigned int i);
-
- /**
- * Convience function to return a pointer to the appropriate
- * item in the list, already casted.
- *
- * @param i index of the item to return
- * @return pointer to the appropriate BBase, downcasted to
- * BDict. If the element is <b>not</b> a BDict, 0
- * will be returned instead, even if it was a valid
- * BBase.
- */
- BDict * indexDict (unsigned int i);
-
- /**
- * Convience function to return a pointer to the appropriate
- * item in the list, already casted.
- *
- * @param i index of the item to return
- * @return pointer to the appropriate BBase, downcasted to
- * BString. If the element is <b>not</b> a BString, 0
- * will be returned instead, even if it was a valid
- * BBase.
- */
- BString * indexStr (unsigned int i);
-
- /**
- * Returns an iterator to the first element in the list.
- * There is no particular sorting associated with the list
- * at this time.
- *
- * @return iterator pointing to the beginning of the list
- * @see TQValueList
- */
- BBaseVectorIterator begin(void) { return m_array.begin(); }
-
- /**
- * Returns an iterator pointing one element past the end of
- * the list. Although this element belongs to the list,
- * you should never dereference this iterator. Instead, treat
- * it as a boundary condition to avoid.
- *
- * @return iterator pointing one element past the end of the list
- * @see TQValueList
- */
- BBaseVectorIterator end(void) { return m_array.end(); }
-
- /**
- * Outputs the b-encoded representation of the object to the given
- * TQIODevice.
- * @param device the TQIODevice to write to
- * @return true on a successful write, false otherwise
- */
- virtual bool writeToDevice (TQIODevice &device);
-
- private:
-
- /**
- * This function handles the actual initialization of the object upon
- * construction, and set the m_valid flag if successful.
- *
- * @param tape the ByteTape to read from
- */
- void init(ByteTape &tape);
-
- bool m_valid;
- BBaseVector m_array;
-};
-
-#endif /* _BLIST_H */
-
-// vim: set et sw=4 ts=4: