// Generated by Cap'n Proto compiler, DO NOT EDIT
// source: library.capnp

#pragma once

#include <capnp/generated-header-support.h>
#include <kj/windows-sanity.h>

#ifndef CAPNP_VERSION
#error "CAPNP_VERSION is not defined, is capnp/generated-header-support.h missing?"
#elif CAPNP_VERSION != 1000001
#error "Version mismatch between generated code and library headers.  You must use the same version of the Cap'n Proto compiler and library."
#endif

#include "metaData.capnp.h"
#include "propertySet.capnp.h"

CAPNP_BEGIN_HEADER

namespace capnp {
namespace schemas {

CAPNP_DECLARE_SCHEMA(c46c5bf141864625);
CAPNP_DECLARE_SCHEMA(ee09fcfabb513627);
CAPNP_DECLARE_SCHEMA(d725313a8d21b8e2);
CAPNP_DECLARE_SCHEMA(dad4c55e50376300);
CAPNP_DECLARE_SCHEMA(ede757f03a358434);
CAPNP_DECLARE_SCHEMA(fc84113793087554);
CAPNP_DECLARE_SCHEMA(ddf4af51c3f3ec0c);
CAPNP_DECLARE_SCHEMA(bcfe199063ea7b38);
CAPNP_DECLARE_SCHEMA(fe4e983184475e0c);
CAPNP_DECLARE_SCHEMA(d4dd6a6bda115c0d);
CAPNP_DECLARE_SCHEMA(a9ebdd95511b4025);
CAPNP_DECLARE_SCHEMA(d8b81a864ab8e7a7);
enum class Purpose_d8b81a864ab8e7a7: uint16_t {
  DRAWING,
  FILL,
  SLOT,
  PIN,
  BOUNDARY,
  TEXT,
  COMMENT,
  BLOCKAGE,
  WIRE,
  ERRORS,
  HANDLES,
  SYMBOL,
};
CAPNP_DECLARE_ENUM(Purpose, d8b81a864ab8e7a7);
CAPNP_DECLARE_SCHEMA(c5ef335f814ab0b2);
CAPNP_DECLARE_SCHEMA(b946e5061a9b8d1c);
CAPNP_DECLARE_SCHEMA(97396382a8297146);
CAPNP_DECLARE_SCHEMA(9abf2a90a0f9332c);

}  // namespace schemas
}  // namespace capnp

namespace stream {
namespace library {

struct PropertyNamesTable {
  PropertyNamesTable() = delete;

  class Reader;
  class Builder;
  class Pipeline;

  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(c46c5bf141864625, 0, 2)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

struct PropertiesTable {
  PropertiesTable() = delete;

  class Reader;
  class Builder;
  class Pipeline;

  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(ee09fcfabb513627, 0, 1)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

struct TextStringsTable {
  TextStringsTable() = delete;

  class Reader;
  class Builder;
  class Pipeline;

  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(d725313a8d21b8e2, 0, 1)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

struct LibraryRef {
  LibraryRef() = delete;

  class Reader;
  class Builder;
  class Pipeline;

  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(dad4c55e50376300, 0, 1)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

struct LibraryRefs {
  LibraryRefs() = delete;

  class Reader;
  class Builder;
  class Pipeline;

  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(ede757f03a358434, 0, 1)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

struct CellParameters {
  CellParameters() = delete;

  class Reader;
  class Builder;
  class Pipeline;

  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(fc84113793087554, 0, 1)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

struct CellSpec {
  CellSpec() = delete;

  class Reader;
  class Builder;
  class Pipeline;

  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(ddf4af51c3f3ec0c, 2, 3)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

struct CellSpecsTable {
  CellSpecsTable() = delete;

  class Reader;
  class Builder;
  class Pipeline;

  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(bcfe199063ea7b38, 0, 1)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

struct CellHierarchyTreeNode {
  CellHierarchyTreeNode() = delete;

  class Reader;
  class Builder;
  class Pipeline;

  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(fe4e983184475e0c, 1, 1)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

struct CellHierarchyTree {
  CellHierarchyTree() = delete;

  class Reader;
  class Builder;
  class Pipeline;

  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(d4dd6a6bda115c0d, 1, 1)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

struct LayerEntry {
  LayerEntry() = delete;

  class Reader;
  class Builder;
  class Pipeline;
  typedef ::capnp::schemas::Purpose_d8b81a864ab8e7a7 Purpose;


  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(a9ebdd95511b4025, 1, 2)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

struct LayerTable {
  LayerTable() = delete;

  class Reader;
  class Builder;
  class Pipeline;

  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(c5ef335f814ab0b2, 0, 1)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

struct ViewSpec {
  ViewSpec() = delete;

  class Reader;
  class Builder;
  class Pipeline;

  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(b946e5061a9b8d1c, 2, 4)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

struct ViewSpecsTable {
  ViewSpecsTable() = delete;

  class Reader;
  class Builder;
  class Pipeline;

  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(97396382a8297146, 0, 1)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

struct Library {
  Library() = delete;

  class Reader;
  class Builder;
  class Pipeline;

  struct _capnpPrivate {
    CAPNP_DECLARE_STRUCT_HEADER(9abf2a90a0f9332c, 0, 8)
    #if !CAPNP_LITE
    static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
    #endif  // !CAPNP_LITE
  };
};

// =======================================================================================

class PropertyNamesTable::Reader {
public:
  typedef PropertyNamesTable Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline bool hasNamespaces() const;
  inline  ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Reader getNamespaces() const;

