#ifndef QTREEWIDGETITEMITERATOR_H
#define QTREEWIDGETITEMITERATOR_H 
#include <QtCore/qglobal.h>
typedef enum QtValidLicenseForGuiModule QtGuiModule;
#ifndef QT_NO_TREEWIDGET
struct QTreeWidget;
struct QTreeWidgetItem;
struct QTreeModel;
struct QTreeWidgetItemIteratorPrivate;
class QTreeWidgetItemIterator{
   public: enum IteratorFlag{
      All = 0,
      Hidden = 1,
      NotHidden = 2,
      Selected = 4,
      Unselected = 8,
      Selectable = 16,
      NotSelectable = 32,
      DragEnabled = 64,
      DragDisabled = 128,
      DropEnabled = 256,
      DropDisabled = 512,
      HasChildren = 1024,
      NoChildren = 2048,
      Checked = 4096,
      NotChecked = 8192,
      Enabled = 16384,
      Disabled = 32768,
      Editable = 65536,
      NotEditable = 131072,
      UserFlag = 16777216,
   };
   public: typedef class QFlags < enum QTreeWidgetItemIterator::IteratorFlag > IteratorFlags;
   public: QTreeWidgetItemIterator(class QTreeWidgetItemIterator const & it);
   public: explicit QTreeWidgetItemIterator(struct QTreeWidget* widget, class QFlags < enum QTreeWidgetItemIterator::IteratorFlag > flags = QTreeWidgetItemIterator::All);
   public: explicit QTreeWidgetItemIterator(struct QTreeWidgetItem* item, class QFlags < enum QTreeWidgetItemIterator::IteratorFlag > flags = QTreeWidgetItemIterator::All);
   public: ~QTreeWidgetItemIterator();
   public: class QTreeWidgetItemIterator& operator =(class QTreeWidgetItemIterator const & it);
   public: class QTreeWidgetItemIterator& operator ++();
   public: class QTreeWidgetItemIterator& operator --();
   private: bool matchesFlags(struct QTreeWidgetItem const * item) const
   private: struct QTreeWidgetItemIteratorPrivate* d_ptr;
   private: struct QTreeWidgetItem* current;
   private: class QFlags < enum QTreeWidgetItemIterator::IteratorFlag > flags;
   private: inline struct QTreeWidgetItemIteratorPrivate* d_func();
   private: inline struct QTreeWidgetItemIteratorPrivate const * d_func() const
   public: inline QTreeWidgetItemIterator operator ++(int);
   public: inline QTreeWidgetItemIterator operator --(int);
   public: inline class QTreeWidgetItemIterator& operator +=(int n);
   public: inline class QTreeWidgetItemIterator& operator -=(int n);
   public: inline struct QTreeWidgetItem* operator *() const
   friend struct QTreeModel;
   friend struct QTreeWidgetItemIteratorPrivate;
};
inline class QFlags < enum QTreeWidgetItemIterator::IteratorFlag > operator |(enum QTreeWidgetItemIterator::IteratorFlag f1, class QFlags < enum QTreeWidgetItemIterator::IteratorFlag > f2);
inline class QFlags < enum QTreeWidgetItemIterator::IteratorFlag > operator |(enum QTreeWidgetItemIterator::IteratorFlag f1, enum QTreeWidgetItemIterator::IteratorFlag f2);
#endif // QT_NO_TREEWIDGET
#endif // QTREEWIDGETITEMITERATOR_H