
/*

  KLayout Layout Viewer
  Copyright (C) 2006-2016 Matthias Koefferlein

  This program 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 program 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 program; if not, write to the Free Software
  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA

*/

/**
*  @file gsiDeclQDataStream_Enums.h 
*
*  DO NOT EDIT THIS FILE. 
*  This file has been created automatically
*/

#ifndef _HDR_gsiDeclQDataStream_Enums
#define _HDR_gsiDeclQDataStream_Enums

#include <QtCore/QFlags>

namespace qt_gsi
{

//  Wrapper class for QFlags<enum QDataStream::ByteOrder>
class QDataStream_ByteOrder_Enums : public QFlags<enum QDataStream::ByteOrder> {
public:
  QDataStream_ByteOrder_Enums () : m_flags () { }
  QDataStream_ByteOrder_Enums (enum QDataStream::ByteOrder v) : m_flags (v) { }
  QDataStream_ByteOrder_Enums (const QFlags<enum QDataStream::ByteOrder> &v) : m_flags (v) { }
  QFlags<enum QDataStream::ByteOrder> flags () const { return m_flags; }
private:
  QFlags<QDataStream::ByteOrder> m_flags;
};

//  Wrapper class for enum QDataStream::ByteOrder
class QDataStream_ByteOrder_Enum : public QDataStream_ByteOrder_Enums {
public:
  QDataStream_ByteOrder_Enum () { }
  QDataStream_ByteOrder_Enum (enum QDataStream::ByteOrder v) : QDataStream_ByteOrder_Enums (v) { }
  enum QDataStream::ByteOrder value () const { return (enum QDataStream::ByteOrder) flags ().operator int (); }
};

//  Converter for QFlags<enum QDataStream::ByteOrder>
template <>
struct Converter<QFlags<enum QDataStream::ByteOrder> >
{
public:
  typedef QFlags<enum QDataStream::ByteOrder> source_type;
  typedef QDataStream_ByteOrder_Enums target_type;
  static source_type toq (const target_type &c) { return c.flags (); }
  static target_type toc (const source_type &qc) { return target_type (qc); }
};

//  Converter for enum QDataStream::ByteOrder
template <>
struct Converter<enum QDataStream::ByteOrder>
{
public:
  typedef enum QDataStream::ByteOrder source_type;
  typedef QDataStream_ByteOrder_Enum target_type;
  static source_type toq (const target_type &c) { return c.value (); }
  static target_type toc (const source_type &qc) { return target_type (qc); }
};

//  Wrapper class for QFlags<enum QDataStream::FloatingPointPrecision>
class QDataStream_FloatingPointPrecision_Enums : public QFlags<enum QDataStream::FloatingPointPrecision> {
public:
  QDataStream_FloatingPointPrecision_Enums () : m_flags () { }
  QDataStream_FloatingPointPrecision_Enums (enum QDataStream::FloatingPointPrecision v) : m_flags (v) { }
  QDataStream_FloatingPointPrecision_Enums (const QFlags<enum QDataStream::FloatingPointPrecision> &v) : m_flags (v) { }
  QFlags<enum QDataStream::FloatingPointPrecision> flags () const { return m_flags; }
private:
  QFlags<QDataStream::FloatingPointPrecision> m_flags;
};

//  Wrapper class for enum QDataStream::FloatingPointPrecision
class QDataStream_FloatingPointPrecision_Enum : public QDataStream_FloatingPointPrecision_Enums {
public:
  QDataStream_FloatingPointPrecision_Enum () { }
  QDataStream_FloatingPointPrecision_Enum (enum QDataStream::FloatingPointPrecision v) : QDataStream_FloatingPointPrecision_Enums (v) { }
  enum QDataStream::FloatingPointPrecision value () const { return (enum QDataStream::FloatingPointPrecision) flags ().operator int (); }
};

//  Converter for QFlags<enum QDataStream::FloatingPointPrecision>
template <>
struct Converter<QFlags<enum QDataStream::FloatingPointPrecision> >
{
public:
  typedef QFlags<enum QDataStream::FloatingPointPrecision> source_type;
  typedef QDataStream_FloatingPointPrecision_Enums target_type;
  static source_type toq (const target_type &c) { return c.flags (); }
  static target_type toc (const source_type &qc) { return target_type (qc); }
};

//  Converter for enum QDataStream::FloatingPointPrecision
template <>
struct Converter<enum QDataStream::FloatingPointPrecision>
{
public:
  typedef enum QDataStream::FloatingPointPrecision source_type;
  typedef QDataStream_FloatingPointPrecision_Enum target_type;
  static source_type toq (const target_type &c) { return c.value (); }
  static target_type toc (const source_type &qc) { return target_type (qc); }
};

//  Wrapper class for QFlags<enum QDataStream::Status>
class QDataStream_Status_Enums : public QFlags<enum QDataStream::Status> {
public:
  QDataStream_Status_Enums () : m_flags () { }
  QDataStream_Status_Enums (enum QDataStream::Status v) : m_flags (v) { }
  QDataStream_Status_Enums (const QFlags<enum QDataStream::Status> &v) : m_flags (v) { }
  QFlags<enum QDataStream::Status> flags () const { return m_flags; }
private:
  QFlags<QDataStream::Status> m_flags;
};

//  Wrapper class for enum QDataStream::Status
class QDataStream_Status_Enum : public QDataStream_Status_Enums {
public:
  QDataStream_Status_Enum () { }
  QDataStream_Status_Enum (enum QDataStream::Status v) : QDataStream_Status_Enums (v) { }
  enum QDataStream::Status value () const { return (enum QDataStream::Status) flags ().operator int (); }
};

//  Converter for QFlags<enum QDataStream::Status>
template <>
struct Converter<QFlags<enum QDataStream::Status> >
{
public:
  typedef QFlags<enum QDataStream::Status> source_type;
  typedef QDataStream_Status_Enums target_type;
  static source_type toq (const target_type &c) { return c.flags (); }
  static target_type toc (const source_type &qc) { return target_type (qc); }
};

//  Converter for enum QDataStream::Status
template <>
struct Converter<enum QDataStream::Status>
{
public:
  typedef enum QDataStream::Status source_type;
  typedef QDataStream_Status_Enum target_type;
  static source_type toq (const target_type &c) { return c.value (); }
  static target_type toc (const source_type &qc) { return target_type (qc); }
};

//  Wrapper class for QFlags<enum QIODevice::OpenModeFlag>
class QIODevice_OpenModeFlag_Enums : public QFlags<enum QIODevice::OpenModeFlag> {
public:
  QIODevice_OpenModeFlag_Enums () : m_flags () { }
  QIODevice_OpenModeFlag_Enums (enum QIODevice::OpenModeFlag v) : m_flags (v) { }
  QIODevice_OpenModeFlag_Enums (const QFlags<enum QIODevice::OpenModeFlag> &v) : m_flags (v) { }
  QFlags<enum QIODevice::OpenModeFlag> flags () const { return m_flags; }
private:
  QFlags<QIODevice::OpenModeFlag> m_flags;
};

//  Wrapper class for enum QIODevice::OpenModeFlag
class QIODevice_OpenModeFlag_Enum : public QIODevice_OpenModeFlag_Enums {
public:
  QIODevice_OpenModeFlag_Enum () { }
  QIODevice_OpenModeFlag_Enum (enum QIODevice::OpenModeFlag v) : QIODevice_OpenModeFlag_Enums (v) { }
  enum QIODevice::OpenModeFlag value () const { return (enum QIODevice::OpenModeFlag) flags ().operator int (); }
};

//  Converter for QFlags<enum QIODevice::OpenModeFlag>
template <>
struct Converter<QFlags<enum QIODevice::OpenModeFlag> >
{
public:
  typedef QFlags<enum QIODevice::OpenModeFlag> source_type;
  typedef QIODevice_OpenModeFlag_Enums target_type;
  static source_type toq (const target_type &c) { return c.flags (); }
  static target_type toc (const source_type &qc) { return target_type (qc); }
};

//  Converter for enum QIODevice::OpenModeFlag
template <>
struct Converter<enum QIODevice::OpenModeFlag>
{
public:
  typedef enum QIODevice::OpenModeFlag source_type;
  typedef QIODevice_OpenModeFlag_Enum target_type;
  static source_type toq (const target_type &c) { return c.value (); }
  static target_type toc (const source_type &qc) { return target_type (qc); }
};

}

#endif
