@interface VKVenueGroup : VKPolygonGroup { struct optional<md::MeshSet<ggl::VenueWall::MeshMesh, ggl::VenueWall::DefaultVbo>> { BOOL _hasValue; union ValueUnion { unsigned char data[184]; struct MeshSet<ggl::VenueWall::MeshMesh, ggl::VenueWall::DefaultVbo> { struct vector<std::pair<unsigned short, unsigned int>, std::allocator<std::pair<unsigned short, unsigned int>>> { void *__begin_; void *__end_; struct __compressed_pair<std::pair<unsigned short, unsigned int> *, std::allocator<std::pair<unsigned short, unsigned int>>> { void *__value_; } __end_cap_; } _vertexAndIndexCounts; struct vector<std::shared_ptr<ggl::VenueWall::MeshMesh>, std::allocator<std::shared_ptr<ggl::VenueWall::MeshMesh>>> { void *__begin_; void *__end_; struct __compressed_pair<std::shared_ptr<ggl::VenueWall::MeshMesh> *, std::allocator<std::shared_ptr<ggl::VenueWall::MeshMesh>>> { void *__value_; } __end_cap_; } _meshes; struct DataWrite<ggl::VenueWall::DefaultVbo> { struct BufferMemory { struct ResourceAccessor *_accessor; struct BufferData *_user; struct Range<unsigned long> { unsigned long long _min; unsigned long long _max; } _range; int _access; int _sync; char *_data; } _memory; } _vertexDataWrite; struct DataWrite<unsigned short> { struct BufferMemory { struct ResourceAccessor *_accessor; struct BufferData *_user; struct Range<unsigned long> { unsigned long long _min; unsigned long long _max; } _range; int _access; int _sync; char *_data; } _memory; } _indexDataWrite; unsigned char _meshIndex; unsigned short _meshVertexOffset; unsigned int _meshIndexOffset; struct MeshSetStorage *_storage; struct unique_ptr<md::MeshSetStorage, std::default_delete<md::MeshSetStorage>> { struct __compressed_pair<md::MeshSetStorage *, std::default_delete<md::MeshSetStorage>> { struct MeshSetStorage *__value_; } __ptr_; } _internalStorage; struct shared_ptr<md::MeshSetStorageClient> { struct MeshSetStorageClient *__ptr_; struct __shared_weak_count *__cntrl_; } _storageClient; } type; } _value; } _venueWallMeshInfo; struct optional<md::MeshSet<ggl::VenueWall::EndCapMesh, ggl::VenueWall::EndCapVbo>> { BOOL _hasValue; union ValueUnion { unsigned char data[184]; struct MeshSet<ggl::VenueWall::EndCapMesh, ggl::VenueWall::EndCapVbo> { struct vector<std::pair<unsigned short, unsigned int>, std::allocator<std::pair<unsigned short, unsigned int>>> { void *__begin_; void *__end_; struct __compressed_pair<std::pair<unsigned short, unsigned int> *, std::allocator<std::pair<unsigned short, unsigned int>>> { void *__value_; } __end_cap_; } _vertexAndIndexCounts; struct vector<std::shared_ptr<ggl::VenueWall::EndCapMesh>, std::allocator<std::shared_ptr<ggl::VenueWall::EndCapMesh>>> { void *__begin_; void *__end_; struct __compressed_pair<std::shared_ptr<ggl::VenueWall::EndCapMesh> *, std::allocator<std::shared_ptr<ggl::VenueWall::EndCapMesh>>> { void *__value_; } __end_cap_; } _meshes; struct DataWrite<ggl::VenueWall::EndCapVbo> { struct BufferMemory { struct ResourceAccessor *_accessor; struct BufferData *_user; struct Range<unsigned long> { unsigned long long _min; unsigned long long _max; } _range; int _access; int _sync; char *_data; } _memory; } _vertexDataWrite; struct DataWrite<unsigned short> { struct BufferMemory { struct ResourceAccessor *_accessor; struct BufferData *_user; struct Range<unsigned long> { unsigned long long _min; unsigned long long _max; } _range; int _access; int _sync; char *_data; } _memory; } _indexDataWrite; unsigned char _meshIndex; unsigned short _meshVertexOffset; unsigned int _meshIndexOffset; struct MeshSetStorage *_storage; struct unique_ptr<md::MeshSetStorage, std::default_delete<md::MeshSetStorage>> { struct __compressed_pair<md::MeshSetStorage *, std::default_delete<md::MeshSetStorage>> { struct MeshSetStorage *__value_; } __ptr_; } _internalStorage; struct shared_ptr<md::MeshSetStorageClient> { struct MeshSetStorageClient *__ptr_; struct __shared_weak_count *__cntrl_; } _storageClient; } type; } _value; } _venueWallEndCapMeshInfo; struct optional<md::MeshSet<ggl::Venue3DStroke::HorizontalVenue3DStrokeMesh, ggl::Venue3DStroke::HorizontalDefaultVbo>> { BOOL _hasValue; union ValueUnion { unsigned char data[184]; struct MeshSet<ggl::Venue3DStroke::HorizontalVenue3DStrokeMesh, ggl::Venue3DStroke::HorizontalDefaultVbo> { struct vector<std::pair<unsigned short, unsigned int>, std::allocator<std::pair<unsigned short, unsigned int>>> { void *__begin_; void *__end_; struct __compressed_pair<std::pair<unsigned short, unsigned int> *, std::allocator<std::pair<unsigned short, unsigned int>>> { void *__value_; } __end_cap_; } _vertexAndIndexCounts; struct vector<std::shared_ptr<ggl::Venue3DStroke::HorizontalVenue3DStrokeMesh>, std::allocator<std::shared_ptr<ggl::Venue3DStroke::HorizontalVenue3DStrokeMesh>>> { void *__begin_; void *__end_; struct __compressed_pair<std::shared_ptr<ggl::Venue3DStroke::HorizontalVenue3DStrokeMesh> *, std::allocator<std::shared_ptr<ggl::Venue3DStroke::HorizontalVenue3DStrokeMesh>>> { void *__value_; } __end_cap_; } _meshes; struct DataWrite<ggl::Venue3DStroke::HorizontalDefaultVbo> { struct BufferMemory { struct ResourceAccessor *_accessor; struct BufferData *_user; struct Range<unsigned long> { unsigned long long _min; unsigned long long _max; } _range; int _access; int _sync; char *_data; } _memory; } _vertexDataWrite; struct DataWrite<unsigned short> { struct BufferMemory { struct ResourceAccessor *_accessor; struct BufferData *_user; struct Range<unsigned long> { unsigned long long _min; unsigned long long _max; } _range; int _access; int _sync; char *_data; } _memory; } _indexDataWrite; unsigned char _meshIndex; unsigned short _meshVertexOffset; unsigned int _meshIndexOffset; struct MeshSetStorage *_storage; struct unique_ptr<md::MeshSetStorage, std::default_delete<md::MeshSetStorage>> { struct __compressed_pair<md::MeshSetStorage *, std::default_delete<md::MeshSetStorage>> { struct MeshSetStorage *__value_; } __ptr_; } _internalStorage; struct shared_ptr<md::MeshSetStorageClient> { struct MeshSetStorageClient *__ptr_; struct __shared_weak_count *__cntrl_; } _storageClient; } type; } _value; } _venueWallHorizontalStrokeMeshInfo; struct optional<md::MeshSet<ggl::Venue3DStroke::VerticalVenue3DStrokeMesh, ggl::Venue3DStroke::VerticalDefaultVbo>> { BOOL _hasValue; union ValueUnion { unsigned char data[184]; struct MeshSet<ggl::Venue3DStroke::VerticalVenue3DStrokeMesh, ggl::Venue3DStroke::VerticalDefaultVbo> { struct vector<std::pair<unsigned short, unsigned int>, std::allocator<std::pair<unsigned short, unsigned int>>> { void *__begin_; void *__end_; struct __compressed_pair<std::pair<unsigned short, unsigned int> *, std::allocator<std::pair<unsigned short, unsigned int>>> { void *__value_; } __end_cap_; } _vertexAndIndexCounts; struct vector<std::shared_ptr<ggl::Venue3DStroke::VerticalVenue3DStrokeMesh>, std::allocator<std::shared_ptr<ggl::Venue3DStroke::VerticalVenue3DStrokeMesh>>> { void *__begin_; void *__end_; struct __compressed_pair<std::shared_ptr<ggl::Venue3DStroke::VerticalVenue3DStrokeMesh> *, std::allocator<std::shared_ptr<ggl::Venue3DStroke::VerticalVenue3DStrokeMesh>>> { void *__value_; } __end_cap_; } _meshes; struct DataWrite<ggl::Venue3DStroke::VerticalDefaultVbo> { struct BufferMemory { struct ResourceAccessor *_accessor; struct BufferData *_user; struct Range<unsigned long> { unsigned long long _min; unsigned long long _max; } _range; int _access; int _sync; char *_data; } _memory; } _vertexDataWrite; struct DataWrite<unsigned short> { struct BufferMemory { struct ResourceAccessor *_accessor; struct BufferData *_user; struct Range<unsigned long> { unsigned long long _min; unsigned long long _max; } _range; int _access; int _sync; char *_data; } _memory; } _indexDataWrite; unsigned char _meshIndex; unsigned short _meshVertexOffset; unsigned int _meshIndexOffset; struct MeshSetStorage *_storage; struct unique_ptr<md::MeshSetStorage, std::default_delete<md::MeshSetStorage>> { struct __compressed_pair<md::MeshSetStorage *, std::default_delete<md::MeshSetStorage>> { struct MeshSetStorage *__value_; } __ptr_; } _internalStorage; struct shared_ptr<md::MeshSetStorageClient> { struct MeshSetStorageClient *__ptr_; struct __shared_weak_count *__cntrl_; } _storageClient; } type; } _value; } _venueWallVerticalStrokeMeshInfo; struct vector<std::shared_ptr<ggl::VenueWall::MeshMesh>, std::allocator<std::shared_ptr<ggl::VenueWall::MeshMesh>>> { void *__begin_; void *__end_; struct __compressed_pair<std::shared_ptr<ggl::VenueWall::MeshMesh> *, std::allocator<std::shared_ptr<ggl::VenueWall::MeshMesh>>> { void *__value_; } __end_cap_; } _venueWallMeshes; struct vector<std::shared_ptr<ggl::VenueWall::EndCapMesh>, std::allocator<std::shared_ptr<ggl::VenueWall::EndCapMesh>>> { void *__begin_; void *__end_; struct __compressed_pair<std::shared_ptr<ggl::VenueWall::EndCapMesh> *, std::allocator<std::shared_ptr<ggl::VenueWall::EndCapMesh>>> { void *__value_; } __end_cap_; } _venueWallEndMeshes; struct vector<std::shared_ptr<ggl::Venue3DStroke::HorizontalVenue3DStrokeMesh>, std::allocator<std::shared_ptr<ggl::Venue3DStroke::HorizontalVenue3DStrokeMesh>>> { void *__begin_; void *__end_; struct __compressed_pair<std::shared_ptr<ggl::Venue3DStroke::HorizontalVenue3DStrokeMesh> *, std::allocator<std::shared_ptr<ggl::Venue3DStroke::HorizontalVenue3DStrokeMesh>>> { void *__value_; } __end_cap_; } _venueWallHorizontalStrokeMeshes; struct vector<std::shared_ptr<ggl::Venue3DStroke::VerticalVenue3DStrokeMesh>, std::allocator<std::shared_ptr<ggl::Venue3DStroke::VerticalVenue3DStrokeMesh>>> { void *__begin_; void *__end_; struct __compressed_pair<std::shared_ptr<ggl::Venue3DStroke::VerticalVenue3DStrokeMesh> *, std::allocator<std::shared_ptr<ggl::Venue3DStroke::VerticalVenue3DStrokeMesh>>> { void *__value_; } __end_cap_; } _venueWallVerticalStrokeMeshes; struct unordered_map<std::pair<const void *, unsigned long>, std::vector<md::Edge>, std::hash<md::SectionKey>, std::equal_to<std::pair<const void *, unsigned long>>, std::allocator<std::pair<const std::pair<const void *, unsigned long>, std::vector<md::Edge>>>> { struct __hash_table<std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>, std::__unordered_map_hasher<std::pair<const void *, unsigned long>, std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>, std::hash<md::SectionKey>, std::equal_to<std::pair<const void *, unsigned long>>>, std::__unordered_map_equal<std::pair<const void *, unsigned long>, std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>, std::equal_to<std::pair<const void *, unsigned long>>, std::hash<md::SectionKey>>, std::allocator<std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<std::pair<const void *, unsigned long>, std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>, std::hash<md::SectionKey>, std::equal_to<std::pair<const void *, unsigned long>>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<std::pair<const void *, unsigned long>, std::__hash_value_type<std::pair<const void *, unsigned long>, std::vector<md::Edge>>, std::equal_to<std::pair<const void *, unsigned long>>, std::hash<md::SectionKey>>> { float __value_; } __p3_; } __table_; } _venueWalls; unsigned long long _buildingId; float _maximumSectionLength; struct shared_ptr<ggl::Texture2D> { struct Texture2D *__ptr_; struct __shared_weak_count *__cntrl_; } _wallTexture; } @property (readonly, nonatomic) int layer; @property (readonly, nonatomic) unsigned long long buildingId; @property (readonly, nonatomic) float maximumSectionLength; @property (readonly, nonatomic) void *wallTexture; @property (readonly, nonatomic) const void *venueWallMeshes; @property (readonly, nonatomic) const void *venueWallEndMeshes; @property (readonly, nonatomic) const void *venueWallHorizontalStrokeMeshes; @property (readonly, nonatomic) const void *venueWallVerticalStrokeMeshes; - (void)didFinishAddingData; - (id)initWithStyleQuery:(void *)a0 tileZoom:(float)a1 layer:(int)a2 buildingId:(unsigned long long)a3 contentScale:(float)a4 storage:(struct shared_ptr<md::MeshSetStorage> { struct MeshSetStorage *x0; struct __shared_weak_count *x1; })a5; - (void)willAddDataWithAccessor:(struct ResourceAccessor { void /* function */ **x0; } *)a0; - (id).cxx_construct; - (void)updateTextures:(unsigned char)a0 textureManager:(void *)a1; - (void)addWallStrokesForSection:(const void *)a0 edges:(const void *)a1 attributes:(const void *)a2 styles:(void *)a3 cullingMask:(unsigned int)a4 accessor:(struct ResourceAccessor { void /* function */ **x0; } *)a5; - (struct StrokeBufferSizing { unsigned long long x0; unsigned long long x1; unsigned long long x2; unsigned long long x3; })bufferSizingForStrokesOnSection:(const void *)a0 styles:(const void *)a1 edges:(const void *)a2; - (const void *)generateEdgeListForPolygonSection:(const void *)a0 key:(const void *)a1; - (void)prepareToGenerateWallStrokesForSection:(const void *)a0 styles:(const void *)a1 edges:(const void *)a2; - (id)initWithStyleQuery:(void *)a0 tileZoom:(float)a1 layer:(int)a2 buildingId:(unsigned long long)a3 contentScale:(float)a4; - (void).cxx_destruct; - (void)prepareToStrokeSection:(const void *)a0 key:(const void *)a1 styles:(void *)a2 paddedCount:(unsigned int)a3; - (void)addWallsForSection:(const void *)a0 edges:(const void *)a1 attributes:(const void *)a2 styles:(void *)a3 cullingMask:(unsigned int)a4 accessor:(struct ResourceAccessor { void /* function */ **x0; } *)a5; - (unsigned long long)verticalStrokeCountForSection:(const void *)a0 styles:(const void *)a1 edges:(const void *)a2; - (void)prepareToGenerateWallsForSection:(const void *)a0 styles:(void *)a1 edges:(const void *)a2; - (void)addStrokeForSection:(const void *)a0 paddedCount:(unsigned int)a1 key:(struct pair<const void *, unsigned long> { void *x0; unsigned long long x1; })a2 attributes:(const void *)a3 styles:(void *)a4 cullingMask:(unsigned int)a5 accessor:(struct ResourceAccessor { void /* function */ **x0; } *)a6; @end