7#ifndef CartoTypeRouter_h__
8#define CartoTypeRouter_h__
16static const uint32_t KArcAccessMask = 0x7FF00000;
18static const uint32_t KArcWrongWayFlag = 0x00100000;
20static const uint32_t KArcBicycleAccessFlag = 0x00200000;
22static const uint32_t KArcMotorCycleAccessFlag = 0x00400000;
24static const uint32_t KArcCarAccessFlag = 0x00800000;
26static const uint32_t KArcHighOccupancyAccessFlag = 0x01000000;
28static const uint32_t KArcLightGoodsAccessFlag = 0x02000000;
30static const uint32_t KArcHeavyGoodsAccessFlag = 0x04000000;
32static const uint32_t KArcBusAccessFlag = 0x08000000;
34static const uint32_t KArcTaxiAccessFlag = 0x10000000;
36static const uint32_t KArcPedestrianAccessFlag = 0x20000000;
38static const uint32_t KArcEmergencyAccessFlag = 0x40000000;
40static const uint32_t KArcOtherAccessFlag = 0x80000000;
42static const uint32_t KArcBicycleAccessOnly = KArcAccessMask & ~(KArcWrongWayFlag | KArcBicycleAccessFlag);
44static const uint32_t KArcAllMotorVehicles = KArcAccessMask & ~(KArcWrongWayFlag | KArcPedestrianAccessFlag | KArcBicycleAccessFlag);
46static const uint32_t KArcNoVehicularAccess = KArcAccessMask & ~(KArcWrongWayFlag | KArcPedestrianAccessFlag);
48static const uint32_t KArcAllVehicles = 0xFFE00000;
50static const uint32_t KArcMotorway = 0;
51static const uint32_t KArcMotorwayLink = 1;
52static const uint32_t KArcTrunkRoad = 2;
53static const uint32_t KArcTrunkRoadLink = 3;
54static const uint32_t KArcPrimaryRoad = 4;
55static const uint32_t KArcPrimaryRoadLink = 5;
56static const uint32_t KArcSecondaryRoad = 6;
57static const uint32_t KArcSecondaryRoadLink = 7;
58static const uint32_t KArcTertiaryRoad = 8;
59static const uint32_t KArcUnclassifiedRoad = 9;
60static const uint32_t KArcResidentialRoad = 10;
61static const uint32_t KArcTrack = 11;
62static const uint32_t KArcServiceRoad = 12;
63static const uint32_t KArcPedestrianRoad = 13;
64static const uint32_t KArcVehicularFerry = 14;
65static const uint32_t KArcPassengerFerry = 15;
66static const uint32_t KArcLivingStreet = 16;
67static const uint32_t KArcCycleway = 17;
68static const uint32_t KArcPath = 18;
69static const uint32_t KArcFootway = 19;
70static const uint32_t KArcBridleway = 20;
71static const uint32_t KArcSteps = 21;
72static const uint32_t KArcUnknownRoadType = 22;
73static const uint32_t KArcUnpavedRoad = 23;
74static const uint32_t KArcOtherRoadType0 = 24;
75static const uint32_t KArcOtherRoadType1 = 25;
76static const uint32_t KArcOtherRoadType2 = 26;
77static const uint32_t KArcOtherRoadType3 = 27;
78static const uint32_t KArcOtherRoadType4 = 28;
79static const uint32_t KArcOtherRoadType5 = 29;
80static const uint32_t KArcOtherRoadType6 = 30;
81static const uint32_t KArcOtherRoadType7 = 31;
82static const uint32_t KArcRoadTypeCount = 32;
85static const uint32_t KArcGradientUp0Index = 0;
86static const uint32_t KArcGradientUp1Index = 1;
87static const uint32_t KArcGradientUp2Index = 2;
88static const uint32_t KArcGradientUp3Index = 3;
89static const uint32_t KArcGradientDown0Index = 4;
90static const uint32_t KArcGradientDown1Index = 5;
91static const uint32_t KArcGradientDown2Index = 6;
92static const uint32_t KArcGradientDown3Index = 7;
93static const uint32_t KArcGradientCount = 8;
96static const uint32_t KMaxRoutesDisplayed = 16;
123 @property (nonatomic, strong) NSString*
name;
156 -(double)speed:(
unsigned int)aIndex;
158 -(void)setSpeed:(
unsigned int)aIndex to:(
double)aValue;
164 -(double)bonus:(
unsigned int)aIndex;
166 -(void)setBonus:(
unsigned int)aIndex to:(
double)aValue;
174 -(uint32_t)restrictionOverride:(
unsigned int)aIndex;
176 -(void)setRestrictionOverride:(
unsigned int)aIndex to:(uint32_t)aValue;
224 -(double)gradientSpeed:(
unsigned int)aIndex;
226 -(void)setGradientSpeed:(
unsigned int)aIndex to:(
double)aValue;
229 -(double)gradientBonus:(
unsigned int)aIndex;
231 -(void)setGradientBonus:(
unsigned int)aIndex to:(
double)aValue;
408 OtherRoadType4 = 0xF00,
534 @property (nonatomic)
double time;
538 @property (nonatomic, strong) NSString*
fromRef;
542 @property (nonatomic, strong) NSString*
toName;
544 @property (nonatomic, strong) NSString*
toRef;
561 @property (nonatomic)
double maxSpeed;
563 @property (nonatomic, strong) NSString* name;
565 @property (nonatomic, strong) NSString* ref;
571 @property (nonatomic)
double headingInDegrees;
605 @property (nonatomic)
double heading;
607 @property (nonatomic)
bool headingKnown;
629 -(
void*)routeCoordSet;
649static const uint32_t KTimeValid = 1;
651static const uint32_t KPositionValid = 2;
653static const uint32_t KSpeedValid = 4;
655static const uint32_t KCourseValid = 8;
657static const uint32_t KHeightValid = 16;
707static const uint32_t KFollowFlagLocation = 1;
709static const uint32_t KFollowFlagHeading = 2;
711static const uint32_t KFollowFlagZoom = 4;
757 -(id)initWithRouteSegmentObject:(
void*)aRouteSegmentObject;
789 -(int)pointCount:(
int)aContourIndex;
799 -(id)initWithRouteObject:(
void*)aRouteObject;
835 -(int)pointCount:(
int)aContourIndex;
867 RoadOrientationForwards,
868 RoadOrientationBackwards,
913 @property (nonatomic)
int minimumFixDistance;
915 @property (nonatomic)
int routeDistanceTolerance;
917 @property (nonatomic)
int routeTimeTolerance;
924 @property (nonatomic)
bool autoReRoute;
929 @property (nonatomic)
bool navigationEnabled;
931 -(void*)getNavigatorParam;
960 @property (nonatomic, readonly)
int fromCount;
962 @property (nonatomic, readonly)
int toCount;
964 -(int)
time:(
int)aFromIndex to:(
int)aToIndex;
966 -(int)
distance:(
int)aFromIndex to:(
int)aToIndex;
968 -(id)initWithMatrix:(
void*)aMatrix;
CartoTypeCoordType
Definition: CartoTypeBase.h:216
CartoTypeRouteProfileType
Definition: CartoTypeRouter.h:100
@ WalkingProfile
Definition: CartoTypeRouter.h:104
@ HikingProfile
Definition: CartoTypeRouter.h:108
@ CarProfile
Definition: CartoTypeRouter.h:102
@ BicycleProfile
Definition: CartoTypeRouter.h:106
CartoTypeRoundaboutState
Definition: CartoTypeRouter.h:306
@ RoundaboutStateExit
Definition: CartoTypeRouter.h:314
@ RoundaboutStateEnter
Definition: CartoTypeRouter.h:310
@ RoundaboutStateNone
Definition: CartoTypeRouter.h:308
@ RoundaboutStateContinue
Definition: CartoTypeRouter.h:312
CartoTypeTurnType
Definition: CartoTypeRouter.h:271
@ TurnTypeBearRight
Definition: CartoTypeRouter.h:283
@ TurnTypeAhead
Definition: CartoTypeRouter.h:278
@ TurnTypeRight
Definition: CartoTypeRouter.h:285
@ TurnTypeSharpRight
Definition: CartoTypeRouter.h:287
@ TurnTypeNone
Definition: CartoTypeRouter.h:273
@ TurnTypeBearLeft
Definition: CartoTypeRouter.h:298
@ TurnTypeLeft
Definition: CartoTypeRouter.h:293
@ TurnTypeSharpLeft
Definition: CartoTypeRouter.h:291
@ TurnTypeAround
Definition: CartoTypeRouter.h:289
CartoTypeRouteAccess
Definition: CartoTypeRouter.h:943
@ RouteAccessNoRoad
Definition: CartoTypeRouter.h:954
@ RouteAccessUnknown
Definition: CartoTypeRouter.h:945
@ RouteAccessIsolated
Definition: CartoTypeRouter.h:952
@ RouteAccessAccessible
Definition: CartoTypeRouter.h:947
CartoTypeRoadOrientation
Definition: CartoTypeRouter.h:865
CartoTypeNavigationState
Definition: CartoTypeRouter.h:684
@ NoNavigationState
Definition: CartoTypeRouter.h:686
@ ReRouteNeededNavigationState
Definition: CartoTypeRouter.h:697
@ OffRouteNavigationState
Definition: CartoTypeRouter.h:692
@ ReRouteDoneNavigationState
Definition: CartoTypeRouter.h:699
@ TurnRoundNavigationState
Definition: CartoTypeRouter.h:701
@ ArrivalNavigationState
Definition: CartoTypeRouter.h:703
@ TurnNavigationState
Definition: CartoTypeRouter.h:690
@ NoPositionNavigationState
Definition: CartoTypeRouter.h:688
CartoTypeRouterType
Definition: CartoTypeRouter.h:245
@ RouterTypeDefault
Definition: CartoTypeRouter.h:247
@ RouterTypeStandardContractionHierarchy
Definition: CartoTypeRouter.h:256
@ RouterTypeTECH
Definition: CartoTypeRouter.h:258
@ RouterTypeTurnExpandedAStar
Definition: CartoTypeRouter.h:251
@ RouterTypeStandardAStar
Definition: CartoTypeRouter.h:249
CartoTypeLocationRefType
Definition: CartoTypeRouter.h:874
@ LocationRefPolygon
Definition: CartoTypeRouter.h:888
@ LocationRefGeoCoordinate
Definition: CartoTypeRouter.h:878
@ LocationRefPointWithAccessPoint
Definition: CartoTypeRouter.h:882
@ LocationRefRectangle
Definition: CartoTypeRouter.h:886
@ LocationRefClosedLine
Definition: CartoTypeRouter.h:890
@ LocationRefCircle
Definition: CartoTypeRouter.h:884
@ LocationRefLine
Definition: CartoTypeRouter.h:876
@ LocationRefPointAlongLine
Definition: CartoTypeRouter.h:880
CartoTypeSideOfRoad
Definition: CartoTypeRouter.h:856
CartoTypeRoadType
Definition: CartoTypeRouter.h:319
@ BicycleRoadAccessFlag
Definition: CartoTypeRouter.h:452
@ SecondaryRoadType
Definition: CartoTypeRouter.h:371
@ BywayRoadType
Definition: CartoTypeRouter.h:377
@ HeavyGoodsRoadAccessFlag
Definition: CartoTypeRouter.h:467
@ MajorRoadTypeMask
Definition: CartoTypeRouter.h:327
@ FootPathRoadType
Definition: CartoTypeRouter.h:401
@ RoadRoutingMask
Definition: CartoTypeRouter.h:321
@ RestrictionRoadTypeFlag
Definition: CartoTypeRouter.h:426
@ GoodsRoadAccessFlag
Definition: CartoTypeRouter.h:464
@ PrimaryUnlimitedAccessRoadType
Definition: CartoTypeRouter.h:368
@ TunnelRoadTypeFlag
Definition: CartoTypeRouter.h:341
@ LinkRoadTypeFlag
Definition: CartoTypeRouter.h:353
@ PassengerFerryRoadType
Definition: CartoTypeRouter.h:389
@ BusRoadAccessFlag
Definition: CartoTypeRouter.h:470
@ TollRoadTypeFlag
Definition: CartoTypeRouter.h:417
@ EmergencyRoadAccessFlag
Definition: CartoTypeRouter.h:485
@ PathRoadType
Definition: CartoTypeRouter.h:392
@ ForestryRoadAccessFlag
Definition: CartoTypeRouter.h:482
@ RampRoadTypeFlag
Definition: CartoTypeRouter.h:350
@ ServiceRoadType
Definition: CartoTypeRouter.h:383
@ MotorCycleRoadAccessFlag
Definition: CartoTypeRouter.h:455
@ FirstOverRoadLevel
Definition: CartoTypeRouter.h:435
@ RoadAccessMask
Definition: CartoTypeRouter.h:449
@ PrimaryLimitedAccessRoadType
Definition: CartoTypeRouter.h:365
@ OtherRoadType0
Definition: CartoTypeRouter.h:404
@ SecondUnderRoadLevel
Definition: CartoTypeRouter.h:441
@ CyclePathRoadType
Definition: CartoTypeRouter.h:398
@ BridgeRoadTypeFlag
Definition: CartoTypeRouter.h:344
@ HighOccupancyRoadAccessFlag
Definition: CartoTypeRouter.h:461
@ LowerGradeRoadTypeFlag
Definition: CartoTypeRouter.h:359
@ AccessRampType
Definition: CartoTypeRouter.h:380
@ OneWayBackwardRoadTypeFlag
Definition: CartoTypeRouter.h:432
@ RoadTypeMask
Definition: CartoTypeRouter.h:324
@ FirstUnderRoadLevel
Definition: CartoTypeRouter.h:438
@ UnknownMajorRoadType
Definition: CartoTypeRouter.h:362
@ MinorRoadType
Definition: CartoTypeRouter.h:374
@ DisabledRoadAccessFlag
Definition: CartoTypeRouter.h:494
@ PedestrianRoadAccessFlag
Definition: CartoTypeRouter.h:476
@ MotorCarRoadAccessFlag
Definition: CartoTypeRouter.h:458
@ HazardousRoadAccessFlag
Definition: CartoTypeRouter.h:488
@ RoadLevelMask
Definition: CartoTypeRouter.h:338
@ AgriculturalRoadAccessFlag
Definition: CartoTypeRouter.h:479
@ RoundaboutRoadTypeFlag
Definition: CartoTypeRouter.h:420
@ WheelChairRoadAccessFlag
Definition: CartoTypeRouter.h:491
@ RoadLevelShift
Definition: CartoTypeRouter.h:347
@ VehicularFerryRoadType
Definition: CartoTypeRouter.h:386
@ TaxiRoadAccessFlag
Definition: CartoTypeRouter.h:473
@ OneWayForwardRoadTypeFlag
Definition: CartoTypeRouter.h:429
@ StairwayRoadType
Definition: CartoTypeRouter.h:395
CartoTypeFollowMode
Definition: CartoTypeRouter.h:715
@ FollowModeLocationHeadingZoom
Definition: CartoTypeRouter.h:725
@ FollowModeLocationZoom
Definition: CartoTypeRouter.h:723
@ FollowModeLocation
Definition: CartoTypeRouter.h:719
@ FollowModeNone
Definition: CartoTypeRouter.h:717
@ FollowModeLocationHeading
Definition: CartoTypeRouter.h:721
Definition: CartoTypeBase.h:540
Definition: CartoTypeRouter.h:578
double locationAccuracyInMeters
Definition: CartoTypeRouter.h:585
double headingAccuracyInDegrees
Definition: CartoTypeRouter.h:591
double maxRoadDistanceInMeters
Definition: CartoTypeRouter.h:597
Definition: CartoTypeRouter.h:912
Definition: CartoTypeRouter.h:555
Definition: CartoTypeRouter.h:634
CartoTypeCoordType coordType
Definition: CartoTypeRouter.h:637
Definition: CartoTypeRouter.h:620
Definition: CartoTypeRouter.h:797
double getTollRoadDistance()
int getRouteSegmentCount()
CartoTypeGeometry * getGeometry()
Definition: CartoTypeRouter.h:602
Definition: CartoTypeRouter.h:116
int crossTrafficTurnTime
Definition: CartoTypeRouter.h:197
double tripleAxleLoad
Definition: CartoTypeRouter.h:141
bool shortestByTime
Definition: CartoTypeRouter.h:208
double doubleAxleLoad
Definition: CartoTypeRouter.h:138
double length
Definition: CartoTypeRouter.h:150
NSString * name
Definition: CartoTypeRouter.h:123
bool hazMat
Definition: CartoTypeRouter.h:153
double width
Definition: CartoTypeRouter.h:147
uint32_t vehicleType
Definition: CartoTypeRouter.h:129
int trafficLightTime
Definition: CartoTypeRouter.h:202
int turnTime
Definition: CartoTypeRouter.h:182
double tollPenalty
Definition: CartoTypeRouter.h:216
uint32_t gradientFlags
Definition: CartoTypeRouter.h:237
bool shortest
Definition: CartoTypeRouter.h:205
int uTurnTime
Definition: CartoTypeRouter.h:188
double height
Definition: CartoTypeRouter.h:144
double weight
Definition: CartoTypeRouter.h:132
double axleLoad
Definition: CartoTypeRouter.h:135
Definition: CartoTypeRouter.h:755
CartoTypeTurnType getTurnType()
CartoTypeRoundaboutState getRoundaboutState()
CartoTypeRoadType getRoadType()
Definition: CartoTypeRouter.h:959
Definition: CartoTypeRouter.h:521
NSString * fromName
Definition: CartoTypeRouter.h:536
CartoTypeTurnType turnType
Definition: CartoTypeRouter.h:522
CartoTypeRoadType toRoadType
Definition: CartoTypeRouter.h:546
CartoTypeRoundaboutState roundaboutState
Definition: CartoTypeRouter.h:526
CartoTypeRoadType fromRoadType
Definition: CartoTypeRouter.h:540
double turnAngle
Definition: CartoTypeRouter.h:528
double distance
Definition: CartoTypeRouter.h:532
CartoTypePoint position
Definition: CartoTypeRouter.h:548
int exitNumber
Definition: CartoTypeRouter.h:530
NSString * toRef
Definition: CartoTypeRouter.h:544
NSString * toName
Definition: CartoTypeRouter.h:542
bool isContinue
Definition: CartoTypeRouter.h:524
NSString * fromRef
Definition: CartoTypeRouter.h:538
double time
Definition: CartoTypeRouter.h:534
NSString * instructions
Definition: CartoTypeRouter.h:550
Definition: CartoTypeBase.h:391
Definition: CartoTypeRouter.h:895
__unsafe_unretained CartoTypeGeometry * geometry
Definition: CartoTypeRouter.h:901
CartoTypeLocationRefType type
Definition: CartoTypeRouter.h:897
CartoTypeSideOfRoad sideOfRoad
Definition: CartoTypeRouter.h:905
CartoTypeRoadOrientation roadOrientation
Definition: CartoTypeRouter.h:907
double radiusInMeters
Definition: CartoTypeRouter.h:903
__unsafe_unretained NSString * identifier
Definition: CartoTypeRouter.h:899
Definition: CartoTypeRouter.h:661
double longitude
Definition: CartoTypeRouter.h:671
uint32_t validity
Definition: CartoTypeRouter.h:663
double course
Definition: CartoTypeRouter.h:677
double speed
Definition: CartoTypeRouter.h:675
double time
Definition: CartoTypeRouter.h:669
double height
Definition: CartoTypeRouter.h:679
double latitude
Definition: CartoTypeRouter.h:673
Definition: CartoTypeRouter.h:730
CartoTypePoint iNearestPoint
Definition: CartoTypeRouter.h:739
int iSegmentIndex
Definition: CartoTypeRouter.h:732
double iDistanceAlongSegment
Definition: CartoTypeRouter.h:745
int iLineIndex
Definition: CartoTypeRouter.h:737
double iTimeAlongRoute
Definition: CartoTypeRouter.h:747
double iTimeAlongSegment
Definition: CartoTypeRouter.h:749
double iDistanceToRoute
Definition: CartoTypeRouter.h:741
double iDistanceAlongRoute
Definition: CartoTypeRouter.h:743
Definition: CartoTypeBase.h:124
Definition: CartoTypeBase.h:146
Definition: CartoTypeRouter.h:847
double speed
Definition: CartoTypeRouter.h:851
uint32_t vehicleTypes
Definition: CartoTypeRouter.h:849