luxlabs header browser preview


@class NSMutableArray, NSMutableDictionary;

@interface VKLabelNavRoadGraph : NSObject {
    struct unordered_set<std::shared_ptr<md::LabelTile>, std::hash<std::shared_ptr<md::LabelTile>>, std::equal_to<std::shared_ptr<md::LabelTile>>, geo::StdAllocator<std::shared_ptr<md::LabelTile>, mdm::Allocator>> { struct __hash_table<std::shared_ptr<md::LabelTile>, std::hash<std::shared_ptr<md::LabelTile>>, std::equal_to<std::shared_ptr<md::LabelTile>>, geo::StdAllocator<std::shared_ptr<md::LabelTile>, mdm::Allocator>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> *[], std::__bucket_list_deallocator<geo::StdAllocator<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> *, mdm::Allocator>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> **, std::__bucket_list_deallocator<geo::StdAllocator<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> *, mdm::Allocator>>> { void **__value_; struct __bucket_list_deallocator<geo::StdAllocator<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> *, mdm::Allocator>> { struct __compressed_pair<unsigned long, geo::StdAllocator<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> *, mdm::Allocator>> { unsigned long long __value_; struct StdAllocator<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> *, mdm::Allocator> { struct Allocator *_allocator; } __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *>, geo::StdAllocator<std::__hash_node<std::shared_ptr<md::LabelTile>, void *>, mdm::Allocator>> { struct __hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> { void *__next_; } __value_; struct StdAllocator<std::__hash_node<std::shared_ptr<md::LabelTile>, void *>, mdm::Allocator> { struct Allocator *_allocator; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::hash<std::shared_ptr<md::LabelTile>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::equal_to<std::shared_ptr<md::LabelTile>>> { float __value_; } __p3_; } __table_; } _tiles;
    struct unordered_set<std::shared_ptr<md::LabelTile>, std::hash<std::shared_ptr<md::LabelTile>>, std::equal_to<std::shared_ptr<md::LabelTile>>, geo::StdAllocator<std::shared_ptr<md::LabelTile>, mdm::Allocator>> { struct __hash_table<std::shared_ptr<md::LabelTile>, std::hash<std::shared_ptr<md::LabelTile>>, std::equal_to<std::shared_ptr<md::LabelTile>>, geo::StdAllocator<std::shared_ptr<md::LabelTile>, mdm::Allocator>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> *[], std::__bucket_list_deallocator<geo::StdAllocator<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> *, mdm::Allocator>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> **, std::__bucket_list_deallocator<geo::StdAllocator<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> *, mdm::Allocator>>> { void **__value_; struct __bucket_list_deallocator<geo::StdAllocator<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> *, mdm::Allocator>> { struct __compressed_pair<unsigned long, geo::StdAllocator<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> *, mdm::Allocator>> { unsigned long long __value_; struct StdAllocator<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> *, mdm::Allocator> { struct Allocator *_allocator; } __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *>, geo::StdAllocator<std::__hash_node<std::shared_ptr<md::LabelTile>, void *>, mdm::Allocator>> { struct __hash_node_base<std::__hash_node<std::shared_ptr<md::LabelTile>, void *> *> { void *__next_; } __value_; struct StdAllocator<std::__hash_node<std::shared_ptr<md::LabelTile>, void *>, mdm::Allocator> { struct Allocator *_allocator; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::hash<std::shared_ptr<md::LabelTile>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::equal_to<std::shared_ptr<md::LabelTile>>> { float __value_; } __p3_; } __table_; } _duplicateTiles;
    NSMutableDictionary *_tileDatasByIndex;
    NSMutableArray *_intersections;
    BOOL _oppositeCarriagewayJunctionsValid;
    NSMutableArray *_oppositeCarriagewayJunctions;
    struct Matrix<float, 2, 1> { float _e[2]; } _unitHeading;
    BOOL _offRouteJunctionsValid;
    struct Box<double, 2> { struct Matrix<double, 2, 1> { double _e[2]; } _minimum; struct Matrix<double, 2, 1> { double _e[2]; } _maximum; } _offRouteJunctionSelectRect;
    NSMutableArray *_offRouteJunctions;
    struct PolylineCoordinate { unsigned int index; float offset; } _routeUserOffset;
    BOOL _routeFeatureMapValid;
    struct unordered_map<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>, std::hash<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>>, std::equal_to<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>>, geo::StdAllocator<std::pair<const std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, mdm::Allocator>> { struct __hash_table<std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, std::__unordered_map_hasher<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, std::hash<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>>, std::equal_to<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>>>, std::__unordered_map_equal<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, std::equal_to<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>>, std::hash<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>>>, geo::StdAllocator<std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, mdm::Allocator>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, void *> *> *[], std::__bucket_list_deallocator<geo::StdAllocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, void *> *> *, mdm::Allocator>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, void *> *> **, std::__bucket_list_deallocator<geo::StdAllocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, void *> *> *, mdm::Allocator>>> { void **__value_; struct __bucket_list_deallocator<geo::StdAllocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, void *> *> *, mdm::Allocator>> { struct __compressed_pair<unsigned long, geo::StdAllocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, void *> *> *, mdm::Allocator>> { unsigned long long __value_; struct StdAllocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, void *> *> *, mdm::Allocator> { struct Allocator *_allocator; } __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, void *> *>, geo::StdAllocator<std::__hash_node<std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, void *>, mdm::Allocator>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, void *> *> { void *__next_; } __value_; struct StdAllocator<std::__hash_node<std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, void *>, mdm::Allocator> { struct Allocator *_allocator; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, std::hash<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>>, std::equal_to<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::__hash_value_type<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>, std::shared_ptr<NavRoadFeature>>, std::equal_to<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>>, std::hash<std::basic_string<char, std::char_traits<char>, geo::StdAllocator<char, mdm::Allocator>>>>> { float __value_; } __p3_; } __table_; } _routeFeatureMap;
    BOOL _simplifiedRouteValid;
    struct vector<md::LabelPoint, geo::StdAllocator<md::LabelPoint, mdm::Allocator>> { struct LabelPoint *__begin_; struct LabelPoint *__end_; struct __compressed_pair<md::LabelPoint *, geo::StdAllocator<md::LabelPoint, mdm::Allocator>> { struct LabelPoint *__value_; struct StdAllocator<md::LabelPoint, mdm::Allocator> { struct Allocator *_allocator; } __value_; } __end_cap_; } _simplifiedRoutePoints;
    unsigned long long _currentRoadStartSimplifiedPointIndex;
    BOOL _screenRouteValid;
    struct vector<RouteSegment, geo::StdAllocator<RouteSegment, mdm::Allocator>> { struct RouteSegment *__begin_; struct RouteSegment *__end_; struct __compressed_pair<RouteSegment *, geo::StdAllocator<RouteSegment, mdm::Allocator>> { struct RouteSegment *__value_; struct StdAllocator<RouteSegment, mdm::Allocator> { struct Allocator *_allocator; } __value_; } __end_cap_; } _screenRouteSegments;
    unsigned long long _firstPOIAligningRouteSegment;
}

@property (retain, nonatomic) NSMutableArray *junctions;

- (void)reset;
- (id)initWithJunctions:(id)a0;
- (void)_findOffRouteJunctions;
- (id)_findInterTileJunctionForJunction:(id)a0;
- (void)addRouteRoadEdge:(const struct VKLabelNavRouteRoadEdge { struct PolylineCoordinate { unsigned int x0; float x1; } x0; struct PolylineCoordinate { unsigned int x0; float x1; } x1; struct GeoCodecsRoadEdge { struct GeoCodecsMultiSectionFeature *x0; unsigned long long x1; unsigned long long x2; unsigned long long x3; unsigned long long x4; struct GeoCodecsConnectivityJunction *x5; struct GeoCodecsConnectivityJunction *x6; } x2; unsigned long long x3; unsigned long long x4; } *)a0 atA:(BOOL)a1 isRouteRefineJunction:(BOOL)a2 tile:(const void *)a3 junctionList:(id)a4;
- (id).cxx_construct;
- (id)_nextIntersectionForRoad:(id)a0;
- (unsigned long long)countReadyJunctionLists;
- (void)debugDraw:(id)a0 overlayConsole:(void *)a1 navContext:(struct NavContext { void /* function */ **x0; struct LabelManager *x1; struct MapNavLabeler *x2; struct LabelLayoutContext *x3; struct LabelNavLayoutContext *x4; } *)a2;
- (id)oppositeCarriagewayJunctions;
- (void)_updateSimplifiedRoute;
- (id)_junctionForRoadEdge:(const struct GeoCodecsRoadEdge { struct GeoCodecsMultiSectionFeature *x0; unsigned long long x1; unsigned long long x2; unsigned long long x3; unsigned long long x4; struct GeoCodecsConnectivityJunction *x5; struct GeoCodecsConnectivityJunction *x6; } *)a0 atA:(BOOL)a1 routeOffset:(struct PolylineCoordinate { unsigned int x0; float x1; })a2 tile:(const void *)a3;
- (id)overpassJunctionForJunction:(id)a0;
- (id)junctionListForDepth:(unsigned long long)a0;
- (void)routeJunctionsHaveChanged;
- (void).cxx_destruct;
- (BOOL)collideRouteWithLabel:(id)a0 routeCrossProduct:(float *)a1 context:(struct NavContext { void /* function */ **x0; struct LabelManager *x1; struct MapNavLabeler *x2; struct LabelLayoutContext *x3; struct LabelNavLayoutContext *x4; } *)a2;
- (struct Matrix<float, 2, 1> { float x0[2]; })unitHeading;
- (BOOL)_checkIfDualCarriageWayConnectorRoad:(id)a0 fromJunction:(id)a1 toJunction:(id)a2 checkShields:(BOOL)a3;
- (void)_updateIntersectionsForDepth:(unsigned long long)a0;
- (void)_transformRouteToScreenWithContext:(struct NavContext { void /* function */ **x0; struct LabelManager *x1; struct MapNavLabeler *x2; struct LabelLayoutContext *x3; struct LabelNavLayoutContext *x4; } *)a0;
- (BOOL)isPriorRouteCollinearWithRoad:(id)a0 distance:(float)a1;
- (unsigned char)computeRoutePositionForPOIAtPixel:(const void *)a0 currentPosition:(unsigned char)a1 context:(struct NavContext { void /* function */ **x0; struct LabelManager *x1; struct MapNavLabeler *x2; struct LabelLayoutContext *x3; struct LabelNavLayoutContext *x4; } *)a2;
- (void)evaluateDualCarriagewayForJunction:(id)a0 outputJunctionList:(id)a1;
- (id)offRouteGraphJunctionsWithNavContext:(struct NavContext { void /* function */ **x0; struct LabelManager *x1; struct MapNavLabeler *x2; struct LabelLayoutContext *x3; struct LabelNavLayoutContext *x4; } *)a0 maxJunctions:(unsigned long long)a1 isOnRoute:(BOOL)a2;
- (BOOL)prepareOppositeCarriagewayJunctions;
- (id)junctionForRoad:(id)a0 nearJunction:(BOOL)a1 crossTileEdge:(BOOL)a2;
- (void)startingLabelLayoutWithContext:(struct NavContext { void /* function */ **x0; struct LabelManager *x1; struct MapNavLabeler *x2; struct LabelLayoutContext *x3; struct LabelNavLayoutContext *x4; } *)a0 routeUserOffset:(struct PolylineCoordinate { unsigned int x0; float x1; })a1;
- (id)offRouteJunctionList;
- (void)setTiles:(const void *)a0;
- (id)nextRoadSegmentForRoad:(id)a0;

@end