/* This file is autogenerated. DO NOT CHANGE. All changes will be lost */

#ifndef QPROTOBUF_SOURCE_CONTEXT_H
#define QPROTOBUF_SOURCE_CONTEXT_H

#include <QtProtobuf/qprotobufmessage.h>
#include <QtProtobuf/qprotobufobject.h>
#include <QtProtobuf/qprotobuflazymessagepointer.h>
#include <QtProtobuf/qtprotobuftypes.h>

#include <QtCore/qbytearray.h>
#include <QtCore/qstring.h>
#include "protobufwellknowntypes_exports.qpb.h"

#include <QtCore/qmetatype.h>
#include <QtCore/qlist.h>
#include <QtCore/qshareddata.h>

#include <memory>


namespace google::protobuf {
class SourceContext;
using SourceContextRepeated = QList<SourceContext>;
namespace SourceContext_QtProtobufNested {
enum class QtProtobufFieldEnum;
} // namespace SourceContext_QtProtobufNested


class SourceContext_QtProtobufData;
class QPB_PROTOBUFWELLKNOWNTYPES_EXPORT SourceContext : public QProtobufMessage
{
    Q_GADGET
    Q_PROTOBUF_OBJECT
    Q_PROPERTY(QString fileName READ fileName WRITE setFileName SCRIPTABLE true)

public:
    using QtProtobufFieldEnum = SourceContext_QtProtobufNested::QtProtobufFieldEnum;
    SourceContext();
    ~SourceContext();
    SourceContext(const SourceContext &other);
    SourceContext &operator =(const SourceContext &other);
    SourceContext(SourceContext &&other) noexcept;
    SourceContext &operator =(SourceContext &&other) noexcept;
    bool operator ==(const SourceContext &other) const;
    bool operator !=(const SourceContext &other) const;

    QString fileName() const;
    void setFileName(const QString &fileName);
    static void registerTypes();

private:
    QExplicitlySharedDataPointer<SourceContext_QtProtobufData> dptr;
};
namespace SourceContext_QtProtobufNested {
Q_NAMESPACE_EXPORT(QPB_PROTOBUFWELLKNOWNTYPES_EXPORT)

enum class QtProtobufFieldEnum {
    FileNameProtoFieldNumber = 1,
};
Q_ENUM_NS(QtProtobufFieldEnum)

} // namespace SourceContext_QtProtobufNested
} // namespace google::protobuf

Q_DECLARE_METATYPE(google::protobuf::SourceContext)
#endif // QPROTOBUF_SOURCE_CONTEXT_H