  inline bool hasNames() const;
  inline  ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>::Reader getNames() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class PropertyNamesTable::Builder {
public:
  typedef PropertyNamesTable Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline bool hasNamespaces();
  inline  ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Builder getNamespaces();
  inline void setNamespaces( ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Reader value);
  inline void setNamespaces(::kj::ArrayPtr<const  ::capnp::Text::Reader> value);
  inline  ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Builder initNamespaces(unsigned int size);
  inline void adoptNamespaces(::capnp::Orphan< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>&& value);
  inline ::capnp::Orphan< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>> disownNamespaces();

  inline bool hasNames();
  inline  ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>::Builder getNames();
  inline void setNames( ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>::Reader value);
  inline  ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>::Builder initNames(unsigned int size);
  inline void adoptNames(::capnp::Orphan< ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>>&& value);
  inline ::capnp::Orphan< ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>> disownNames();

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class PropertyNamesTable::Pipeline {
public:
  typedef PropertyNamesTable Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

class PropertiesTable::Reader {
public:
  typedef PropertiesTable Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline bool hasPropertySets() const;
  inline  ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>::Reader getPropertySets() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class PropertiesTable::Builder {
public:
  typedef PropertiesTable Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline bool hasPropertySets();
  inline  ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>::Builder getPropertySets();
  inline void setPropertySets( ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>::Reader value);
  inline  ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>::Builder initPropertySets(unsigned int size);
  inline void adoptPropertySets(::capnp::Orphan< ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>>&& value);
  inline ::capnp::Orphan< ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>> disownPropertySets();

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class PropertiesTable::Pipeline {
public:
  typedef PropertiesTable Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

class TextStringsTable::Reader {
public:
  typedef TextStringsTable Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline bool hasTextStrings() const;
  inline  ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Reader getTextStrings() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class TextStringsTable::Builder {
public:
  typedef TextStringsTable Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline bool hasTextStrings();
  inline  ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Builder getTextStrings();
  inline void setTextStrings( ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Reader value);
  inline void setTextStrings(::kj::ArrayPtr<const  ::capnp::Text::Reader> value);
  inline  ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Builder initTextStrings(unsigned int size);
  inline void adoptTextStrings(::capnp::Orphan< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>&& value);
  inline ::capnp::Orphan< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>> disownTextStrings();

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class TextStringsTable::Pipeline {
public:
  typedef TextStringsTable Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

class LibraryRef::Reader {
public:
  typedef LibraryRef Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline bool hasLibraryName() const;
  inline  ::capnp::Text::Reader getLibraryName() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class LibraryRef::Builder {
public:
  typedef LibraryRef Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline bool hasLibraryName();
  inline  ::capnp::Text::Builder getLibraryName();
  inline void setLibraryName( ::capnp::Text::Reader value);
  inline  ::capnp::Text::Builder initLibraryName(unsigned int size);
  inline void adoptLibraryName(::capnp::Orphan< ::capnp::Text>&& value);
  inline ::capnp::Orphan< ::capnp::Text> disownLibraryName();

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class LibraryRef::Pipeline {
public:
  typedef LibraryRef Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

class LibraryRefs::Reader {
public:
  typedef LibraryRefs Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline bool hasRefs() const;
  inline  ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>::Reader getRefs() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class LibraryRefs::Builder {
public:
  typedef LibraryRefs Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline bool hasRefs();
  inline  ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>::Builder getRefs();
  inline void setRefs( ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>::Reader value);
  inline  ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>::Builder initRefs(unsigned int size);
  inline void adoptRefs(::capnp::Orphan< ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>>&& value);
  inline ::capnp::Orphan< ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>> disownRefs();

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class LibraryRefs::Pipeline {
public:
  typedef LibraryRefs Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

class CellParameters::Reader {
public:
  typedef CellParameters Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline bool hasValues() const;
  inline  ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>::Reader getValues() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class CellParameters::Builder {
public:
  typedef CellParameters Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline bool hasValues();
  inline  ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>::Builder getValues();
  inline void setValues( ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>::Reader value);
  inline  ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>::Builder initValues(unsigned int size);
  inline void adoptValues(::capnp::Orphan< ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>>&& value);
  inline ::capnp::Orphan< ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>> disownValues();

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class CellParameters::Pipeline {
public:
  typedef CellParameters Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

class CellSpec::Reader {
public:
  typedef CellSpec Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline bool hasName() const;
  inline  ::capnp::Text::Reader getName() const;

  inline  ::uint64_t getLibraryRefId() const;

  inline bool hasLibraryCellName() const;
  inline  ::capnp::Text::Reader getLibraryCellName() const;

  inline bool hasParameters() const;
  inline  ::stream::library::CellParameters::Reader getParameters() const;

  inline  ::uint64_t getPropertySetId() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class CellSpec::Builder {
public:
  typedef CellSpec Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline bool hasName();
  inline  ::capnp::Text::Builder getName();
  inline void setName( ::capnp::Text::Reader value);
  inline  ::capnp::Text::Builder initName(unsigned int size);
  inline void adoptName(::capnp::Orphan< ::capnp::Text>&& value);
  inline ::capnp::Orphan< ::capnp::Text> disownName();

  inline  ::uint64_t getLibraryRefId();
  inline void setLibraryRefId( ::uint64_t value);

  inline bool hasLibraryCellName();
  inline  ::capnp::Text::Builder getLibraryCellName();
  inline void setLibraryCellName( ::capnp::Text::Reader value);
  inline  ::capnp::Text::Builder initLibraryCellName(unsigned int size);
  inline void adoptLibraryCellName(::capnp::Orphan< ::capnp::Text>&& value);
  inline ::capnp::Orphan< ::capnp::Text> disownLibraryCellName();

  inline bool hasParameters();
  inline  ::stream::library::CellParameters::Builder getParameters();
  inline void setParameters( ::stream::library::CellParameters::Reader value);
  inline  ::stream::library::CellParameters::Builder initParameters();
  inline void adoptParameters(::capnp::Orphan< ::stream::library::CellParameters>&& value);
  inline ::capnp::Orphan< ::stream::library::CellParameters> disownParameters();

  inline  ::uint64_t getPropertySetId();
  inline void setPropertySetId( ::uint64_t value);

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class CellSpec::Pipeline {
public:
  typedef CellSpec Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

  inline  ::stream::library::CellParameters::Pipeline getParameters();
private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

class CellSpecsTable::Reader {
public:
  typedef CellSpecsTable Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline bool hasCellSpecs() const;
  inline  ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>::Reader getCellSpecs() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class CellSpecsTable::Builder {
public:
  typedef CellSpecsTable Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline bool hasCellSpecs();
  inline  ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>::Builder getCellSpecs();
  inline void setCellSpecs( ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>::Reader value);
  inline  ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>::Builder initCellSpecs(unsigned int size);
  inline void adoptCellSpecs(::capnp::Orphan< ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>>&& value);
  inline ::capnp::Orphan< ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>> disownCellSpecs();

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class CellSpecsTable::Pipeline {
public:
  typedef CellSpecsTable Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

class CellHierarchyTreeNode::Reader {
public:
  typedef CellHierarchyTreeNode Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline  ::uint64_t getCellId() const;

  inline bool hasChildCellIds() const;
  inline  ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Reader getChildCellIds() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class CellHierarchyTreeNode::Builder {
public:
  typedef CellHierarchyTreeNode Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline  ::uint64_t getCellId();
  inline void setCellId( ::uint64_t value);

  inline bool hasChildCellIds();
  inline  ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Builder getChildCellIds();
  inline void setChildCellIds( ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Reader value);
  inline void setChildCellIds(::kj::ArrayPtr<const  ::uint64_t> value);
  inline  ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Builder initChildCellIds(unsigned int size);
  inline void adoptChildCellIds(::capnp::Orphan< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>&& value);
  inline ::capnp::Orphan< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>> disownChildCellIds();

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class CellHierarchyTreeNode::Pipeline {
public:
  typedef CellHierarchyTreeNode Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

class CellHierarchyTree::Reader {
public:
  typedef CellHierarchyTree Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline  ::uint64_t getNumberOfTopCells() const;

  inline bool hasNodes() const;
  inline  ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>::Reader getNodes() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class CellHierarchyTree::Builder {
public:
  typedef CellHierarchyTree Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline  ::uint64_t getNumberOfTopCells();
  inline void setNumberOfTopCells( ::uint64_t value);

  inline bool hasNodes();
  inline  ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>::Builder getNodes();
  inline void setNodes( ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>::Reader value);
  inline  ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>::Builder initNodes(unsigned int size);
  inline void adoptNodes(::capnp::Orphan< ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>>&& value);
  inline ::capnp::Orphan< ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>> disownNodes();

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class CellHierarchyTree::Pipeline {
public:
  typedef CellHierarchyTree Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

class LayerEntry::Reader {
public:
  typedef LayerEntry Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline bool hasLayerNumbers() const;
  inline  ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Reader getLayerNumbers() const;

  inline bool hasName() const;
  inline  ::capnp::Text::Reader getName() const;

  inline  ::stream::library::LayerEntry::Purpose getPurpose() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class LayerEntry::Builder {
public:
  typedef LayerEntry Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline bool hasLayerNumbers();
  inline  ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Builder getLayerNumbers();
  inline void setLayerNumbers( ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Reader value);
  inline void setLayerNumbers(::kj::ArrayPtr<const  ::uint64_t> value);
  inline  ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Builder initLayerNumbers(unsigned int size);
  inline void adoptLayerNumbers(::capnp::Orphan< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>&& value);
  inline ::capnp::Orphan< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>> disownLayerNumbers();

  inline bool hasName();
  inline  ::capnp::Text::Builder getName();
  inline void setName( ::capnp::Text::Reader value);
  inline  ::capnp::Text::Builder initName(unsigned int size);
  inline void adoptName(::capnp::Orphan< ::capnp::Text>&& value);
  inline ::capnp::Orphan< ::capnp::Text> disownName();

  inline  ::stream::library::LayerEntry::Purpose getPurpose();
  inline void setPurpose( ::stream::library::LayerEntry::Purpose value);

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class LayerEntry::Pipeline {
public:
  typedef LayerEntry Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

class LayerTable::Reader {
public:
  typedef LayerTable Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline bool hasLayerEntries() const;
  inline  ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>::Reader getLayerEntries() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class LayerTable::Builder {
public:
  typedef LayerTable Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline bool hasLayerEntries();
  inline  ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>::Builder getLayerEntries();
  inline void setLayerEntries( ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>::Reader value);
  inline  ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>::Builder initLayerEntries(unsigned int size);
  inline void adoptLayerEntries(::capnp::Orphan< ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>>&& value);
  inline ::capnp::Orphan< ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>> disownLayerEntries();

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class LayerTable::Pipeline {
public:
  typedef LayerTable Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

class ViewSpec::Reader {
public:
  typedef ViewSpec Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline bool hasName() const;
  inline  ::capnp::Text::Reader getName() const;

  inline bool hasClass() const;
  inline  ::capnp::Text::Reader getClass() const;

  inline double getResolution() const;

  inline bool hasLayerTable() const;
  inline  ::stream::library::LayerTable::Reader getLayerTable() const;

  inline  ::uint64_t getPropertySetId() const;

  inline bool hasMetaData() const;
  inline  ::stream::metaData::MetaData::Reader getMetaData() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class ViewSpec::Builder {
public:
  typedef ViewSpec Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline bool hasName();
  inline  ::capnp::Text::Builder getName();
  inline void setName( ::capnp::Text::Reader value);
  inline  ::capnp::Text::Builder initName(unsigned int size);
  inline void adoptName(::capnp::Orphan< ::capnp::Text>&& value);
  inline ::capnp::Orphan< ::capnp::Text> disownName();

  inline bool hasClass();
  inline  ::capnp::Text::Builder getClass();
  inline void setClass( ::capnp::Text::Reader value);
  inline  ::capnp::Text::Builder initClass(unsigned int size);
  inline void adoptClass(::capnp::Orphan< ::capnp::Text>&& value);
  inline ::capnp::Orphan< ::capnp::Text> disownClass();

  inline double getResolution();
  inline void setResolution(double value);

  inline bool hasLayerTable();
  inline  ::stream::library::LayerTable::Builder getLayerTable();
  inline void setLayerTable( ::stream::library::LayerTable::Reader value);
  inline  ::stream::library::LayerTable::Builder initLayerTable();
  inline void adoptLayerTable(::capnp::Orphan< ::stream::library::LayerTable>&& value);
  inline ::capnp::Orphan< ::stream::library::LayerTable> disownLayerTable();

  inline  ::uint64_t getPropertySetId();
  inline void setPropertySetId( ::uint64_t value);

  inline bool hasMetaData();
  inline  ::stream::metaData::MetaData::Builder getMetaData();
  inline void setMetaData( ::stream::metaData::MetaData::Reader value);
  inline  ::stream::metaData::MetaData::Builder initMetaData();
  inline void adoptMetaData(::capnp::Orphan< ::stream::metaData::MetaData>&& value);
  inline ::capnp::Orphan< ::stream::metaData::MetaData> disownMetaData();

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class ViewSpec::Pipeline {
public:
  typedef ViewSpec Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

  inline  ::stream::library::LayerTable::Pipeline getLayerTable();
  inline  ::stream::metaData::MetaData::Pipeline getMetaData();
private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

class ViewSpecsTable::Reader {
public:
  typedef ViewSpecsTable Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline bool hasViewSpecs() const;
  inline  ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>::Reader getViewSpecs() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class ViewSpecsTable::Builder {
public:
  typedef ViewSpecsTable Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline bool hasViewSpecs();
  inline  ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>::Builder getViewSpecs();
  inline void setViewSpecs( ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>::Reader value);
  inline  ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>::Builder initViewSpecs(unsigned int size);
  inline void adoptViewSpecs(::capnp::Orphan< ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>>&& value);
  inline ::capnp::Orphan< ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>> disownViewSpecs();

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class ViewSpecsTable::Pipeline {
public:
  typedef ViewSpecsTable Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

class Library::Reader {
public:
  typedef Library Reads;

  Reader() = default;
  inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}

  inline ::capnp::MessageSize totalSize() const {
    return _reader.totalSize().asPublic();
  }

#if !CAPNP_LITE
  inline ::kj::StringTree toString() const {
    return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
  }
#endif  // !CAPNP_LITE

  inline bool hasMetaData() const;
  inline  ::stream::metaData::MetaData::Reader getMetaData() const;

  inline bool hasLibraryRefs() const;
  inline  ::stream::library::LibraryRefs::Reader getLibraryRefs() const;

  inline bool hasPropertyNamesTable() const;
  inline  ::stream::library::PropertyNamesTable::Reader getPropertyNamesTable() const;

  inline bool hasPropertiesTable() const;
  inline  ::stream::library::PropertiesTable::Reader getPropertiesTable() const;

  inline bool hasTextStringsTable() const;
  inline  ::stream::library::TextStringsTable::Reader getTextStringsTable() const;

  inline bool hasViewSpecsTable() const;
  inline  ::stream::library::ViewSpecsTable::Reader getViewSpecsTable() const;

  inline bool hasCellSpecsTable() const;
  inline  ::stream::library::CellSpecsTable::Reader getCellSpecsTable() const;

  inline bool hasCellHierarchyTree() const;
  inline  ::stream::library::CellHierarchyTree::Reader getCellHierarchyTree() const;

private:
  ::capnp::_::StructReader _reader;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::List;
  friend class ::capnp::MessageBuilder;
  friend class ::capnp::Orphanage;
};

class Library::Builder {
public:
  typedef Library Builds;

  Builder() = delete;  // Deleted to discourage incorrect usage.
                       // You can explicitly initialize to nullptr instead.
  inline Builder(decltype(nullptr)) {}
  inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
  inline operator Reader() const { return Reader(_builder.asReader()); }
  inline Reader asReader() const { return *this; }

  inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
#if !CAPNP_LITE
  inline ::kj::StringTree toString() const { return asReader().toString(); }
#endif  // !CAPNP_LITE

  inline bool hasMetaData();
  inline  ::stream::metaData::MetaData::Builder getMetaData();
  inline void setMetaData( ::stream::metaData::MetaData::Reader value);
  inline  ::stream::metaData::MetaData::Builder initMetaData();
  inline void adoptMetaData(::capnp::Orphan< ::stream::metaData::MetaData>&& value);
  inline ::capnp::Orphan< ::stream::metaData::MetaData> disownMetaData();

  inline bool hasLibraryRefs();
  inline  ::stream::library::LibraryRefs::Builder getLibraryRefs();
  inline void setLibraryRefs( ::stream::library::LibraryRefs::Reader value);
  inline  ::stream::library::LibraryRefs::Builder initLibraryRefs();
  inline void adoptLibraryRefs(::capnp::Orphan< ::stream::library::LibraryRefs>&& value);
  inline ::capnp::Orphan< ::stream::library::LibraryRefs> disownLibraryRefs();

  inline bool hasPropertyNamesTable();
  inline  ::stream::library::PropertyNamesTable::Builder getPropertyNamesTable();
  inline void setPropertyNamesTable( ::stream::library::PropertyNamesTable::Reader value);
  inline  ::stream::library::PropertyNamesTable::Builder initPropertyNamesTable();
  inline void adoptPropertyNamesTable(::capnp::Orphan< ::stream::library::PropertyNamesTable>&& value);
  inline ::capnp::Orphan< ::stream::library::PropertyNamesTable> disownPropertyNamesTable();

  inline bool hasPropertiesTable();
  inline  ::stream::library::PropertiesTable::Builder getPropertiesTable();
  inline void setPropertiesTable( ::stream::library::PropertiesTable::Reader value);
  inline  ::stream::library::PropertiesTable::Builder initPropertiesTable();
  inline void adoptPropertiesTable(::capnp::Orphan< ::stream::library::PropertiesTable>&& value);
  inline ::capnp::Orphan< ::stream::library::PropertiesTable> disownPropertiesTable();

  inline bool hasTextStringsTable();
  inline  ::stream::library::TextStringsTable::Builder getTextStringsTable();
  inline void setTextStringsTable( ::stream::library::TextStringsTable::Reader value);
  inline  ::stream::library::TextStringsTable::Builder initTextStringsTable();
  inline void adoptTextStringsTable(::capnp::Orphan< ::stream::library::TextStringsTable>&& value);
  inline ::capnp::Orphan< ::stream::library::TextStringsTable> disownTextStringsTable();

  inline bool hasViewSpecsTable();
  inline  ::stream::library::ViewSpecsTable::Builder getViewSpecsTable();
  inline void setViewSpecsTable( ::stream::library::ViewSpecsTable::Reader value);
  inline  ::stream::library::ViewSpecsTable::Builder initViewSpecsTable();
  inline void adoptViewSpecsTable(::capnp::Orphan< ::stream::library::ViewSpecsTable>&& value);
  inline ::capnp::Orphan< ::stream::library::ViewSpecsTable> disownViewSpecsTable();

  inline bool hasCellSpecsTable();
  inline  ::stream::library::CellSpecsTable::Builder getCellSpecsTable();
  inline void setCellSpecsTable( ::stream::library::CellSpecsTable::Reader value);
  inline  ::stream::library::CellSpecsTable::Builder initCellSpecsTable();
  inline void adoptCellSpecsTable(::capnp::Orphan< ::stream::library::CellSpecsTable>&& value);
  inline ::capnp::Orphan< ::stream::library::CellSpecsTable> disownCellSpecsTable();

  inline bool hasCellHierarchyTree();
  inline  ::stream::library::CellHierarchyTree::Builder getCellHierarchyTree();
  inline void setCellHierarchyTree( ::stream::library::CellHierarchyTree::Reader value);
  inline  ::stream::library::CellHierarchyTree::Builder initCellHierarchyTree();
  inline void adoptCellHierarchyTree(::capnp::Orphan< ::stream::library::CellHierarchyTree>&& value);
  inline ::capnp::Orphan< ::stream::library::CellHierarchyTree> disownCellHierarchyTree();

private:
  ::capnp::_::StructBuilder _builder;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
  friend class ::capnp::Orphanage;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::_::PointerHelpers;
};

#if !CAPNP_LITE
class Library::Pipeline {
public:
  typedef Library Pipelines;

  inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
  inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
      : _typeless(kj::mv(typeless)) {}

  inline  ::stream::metaData::MetaData::Pipeline getMetaData();
  inline  ::stream::library::LibraryRefs::Pipeline getLibraryRefs();
  inline  ::stream::library::PropertyNamesTable::Pipeline getPropertyNamesTable();
  inline  ::stream::library::PropertiesTable::Pipeline getPropertiesTable();
  inline  ::stream::library::TextStringsTable::Pipeline getTextStringsTable();
  inline  ::stream::library::ViewSpecsTable::Pipeline getViewSpecsTable();
  inline  ::stream::library::CellSpecsTable::Pipeline getCellSpecsTable();
  inline  ::stream::library::CellHierarchyTree::Pipeline getCellHierarchyTree();
private:
  ::capnp::AnyPointer::Pipeline _typeless;
  friend class ::capnp::PipelineHook;
  template <typename, ::capnp::Kind>
  friend struct ::capnp::ToDynamic_;
};
#endif  // !CAPNP_LITE

// =======================================================================================

inline bool PropertyNamesTable::Reader::hasNamespaces() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool PropertyNamesTable::Builder::hasNamespaces() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Reader PropertyNamesTable::Reader::getNamespaces() const {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Builder PropertyNamesTable::Builder::getNamespaces() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void PropertyNamesTable::Builder::setNamespaces( ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline void PropertyNamesTable::Builder::setNamespaces(::kj::ArrayPtr<const  ::capnp::Text::Reader> value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Builder PropertyNamesTable::Builder::initNamespaces(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), size);
}
inline void PropertyNamesTable::Builder::adoptNamespaces(
    ::capnp::Orphan< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>> PropertyNamesTable::Builder::disownNamespaces() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline bool PropertyNamesTable::Reader::hasNames() const {
  return !_reader.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
}
inline bool PropertyNamesTable::Builder::hasNames() {
  return !_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>::Reader PropertyNamesTable::Reader::getNames() const {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}
inline  ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>::Builder PropertyNamesTable::Builder::getNames() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}
inline void PropertyNamesTable::Builder::setNames( ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS), value);
}
inline  ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>::Builder PropertyNamesTable::Builder::initNames(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS), size);
}
inline void PropertyNamesTable::Builder::adoptNames(
    ::capnp::Orphan< ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>> PropertyNamesTable::Builder::disownNames() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::PropertyName,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}

inline bool PropertiesTable::Reader::hasPropertySets() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool PropertiesTable::Builder::hasPropertySets() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>::Reader PropertiesTable::Reader::getPropertySets() const {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>::Builder PropertiesTable::Builder::getPropertySets() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void PropertiesTable::Builder::setPropertySets( ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>::Builder PropertiesTable::Builder::initPropertySets(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), size);
}
inline void PropertiesTable::Builder::adoptPropertySets(
    ::capnp::Orphan< ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>> PropertiesTable::Builder::disownPropertySets() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::PropertySet,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline bool TextStringsTable::Reader::hasTextStrings() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool TextStringsTable::Builder::hasTextStrings() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Reader TextStringsTable::Reader::getTextStrings() const {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Builder TextStringsTable::Builder::getTextStrings() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void TextStringsTable::Builder::setTextStrings( ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline void TextStringsTable::Builder::setTextStrings(::kj::ArrayPtr<const  ::capnp::Text::Reader> value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>::Builder TextStringsTable::Builder::initTextStrings(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), size);
}
inline void TextStringsTable::Builder::adoptTextStrings(
    ::capnp::Orphan< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>> TextStringsTable::Builder::disownTextStrings() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::Text,  ::capnp::Kind::BLOB>>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline bool LibraryRef::Reader::hasLibraryName() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool LibraryRef::Builder::hasLibraryName() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::Text::Reader LibraryRef::Reader::getLibraryName() const {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::capnp::Text::Builder LibraryRef::Builder::getLibraryName() {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void LibraryRef::Builder::setLibraryName( ::capnp::Text::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::Text>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::capnp::Text::Builder LibraryRef::Builder::initLibraryName(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), size);
}
inline void LibraryRef::Builder::adoptLibraryName(
    ::capnp::Orphan< ::capnp::Text>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::Text>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::Text> LibraryRef::Builder::disownLibraryName() {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline bool LibraryRefs::Reader::hasRefs() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool LibraryRefs::Builder::hasRefs() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>::Reader LibraryRefs::Reader::getRefs() const {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>::Builder LibraryRefs::Builder::getRefs() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void LibraryRefs::Builder::setRefs( ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>::Builder LibraryRefs::Builder::initRefs(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), size);
}
inline void LibraryRefs::Builder::adoptRefs(
    ::capnp::Orphan< ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>> LibraryRefs::Builder::disownRefs() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::LibraryRef,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline bool CellParameters::Reader::hasValues() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool CellParameters::Builder::hasValues() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>::Reader CellParameters::Reader::getValues() const {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>::Builder CellParameters::Builder::getValues() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void CellParameters::Builder::setValues( ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>::Builder CellParameters::Builder::initValues(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), size);
}
inline void CellParameters::Builder::adoptValues(
    ::capnp::Orphan< ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>> CellParameters::Builder::disownValues() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::propertySet::NamedValue,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline bool CellSpec::Reader::hasName() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool CellSpec::Builder::hasName() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::Text::Reader CellSpec::Reader::getName() const {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::capnp::Text::Builder CellSpec::Builder::getName() {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void CellSpec::Builder::setName( ::capnp::Text::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::Text>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::capnp::Text::Builder CellSpec::Builder::initName(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), size);
}
inline void CellSpec::Builder::adoptName(
    ::capnp::Orphan< ::capnp::Text>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::Text>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::Text> CellSpec::Builder::disownName() {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline  ::uint64_t CellSpec::Reader::getLibraryRefId() const {
  return _reader.getDataField< ::uint64_t>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS);
}

inline  ::uint64_t CellSpec::Builder::getLibraryRefId() {
  return _builder.getDataField< ::uint64_t>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS);
}
inline void CellSpec::Builder::setLibraryRefId( ::uint64_t value) {
  _builder.setDataField< ::uint64_t>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
}

inline bool CellSpec::Reader::hasLibraryCellName() const {
  return !_reader.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
}
inline bool CellSpec::Builder::hasLibraryCellName() {
  return !_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::Text::Reader CellSpec::Reader::getLibraryCellName() const {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_reader.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}
inline  ::capnp::Text::Builder CellSpec::Builder::getLibraryCellName() {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}
inline void CellSpec::Builder::setLibraryCellName( ::capnp::Text::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::Text>::set(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS), value);
}
inline  ::capnp::Text::Builder CellSpec::Builder::initLibraryCellName(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::init(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS), size);
}
inline void CellSpec::Builder::adoptLibraryCellName(
    ::capnp::Orphan< ::capnp::Text>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::Text>::adopt(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::Text> CellSpec::Builder::disownLibraryCellName() {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::disown(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}

inline bool CellSpec::Reader::hasParameters() const {
  return !_reader.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS).isNull();
}
inline bool CellSpec::Builder::hasParameters() {
  return !_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS).isNull();
}
inline  ::stream::library::CellParameters::Reader CellSpec::Reader::getParameters() const {
  return ::capnp::_::PointerHelpers< ::stream::library::CellParameters>::get(_reader.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS));
}
inline  ::stream::library::CellParameters::Builder CellSpec::Builder::getParameters() {
  return ::capnp::_::PointerHelpers< ::stream::library::CellParameters>::get(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS));
}
#if !CAPNP_LITE
inline  ::stream::library::CellParameters::Pipeline CellSpec::Pipeline::getParameters() {
  return  ::stream::library::CellParameters::Pipeline(_typeless.getPointerField(2));
}
#endif  // !CAPNP_LITE
inline void CellSpec::Builder::setParameters( ::stream::library::CellParameters::Reader value) {
  ::capnp::_::PointerHelpers< ::stream::library::CellParameters>::set(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS), value);
}
inline  ::stream::library::CellParameters::Builder CellSpec::Builder::initParameters() {
  return ::capnp::_::PointerHelpers< ::stream::library::CellParameters>::init(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS));
}
inline void CellSpec::Builder::adoptParameters(
    ::capnp::Orphan< ::stream::library::CellParameters>&& value) {
  ::capnp::_::PointerHelpers< ::stream::library::CellParameters>::adopt(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::stream::library::CellParameters> CellSpec::Builder::disownParameters() {
  return ::capnp::_::PointerHelpers< ::stream::library::CellParameters>::disown(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS));
}

inline  ::uint64_t CellSpec::Reader::getPropertySetId() const {
  return _reader.getDataField< ::uint64_t>(
      ::capnp::bounded<1>() * ::capnp::ELEMENTS);
}

inline  ::uint64_t CellSpec::Builder::getPropertySetId() {
  return _builder.getDataField< ::uint64_t>(
      ::capnp::bounded<1>() * ::capnp::ELEMENTS);
}
inline void CellSpec::Builder::setPropertySetId( ::uint64_t value) {
  _builder.setDataField< ::uint64_t>(
      ::capnp::bounded<1>() * ::capnp::ELEMENTS, value);
}

inline bool CellSpecsTable::Reader::hasCellSpecs() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool CellSpecsTable::Builder::hasCellSpecs() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>::Reader CellSpecsTable::Reader::getCellSpecs() const {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>::Builder CellSpecsTable::Builder::getCellSpecs() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void CellSpecsTable::Builder::setCellSpecs( ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>::Builder CellSpecsTable::Builder::initCellSpecs(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), size);
}
inline void CellSpecsTable::Builder::adoptCellSpecs(
    ::capnp::Orphan< ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>> CellSpecsTable::Builder::disownCellSpecs() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::CellSpec,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline  ::uint64_t CellHierarchyTreeNode::Reader::getCellId() const {
  return _reader.getDataField< ::uint64_t>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS);
}

inline  ::uint64_t CellHierarchyTreeNode::Builder::getCellId() {
  return _builder.getDataField< ::uint64_t>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS);
}
inline void CellHierarchyTreeNode::Builder::setCellId( ::uint64_t value) {
  _builder.setDataField< ::uint64_t>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
}

inline bool CellHierarchyTreeNode::Reader::hasChildCellIds() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool CellHierarchyTreeNode::Builder::hasChildCellIds() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Reader CellHierarchyTreeNode::Reader::getChildCellIds() const {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Builder CellHierarchyTreeNode::Builder::getChildCellIds() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void CellHierarchyTreeNode::Builder::setChildCellIds( ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline void CellHierarchyTreeNode::Builder::setChildCellIds(::kj::ArrayPtr<const  ::uint64_t> value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Builder CellHierarchyTreeNode::Builder::initChildCellIds(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), size);
}
inline void CellHierarchyTreeNode::Builder::adoptChildCellIds(
    ::capnp::Orphan< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>> CellHierarchyTreeNode::Builder::disownChildCellIds() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline  ::uint64_t CellHierarchyTree::Reader::getNumberOfTopCells() const {
  return _reader.getDataField< ::uint64_t>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS);
}

inline  ::uint64_t CellHierarchyTree::Builder::getNumberOfTopCells() {
  return _builder.getDataField< ::uint64_t>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS);
}
inline void CellHierarchyTree::Builder::setNumberOfTopCells( ::uint64_t value) {
  _builder.setDataField< ::uint64_t>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
}

inline bool CellHierarchyTree::Reader::hasNodes() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool CellHierarchyTree::Builder::hasNodes() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>::Reader CellHierarchyTree::Reader::getNodes() const {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>::Builder CellHierarchyTree::Builder::getNodes() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void CellHierarchyTree::Builder::setNodes( ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>::Builder CellHierarchyTree::Builder::initNodes(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), size);
}
inline void CellHierarchyTree::Builder::adoptNodes(
    ::capnp::Orphan< ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>> CellHierarchyTree::Builder::disownNodes() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::CellHierarchyTreeNode,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline bool LayerEntry::Reader::hasLayerNumbers() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool LayerEntry::Builder::hasLayerNumbers() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Reader LayerEntry::Reader::getLayerNumbers() const {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Builder LayerEntry::Builder::getLayerNumbers() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void LayerEntry::Builder::setLayerNumbers( ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline void LayerEntry::Builder::setLayerNumbers(::kj::ArrayPtr<const  ::uint64_t> value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>::Builder LayerEntry::Builder::initLayerNumbers(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), size);
}
inline void LayerEntry::Builder::adoptLayerNumbers(
    ::capnp::Orphan< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>> LayerEntry::Builder::disownLayerNumbers() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::uint64_t,  ::capnp::Kind::PRIMITIVE>>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline bool LayerEntry::Reader::hasName() const {
  return !_reader.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
}
inline bool LayerEntry::Builder::hasName() {
  return !_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::Text::Reader LayerEntry::Reader::getName() const {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_reader.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}
inline  ::capnp::Text::Builder LayerEntry::Builder::getName() {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}
inline void LayerEntry::Builder::setName( ::capnp::Text::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::Text>::set(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS), value);
}
inline  ::capnp::Text::Builder LayerEntry::Builder::initName(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::init(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS), size);
}
inline void LayerEntry::Builder::adoptName(
    ::capnp::Orphan< ::capnp::Text>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::Text>::adopt(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::Text> LayerEntry::Builder::disownName() {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::disown(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}

inline  ::stream::library::LayerEntry::Purpose LayerEntry::Reader::getPurpose() const {
  return _reader.getDataField< ::stream::library::LayerEntry::Purpose>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS);
}

inline  ::stream::library::LayerEntry::Purpose LayerEntry::Builder::getPurpose() {
  return _builder.getDataField< ::stream::library::LayerEntry::Purpose>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS);
}
inline void LayerEntry::Builder::setPurpose( ::stream::library::LayerEntry::Purpose value) {
  _builder.setDataField< ::stream::library::LayerEntry::Purpose>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
}

inline bool LayerTable::Reader::hasLayerEntries() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool LayerTable::Builder::hasLayerEntries() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>::Reader LayerTable::Reader::getLayerEntries() const {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>::Builder LayerTable::Builder::getLayerEntries() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void LayerTable::Builder::setLayerEntries( ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>::Builder LayerTable::Builder::initLayerEntries(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), size);
}
inline void LayerTable::Builder::adoptLayerEntries(
    ::capnp::Orphan< ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>> LayerTable::Builder::disownLayerEntries() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::LayerEntry,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline bool ViewSpec::Reader::hasName() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool ViewSpec::Builder::hasName() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::Text::Reader ViewSpec::Reader::getName() const {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::capnp::Text::Builder ViewSpec::Builder::getName() {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void ViewSpec::Builder::setName( ::capnp::Text::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::Text>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::capnp::Text::Builder ViewSpec::Builder::initName(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), size);
}
inline void ViewSpec::Builder::adoptName(
    ::capnp::Orphan< ::capnp::Text>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::Text>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::Text> ViewSpec::Builder::disownName() {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline bool ViewSpec::Reader::hasClass() const {
  return !_reader.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
}
inline bool ViewSpec::Builder::hasClass() {
  return !_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::Text::Reader ViewSpec::Reader::getClass() const {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_reader.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}
inline  ::capnp::Text::Builder ViewSpec::Builder::getClass() {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}
inline void ViewSpec::Builder::setClass( ::capnp::Text::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::Text>::set(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS), value);
}
inline  ::capnp::Text::Builder ViewSpec::Builder::initClass(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::init(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS), size);
}
inline void ViewSpec::Builder::adoptClass(
    ::capnp::Orphan< ::capnp::Text>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::Text>::adopt(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::Text> ViewSpec::Builder::disownClass() {
  return ::capnp::_::PointerHelpers< ::capnp::Text>::disown(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}

inline double ViewSpec::Reader::getResolution() const {
  return _reader.getDataField<double>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS);
}

inline double ViewSpec::Builder::getResolution() {
  return _builder.getDataField<double>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS);
}
inline void ViewSpec::Builder::setResolution(double value) {
  _builder.setDataField<double>(
      ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
}

inline bool ViewSpec::Reader::hasLayerTable() const {
  return !_reader.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS).isNull();
}
inline bool ViewSpec::Builder::hasLayerTable() {
  return !_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS).isNull();
}
inline  ::stream::library::LayerTable::Reader ViewSpec::Reader::getLayerTable() const {
  return ::capnp::_::PointerHelpers< ::stream::library::LayerTable>::get(_reader.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS));
}
inline  ::stream::library::LayerTable::Builder ViewSpec::Builder::getLayerTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::LayerTable>::get(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS));
}
#if !CAPNP_LITE
inline  ::stream::library::LayerTable::Pipeline ViewSpec::Pipeline::getLayerTable() {
  return  ::stream::library::LayerTable::Pipeline(_typeless.getPointerField(2));
}
#endif  // !CAPNP_LITE
inline void ViewSpec::Builder::setLayerTable( ::stream::library::LayerTable::Reader value) {
  ::capnp::_::PointerHelpers< ::stream::library::LayerTable>::set(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS), value);
}
inline  ::stream::library::LayerTable::Builder ViewSpec::Builder::initLayerTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::LayerTable>::init(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS));
}
inline void ViewSpec::Builder::adoptLayerTable(
    ::capnp::Orphan< ::stream::library::LayerTable>&& value) {
  ::capnp::_::PointerHelpers< ::stream::library::LayerTable>::adopt(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::stream::library::LayerTable> ViewSpec::Builder::disownLayerTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::LayerTable>::disown(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS));
}

inline  ::uint64_t ViewSpec::Reader::getPropertySetId() const {
  return _reader.getDataField< ::uint64_t>(
      ::capnp::bounded<1>() * ::capnp::ELEMENTS);
}

inline  ::uint64_t ViewSpec::Builder::getPropertySetId() {
  return _builder.getDataField< ::uint64_t>(
      ::capnp::bounded<1>() * ::capnp::ELEMENTS);
}
inline void ViewSpec::Builder::setPropertySetId( ::uint64_t value) {
  _builder.setDataField< ::uint64_t>(
      ::capnp::bounded<1>() * ::capnp::ELEMENTS, value);
}

inline bool ViewSpec::Reader::hasMetaData() const {
  return !_reader.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS).isNull();
}
inline bool ViewSpec::Builder::hasMetaData() {
  return !_builder.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS).isNull();
}
inline  ::stream::metaData::MetaData::Reader ViewSpec::Reader::getMetaData() const {
  return ::capnp::_::PointerHelpers< ::stream::metaData::MetaData>::get(_reader.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS));
}
inline  ::stream::metaData::MetaData::Builder ViewSpec::Builder::getMetaData() {
  return ::capnp::_::PointerHelpers< ::stream::metaData::MetaData>::get(_builder.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS));
}
#if !CAPNP_LITE
inline  ::stream::metaData::MetaData::Pipeline ViewSpec::Pipeline::getMetaData() {
  return  ::stream::metaData::MetaData::Pipeline(_typeless.getPointerField(3));
}
#endif  // !CAPNP_LITE
inline void ViewSpec::Builder::setMetaData( ::stream::metaData::MetaData::Reader value) {
  ::capnp::_::PointerHelpers< ::stream::metaData::MetaData>::set(_builder.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS), value);
}
inline  ::stream::metaData::MetaData::Builder ViewSpec::Builder::initMetaData() {
  return ::capnp::_::PointerHelpers< ::stream::metaData::MetaData>::init(_builder.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS));
}
inline void ViewSpec::Builder::adoptMetaData(
    ::capnp::Orphan< ::stream::metaData::MetaData>&& value) {
  ::capnp::_::PointerHelpers< ::stream::metaData::MetaData>::adopt(_builder.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::stream::metaData::MetaData> ViewSpec::Builder::disownMetaData() {
  return ::capnp::_::PointerHelpers< ::stream::metaData::MetaData>::disown(_builder.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS));
}

inline bool ViewSpecsTable::Reader::hasViewSpecs() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool ViewSpecsTable::Builder::hasViewSpecs() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>::Reader ViewSpecsTable::Reader::getViewSpecs() const {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>::Builder ViewSpecsTable::Builder::getViewSpecs() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void ViewSpecsTable::Builder::setViewSpecs( ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>::Reader value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>::Builder ViewSpecsTable::Builder::initViewSpecs(unsigned int size) {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), size);
}
inline void ViewSpecsTable::Builder::adoptViewSpecs(
    ::capnp::Orphan< ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>>&& value) {
  ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>> ViewSpecsTable::Builder::disownViewSpecs() {
  return ::capnp::_::PointerHelpers< ::capnp::List< ::stream::library::ViewSpec,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline bool Library::Reader::hasMetaData() const {
  return !_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline bool Library::Builder::hasMetaData() {
  return !_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
}
inline  ::stream::metaData::MetaData::Reader Library::Reader::getMetaData() const {
  return ::capnp::_::PointerHelpers< ::stream::metaData::MetaData>::get(_reader.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline  ::stream::metaData::MetaData::Builder Library::Builder::getMetaData() {
  return ::capnp::_::PointerHelpers< ::stream::metaData::MetaData>::get(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
#if !CAPNP_LITE
inline  ::stream::metaData::MetaData::Pipeline Library::Pipeline::getMetaData() {
  return  ::stream::metaData::MetaData::Pipeline(_typeless.getPointerField(0));
}
#endif  // !CAPNP_LITE
inline void Library::Builder::setMetaData( ::stream::metaData::MetaData::Reader value) {
  ::capnp::_::PointerHelpers< ::stream::metaData::MetaData>::set(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), value);
}
inline  ::stream::metaData::MetaData::Builder Library::Builder::initMetaData() {
  return ::capnp::_::PointerHelpers< ::stream::metaData::MetaData>::init(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}
inline void Library::Builder::adoptMetaData(
    ::capnp::Orphan< ::stream::metaData::MetaData>&& value) {
  ::capnp::_::PointerHelpers< ::stream::metaData::MetaData>::adopt(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::stream::metaData::MetaData> Library::Builder::disownMetaData() {
  return ::capnp::_::PointerHelpers< ::stream::metaData::MetaData>::disown(_builder.getPointerField(
      ::capnp::bounded<0>() * ::capnp::POINTERS));
}

inline bool Library::Reader::hasLibraryRefs() const {
  return !_reader.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
}
inline bool Library::Builder::hasLibraryRefs() {
  return !_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
}
inline  ::stream::library::LibraryRefs::Reader Library::Reader::getLibraryRefs() const {
  return ::capnp::_::PointerHelpers< ::stream::library::LibraryRefs>::get(_reader.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}
inline  ::stream::library::LibraryRefs::Builder Library::Builder::getLibraryRefs() {
  return ::capnp::_::PointerHelpers< ::stream::library::LibraryRefs>::get(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}
#if !CAPNP_LITE
inline  ::stream::library::LibraryRefs::Pipeline Library::Pipeline::getLibraryRefs() {
  return  ::stream::library::LibraryRefs::Pipeline(_typeless.getPointerField(1));
}
#endif  // !CAPNP_LITE
inline void Library::Builder::setLibraryRefs( ::stream::library::LibraryRefs::Reader value) {
  ::capnp::_::PointerHelpers< ::stream::library::LibraryRefs>::set(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS), value);
}
inline  ::stream::library::LibraryRefs::Builder Library::Builder::initLibraryRefs() {
  return ::capnp::_::PointerHelpers< ::stream::library::LibraryRefs>::init(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}
inline void Library::Builder::adoptLibraryRefs(
    ::capnp::Orphan< ::stream::library::LibraryRefs>&& value) {
  ::capnp::_::PointerHelpers< ::stream::library::LibraryRefs>::adopt(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::stream::library::LibraryRefs> Library::Builder::disownLibraryRefs() {
  return ::capnp::_::PointerHelpers< ::stream::library::LibraryRefs>::disown(_builder.getPointerField(
      ::capnp::bounded<1>() * ::capnp::POINTERS));
}

inline bool Library::Reader::hasPropertyNamesTable() const {
  return !_reader.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS).isNull();
}
inline bool Library::Builder::hasPropertyNamesTable() {
  return !_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS).isNull();
}
inline  ::stream::library::PropertyNamesTable::Reader Library::Reader::getPropertyNamesTable() const {
  return ::capnp::_::PointerHelpers< ::stream::library::PropertyNamesTable>::get(_reader.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS));
}
inline  ::stream::library::PropertyNamesTable::Builder Library::Builder::getPropertyNamesTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::PropertyNamesTable>::get(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS));
}
#if !CAPNP_LITE
inline  ::stream::library::PropertyNamesTable::Pipeline Library::Pipeline::getPropertyNamesTable() {
  return  ::stream::library::PropertyNamesTable::Pipeline(_typeless.getPointerField(2));
}
#endif  // !CAPNP_LITE
inline void Library::Builder::setPropertyNamesTable( ::stream::library::PropertyNamesTable::Reader value) {
  ::capnp::_::PointerHelpers< ::stream::library::PropertyNamesTable>::set(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS), value);
}
inline  ::stream::library::PropertyNamesTable::Builder Library::Builder::initPropertyNamesTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::PropertyNamesTable>::init(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS));
}
inline void Library::Builder::adoptPropertyNamesTable(
    ::capnp::Orphan< ::stream::library::PropertyNamesTable>&& value) {
  ::capnp::_::PointerHelpers< ::stream::library::PropertyNamesTable>::adopt(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::stream::library::PropertyNamesTable> Library::Builder::disownPropertyNamesTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::PropertyNamesTable>::disown(_builder.getPointerField(
      ::capnp::bounded<2>() * ::capnp::POINTERS));
}

inline bool Library::Reader::hasPropertiesTable() const {
  return !_reader.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS).isNull();
}
inline bool Library::Builder::hasPropertiesTable() {
  return !_builder.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS).isNull();
}
inline  ::stream::library::PropertiesTable::Reader Library::Reader::getPropertiesTable() const {
  return ::capnp::_::PointerHelpers< ::stream::library::PropertiesTable>::get(_reader.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS));
}
inline  ::stream::library::PropertiesTable::Builder Library::Builder::getPropertiesTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::PropertiesTable>::get(_builder.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS));
}
#if !CAPNP_LITE
inline  ::stream::library::PropertiesTable::Pipeline Library::Pipeline::getPropertiesTable() {
  return  ::stream::library::PropertiesTable::Pipeline(_typeless.getPointerField(3));
}
#endif  // !CAPNP_LITE
inline void Library::Builder::setPropertiesTable( ::stream::library::PropertiesTable::Reader value) {
  ::capnp::_::PointerHelpers< ::stream::library::PropertiesTable>::set(_builder.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS), value);
}
inline  ::stream::library::PropertiesTable::Builder Library::Builder::initPropertiesTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::PropertiesTable>::init(_builder.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS));
}
inline void Library::Builder::adoptPropertiesTable(
    ::capnp::Orphan< ::stream::library::PropertiesTable>&& value) {
  ::capnp::_::PointerHelpers< ::stream::library::PropertiesTable>::adopt(_builder.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::stream::library::PropertiesTable> Library::Builder::disownPropertiesTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::PropertiesTable>::disown(_builder.getPointerField(
      ::capnp::bounded<3>() * ::capnp::POINTERS));
}

inline bool Library::Reader::hasTextStringsTable() const {
  return !_reader.getPointerField(
      ::capnp::bounded<4>() * ::capnp::POINTERS).isNull();
}
inline bool Library::Builder::hasTextStringsTable() {
  return !_builder.getPointerField(
      ::capnp::bounded<4>() * ::capnp::POINTERS).isNull();
}
inline  ::stream::library::TextStringsTable::Reader Library::Reader::getTextStringsTable() const {
  return ::capnp::_::PointerHelpers< ::stream::library::TextStringsTable>::get(_reader.getPointerField(
      ::capnp::bounded<4>() * ::capnp::POINTERS));
}
inline  ::stream::library::TextStringsTable::Builder Library::Builder::getTextStringsTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::TextStringsTable>::get(_builder.getPointerField(
      ::capnp::bounded<4>() * ::capnp::POINTERS));
}
#if !CAPNP_LITE
inline  ::stream::library::TextStringsTable::Pipeline Library::Pipeline::getTextStringsTable() {
  return  ::stream::library::TextStringsTable::Pipeline(_typeless.getPointerField(4));
}
#endif  // !CAPNP_LITE
inline void Library::Builder::setTextStringsTable( ::stream::library::TextStringsTable::Reader value) {
  ::capnp::_::PointerHelpers< ::stream::library::TextStringsTable>::set(_builder.getPointerField(
      ::capnp::bounded<4>() * ::capnp::POINTERS), value);
}
inline  ::stream::library::TextStringsTable::Builder Library::Builder::initTextStringsTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::TextStringsTable>::init(_builder.getPointerField(
      ::capnp::bounded<4>() * ::capnp::POINTERS));
}
inline void Library::Builder::adoptTextStringsTable(
    ::capnp::Orphan< ::stream::library::TextStringsTable>&& value) {
  ::capnp::_::PointerHelpers< ::stream::library::TextStringsTable>::adopt(_builder.getPointerField(
      ::capnp::bounded<4>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::stream::library::TextStringsTable> Library::Builder::disownTextStringsTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::TextStringsTable>::disown(_builder.getPointerField(
      ::capnp::bounded<4>() * ::capnp::POINTERS));
}

inline bool Library::Reader::hasViewSpecsTable() const {
  return !_reader.getPointerField(
      ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
}
inline bool Library::Builder::hasViewSpecsTable() {
  return !_builder.getPointerField(
      ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
}
inline  ::stream::library::ViewSpecsTable::Reader Library::Reader::getViewSpecsTable() const {
  return ::capnp::_::PointerHelpers< ::stream::library::ViewSpecsTable>::get(_reader.getPointerField(
      ::capnp::bounded<5>() * ::capnp::POINTERS));
}
inline  ::stream::library::ViewSpecsTable::Builder Library::Builder::getViewSpecsTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::ViewSpecsTable>::get(_builder.getPointerField(
      ::capnp::bounded<5>() * ::capnp::POINTERS));
}
#if !CAPNP_LITE
inline  ::stream::library::ViewSpecsTable::Pipeline Library::Pipeline::getViewSpecsTable() {
  return  ::stream::library::ViewSpecsTable::Pipeline(_typeless.getPointerField(5));
}
#endif  // !CAPNP_LITE
inline void Library::Builder::setViewSpecsTable( ::stream::library::ViewSpecsTable::Reader value) {
  ::capnp::_::PointerHelpers< ::stream::library::ViewSpecsTable>::set(_builder.getPointerField(
      ::capnp::bounded<5>() * ::capnp::POINTERS), value);
}
inline  ::stream::library::ViewSpecsTable::Builder Library::Builder::initViewSpecsTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::ViewSpecsTable>::init(_builder.getPointerField(
      ::capnp::bounded<5>() * ::capnp::POINTERS));
}
inline void Library::Builder::adoptViewSpecsTable(
    ::capnp::Orphan< ::stream::library::ViewSpecsTable>&& value) {
  ::capnp::_::PointerHelpers< ::stream::library::ViewSpecsTable>::adopt(_builder.getPointerField(
      ::capnp::bounded<5>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::stream::library::ViewSpecsTable> Library::Builder::disownViewSpecsTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::ViewSpecsTable>::disown(_builder.getPointerField(
      ::capnp::bounded<5>() * ::capnp::POINTERS));
}

inline bool Library::Reader::hasCellSpecsTable() const {
  return !_reader.getPointerField(
      ::capnp::bounded<6>() * ::capnp::POINTERS).isNull();
}
inline bool Library::Builder::hasCellSpecsTable() {
  return !_builder.getPointerField(
      ::capnp::bounded<6>() * ::capnp::POINTERS).isNull();
}
inline  ::stream::library::CellSpecsTable::Reader Library::Reader::getCellSpecsTable() const {
  return ::capnp::_::PointerHelpers< ::stream::library::CellSpecsTable>::get(_reader.getPointerField(
      ::capnp::bounded<6>() * ::capnp::POINTERS));
}
inline  ::stream::library::CellSpecsTable::Builder Library::Builder::getCellSpecsTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::CellSpecsTable>::get(_builder.getPointerField(
      ::capnp::bounded<6>() * ::capnp::POINTERS));
}
#if !CAPNP_LITE
inline  ::stream::library::CellSpecsTable::Pipeline Library::Pipeline::getCellSpecsTable() {
  return  ::stream::library::CellSpecsTable::Pipeline(_typeless.getPointerField(6));
}
#endif  // !CAPNP_LITE
inline void Library::Builder::setCellSpecsTable( ::stream::library::CellSpecsTable::Reader value) {
  ::capnp::_::PointerHelpers< ::stream::library::CellSpecsTable>::set(_builder.getPointerField(
      ::capnp::bounded<6>() * ::capnp::POINTERS), value);
}
inline  ::stream::library::CellSpecsTable::Builder Library::Builder::initCellSpecsTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::CellSpecsTable>::init(_builder.getPointerField(
      ::capnp::bounded<6>() * ::capnp::POINTERS));
}
inline void Library::Builder::adoptCellSpecsTable(
    ::capnp::Orphan< ::stream::library::CellSpecsTable>&& value) {
  ::capnp::_::PointerHelpers< ::stream::library::CellSpecsTable>::adopt(_builder.getPointerField(
      ::capnp::bounded<6>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::stream::library::CellSpecsTable> Library::Builder::disownCellSpecsTable() {
  return ::capnp::_::PointerHelpers< ::stream::library::CellSpecsTable>::disown(_builder.getPointerField(
      ::capnp::bounded<6>() * ::capnp::POINTERS));
}

inline bool Library::Reader::hasCellHierarchyTree() const {
  return !_reader.getPointerField(
      ::capnp::bounded<7>() * ::capnp::POINTERS).isNull();
}
inline bool Library::Builder::hasCellHierarchyTree() {
  return !_builder.getPointerField(
      ::capnp::bounded<7>() * ::capnp::POINTERS).isNull();
}
inline  ::stream::library::CellHierarchyTree::Reader Library::Reader::getCellHierarchyTree() const {
  return ::capnp::_::PointerHelpers< ::stream::library::CellHierarchyTree>::get(_reader.getPointerField(
      ::capnp::bounded<7>() * ::capnp::POINTERS));
}
inline  ::stream::library::CellHierarchyTree::Builder Library::Builder::getCellHierarchyTree() {
  return ::capnp::_::PointerHelpers< ::stream::library::CellHierarchyTree>::get(_builder.getPointerField(
      ::capnp::bounded<7>() * ::capnp::POINTERS));
}
#if !CAPNP_LITE
inline  ::stream::library::CellHierarchyTree::Pipeline Library::Pipeline::getCellHierarchyTree() {
  return  ::stream::library::CellHierarchyTree::Pipeline(_typeless.getPointerField(7));
}
#endif  // !CAPNP_LITE
inline void Library::Builder::setCellHierarchyTree( ::stream::library::CellHierarchyTree::Reader value) {
  ::capnp::_::PointerHelpers< ::stream::library::CellHierarchyTree>::set(_builder.getPointerField(
      ::capnp::bounded<7>() * ::capnp::POINTERS), value);
}
inline  ::stream::library::CellHierarchyTree::Builder Library::Builder::initCellHierarchyTree() {
  return ::capnp::_::PointerHelpers< ::stream::library::CellHierarchyTree>::init(_builder.getPointerField(
      ::capnp::bounded<7>() * ::capnp::POINTERS));
}
inline void Library::Builder::adoptCellHierarchyTree(
    ::capnp::Orphan< ::stream::library::CellHierarchyTree>&& value) {
  ::capnp::_::PointerHelpers< ::stream::library::CellHierarchyTree>::adopt(_builder.getPointerField(
      ::capnp::bounded<7>() * ::capnp::POINTERS), kj::mv(value));
}
inline ::capnp::Orphan< ::stream::library::CellHierarchyTree> Library::Builder::disownCellHierarchyTree() {
  return ::capnp::_::PointerHelpers< ::stream::library::CellHierarchyTree>::disown(_builder.getPointerField(
      ::capnp::bounded<7>() * ::capnp::POINTERS));
}

}  // namespace
}  // namespace

CAPNP_END_HEADER

