CartoType iOS API 9.4-2-ga84cea34e
for development in Swift and Objective C for iOS and Mac OS
CartoTypeBase.h
Go to the documentation of this file.
1/*
2CartoTypeBase.h
3Copyright 2011-2025 CartoType Ltd.
4See www.cartotype.com for more information.
5*/
6
7#ifndef CartoTypeBase_h__
8#define CartoTypeBase_h__
9
10#import <Foundation/Foundation.h>
11#import <CoreGraphics/CGImage.h>
12#import <CoreGraphics/CGGeometry.h>
13#import <UIKit/UIImage.h>
14#import <CartoType/CartoTypeResultCode.h>
15
22typedef NS_OPTIONS(NSUInteger,CtFontStyle)
23 {
25 CtFontStyleBold = 1,
27 CtFontStyleItalic = 2,
29 CtFontStyleSerif = 4,
31 CtFontStyleCursive = 8,
33 CtFontStyleFantasy = 16,
35 CtFontStyleMonospace = 32
36 };
38typedef CtFontStyle CartoTypeFontStyle;
39
41typedef NS_OPTIONS(uint32_t,CtStringMatch)
42 {
44 CtStringMatchPrefixFlag = 1,
46 CtStringMatchIgnoreSymbolsFlag = 2,
48 CtStringMatchFoldAccentsFlag = 4,
50 CtStringMatchFuzzyFlag = 8,
52 CtStringMatchFoldCaseFlag = 16,
54 CtStringMatchIgnoreWhitespaceFlag = 32,
55
57 CtStringMatchExact = 0,
59 CtStringMatchFoldCase = CtStringMatchFoldCaseFlag,
61 CtStringMatchPrefix = CtStringMatchPrefixFlag,
63 CtStringMatchIgnoreNonAlphanumerics = CtStringMatchIgnoreSymbolsFlag | CtStringMatchIgnoreWhitespaceFlag,
65 CtStringMatchLoose = CtStringMatchIgnoreNonAlphanumerics | CtStringMatchFoldAccentsFlag | CtStringMatchFoldCaseFlag,
67 CtStringMatchFuzzy = CtStringMatchIgnoreNonAlphanumerics | CtStringMatchFoldAccentsFlag | CtStringMatchFuzzyFlag | CtStringMatchFoldCaseFlag
68 };
70typedef CtStringMatch CartoTypeStringMatch;
71
73typedef NS_ENUM(NSInteger,CtFileType)
74 {
93 };
96
98typedef NS_ENUM(NSInteger,CtMapObjectType)
99 {
102
105
108
111
114
117 };
120
122typedef NS_ENUM(NSInteger,CtPointType)
123 {
130 };
133
135typedef NS_ENUM(NSInteger,CtAlign)
136 {
147 };
150
152typedef struct
153 {
155 int32_t x;
157 int32_t y;
160 } CtPathPoint;
163
165typedef struct
166 {
168 double x;
170 double y;
176
178typedef struct
179 {
181 double x;
183 double y;
184 } CtPoint;
187
189typedef struct
190 {
192 double minX;
194 double minY;
196 double maxX;
198 double maxY;
199 } CtRect;
202
204@interface CtHeightProfilePoint: NSObject
206 @property (nonatomic) CtPoint positionInDegrees;
208 @property (nonatomic) double heightInMeters;
210 @property (nonatomic) double timeInSeconds;
212 @property (nonatomic) double distanceInMeters;
213@end
215@compatibility_alias CartoTypeHeightProfilePoint CtHeightProfilePoint;
216
218typedef struct
219 {
227
229typedef struct
230 {
238
240@class CtGeometry; // forward declaration
241
243@interface CtGeometryAndResult: NSObject
245 @property (nonatomic, strong) CtGeometry* geometry;
247 @property (nonatomic) CtResult result;
248@end
250@compatibility_alias CartoTypeGeometryAndResult CtGeometryAndResult;
251
253typedef struct
254 {
256 uint64_t objectId;
262
264typedef struct
265 {
267 double area;
269 double length;
275
277typedef NS_ENUM(NSInteger,CtCoordType)
278 {
289 };
292
294typedef uint32_t CtColor NS_TYPED_ENUM;
296typedef CtColor CartoTypeColor;
297
299static CtColor const CtColorBlack = 0xFF000000;
301static CtColor const CtColorDarkGray = 0xFF555555;
303static CtColor const CtColorDarkRed = 0xFF000080;
305static CtColor const CtColorDarkGreen = 0xFF008000;
307static CtColor const CtColorDarkYellow = 0xFF00808;
309static CtColor const CtColorDarkBlue = 0xFF800000;
311static CtColor const CtColorDarkMagenta = 0xFF800080;
313static CtColor const CtColorDarkCyan = 0xFF808000;
315static CtColor const CtColorRed = 0xFF0000FF;
317static CtColor const CtColorGreen = 0xFF00FF00;
319static CtColor const CtColorYellow = 0xFF00FFFF;
321static CtColor const CtColorBlue = 0xFFFF0000;
323static CtColor const CtColorMagenta = 0xFFFF00FF;
325static CtColor const CtColorCyan = 0xFFFFFF00;
327static CtColor const CtColorGray = 0xFFAAAAAA;
329static CtColor const CtColorWhite = 0xFFFFFFFF;
331static CtColor const CtColorTransparentBlack = 0x00000000;
332
337@interface CtBlendStyle: NSObject
342 @property (nonatomic) NSString* styles;
344 @property (nonatomic) CtColor mainColor;
346 @property (nonatomic) CtColor borderColor;
348 @property (nonatomic) CtColor textColor;
350 @property (nonatomic) CtColor textGlowColor;
352 @property (nonatomic) CtColor iconColor;
353
355 -(id)initWithBlendStyle:(void*)aBlendStyle;
357 -(const void*)blendStyle;
358@end
360@compatibility_alias CartoTypeBlendStyle CtBlendStyle;
361
363@interface CtAddress: NSObject
365 @property (nonatomic, strong) NSString* building;
367 @property (nonatomic, strong) NSString* feature;
369 @property (nonatomic, strong) NSString* street;
371 @property (nonatomic, strong) NSString* subLocality;
373 @property (nonatomic, strong) NSString* locality;
375 @property (nonatomic, strong) NSString* island;
377 @property (nonatomic, strong) NSString* subAdminArea;
379 @property (nonatomic, strong) NSString* adminArea;
381 @property (nonatomic, strong) NSString* country;
383 @property (nonatomic, strong) NSString* postCode;
389 -(NSString*)ToString:(bool) aFull;
390@end
392@compatibility_alias CartoTypeAddress CtAddress;
393
395@protocol CtPath <NSObject>
397 -(int)contourCount;
399 -(int)pointCount:(int)aContourIndex;
401 -(CtPathPoint)point:(int)aContourIndex pointIndex:(int)aPointIndex;
402@end
403
406@end
407
409@interface CtMatch: NSObject
411 @property (nonatomic) bool found;
413 @property (nonatomic, strong) NSString* key;
415 @property (nonatomic, strong) NSString* value;
417 @property (nonatomic) size_t start;
419 @property (nonatomic) size_t end;
420@end
422@compatibility_alias CartoTypeMatch CtMatch;
423
425#define MakeFeatureTypeCode(A,B,C) ((((A)-'a'+1) << 10) | (((B)-'a'+1) << 5) | ((C)-'a'+1))
426
434typedef NS_ENUM(NSUInteger,CtFeatureType)
435 {
436 CtFeatureTypeMotorway = 0,
437 CtFeatureTypeMotorwayLink = 1,
438 CtFeatureTypeTrunkRoad = 2,
439 CtFeatureTypeTrunkLink = 3,
440 CtFeatureTypePrimaryRoad = 4,
441 CtFeatureTypePrimaryLink = 5,
442 CtFeatureTypeSecondaryRoad = 6,
443 CtFeatureTypeSecondaryLink = 7,
444 CtFeatureTypeTertiaryRoad = 8,
445 CtFeatureTypeUnclassifiedRoad = 9,
446 CtFeatureTypeResidentialRoad = 10,
447 CtFeatureTypeTrack = 11,
448 CtFeatureTypeServiceRoad = 12,
449 CtFeatureTypePedestrianRoad = 13,
450 CtFeatureTypeVehicularFerry = 14,
451 CtFeatureTypePassengerFerry = 15,
452 CtFeatureTypeLivingStreet = 16,
453 CtFeatureTypeCycleway = 17,
454 CtFeatureTypePath = 18,
455 CtFeatureTypeFootway = 19,
456 CtFeatureTypeBridleway = 20,
457 CtFeatureTypeSteps = 21,
458 CtFeatureTypeOtherRoad = 22,
459 CtFeatureTypeUnpavedRoad = 23,
460 CtFeatureTypeRailway = 24,
461 CtFeatureTypeLightRail = 25,
462 CtFeatureTypeSubway = 26,
463 CtFeatureTypeAerialWay = 27,
464 CtFeatureTypeSkiDownhill = 28,
465 CtFeatureTypeSkiNordic = 29,
466 CtFeatureTypeWaterway = 30,
467 CtFeatureTypeUnknownRoute = 31,
468
469 CtFeatureTypeUnknownNonRoute = 32,
470
471 /*
472 Three-letter type codes. Keep these in alphabetic order of type letters to avoid duplicates.
473 No routable types should appear among the three-letter codes; all routable objects should be
474 given one of the types 0...31.
475
476 The lowest possible three-letter code, aaa, has the value 1057 = 1024 + 32 + 1.
477 The highest code, zzz, has the value 27482 = (1024 * 26) + (32 * 26) + 26.
478 */
479 CtFeatureTypeAdminArea1 = MakeFeatureTypeCode('a','a','a'),
480 CtFeatureTypeAdminArea2 = MakeFeatureTypeCode('a','a','b'),
481 CtFeatureTypeAdminArea3 = MakeFeatureTypeCode('a','a','c'),
482 CtFeatureTypeAdminArea4 = MakeFeatureTypeCode('a','a','d'),
483 CtFeatureTypeAdminArea5 = MakeFeatureTypeCode('a','a','e'),
484 CtFeatureTypeAdminArea6 = MakeFeatureTypeCode('a','a','f'),
485 CtFeatureTypeAdminArea7 = MakeFeatureTypeCode('a','a','g'),
486 CtFeatureTypeAdminArea8 = MakeFeatureTypeCode('a','a','h'),
487 CtFeatureTypeAdminArea9 = MakeFeatureTypeCode('a','a','i'),
488 CtFeatureTypeAdminArea10 = MakeFeatureTypeCode('a','a','j'),
489 CtFeatureTypeAddress = MakeFeatureTypeCode('a','d','d'),
490 CtFeatureTypeAerodrome = MakeFeatureTypeCode('a','e','r'),
491 CtFeatureTypeAirport = MakeFeatureTypeCode('a','i','r'),
492 CtFeatureTypeAirportGate = MakeFeatureTypeCode('a','g','t'),
493 CtFeatureTypeAirportHoldingPosition = MakeFeatureTypeCode('a','h','p'),
494 CtFeatureTypeAllotments = MakeFeatureTypeCode('a','l','l'),
495 CtFeatureTypeAlpineHut = MakeFeatureTypeCode('a','l','p'),
496 CtFeatureTypeAmbulanceStation = MakeFeatureTypeCode('a','m','b'),
497 CtFeatureTypeApron = MakeFeatureTypeCode('a','p','r'),
498 CtFeatureTypeAerialWayPylon = MakeFeatureTypeCode('a','p','y'),
499 CtFeatureTypeArtwork = MakeFeatureTypeCode('a','r','t'),
500 CtFeatureTypeAerialWayStation = MakeFeatureTypeCode('a','s','t'),
501 CtFeatureTypeAirTerminal = MakeFeatureTypeCode('a','t','e'),
502 CtFeatureTypeAtm = MakeFeatureTypeCode('a','t','m'),
503 CtFeatureTypeAttraction = MakeFeatureTypeCode('a','t','t'),
504 CtFeatureTypeBar = MakeFeatureTypeCode('b','a','r'),
505 CtFeatureTypeBasin = MakeFeatureTypeCode('b','a','s'),
506 CtFeatureTypeBay = MakeFeatureTypeCode('b','a','y'),
507 CtFeatureTypeBeach = MakeFeatureTypeCode('b','e','a'),
508 CtFeatureTypeBeacon = MakeFeatureTypeCode('b','e','c'),
509 CtFeatureTypeBedAndBreakfast = MakeFeatureTypeCode('b','e','d'),
510 CtFeatureTypeBench = MakeFeatureTypeCode('b','e','n'),
511 CtFeatureTypeBank = MakeFeatureTypeCode('b','n','k'),
512 CtFeatureTypeBoatyard = MakeFeatureTypeCode('b','o','a'),
513 CtFeatureTypeBorough = MakeFeatureTypeCode('b','o','r'),
514 CtFeatureTypeBoundary = MakeFeatureTypeCode('b','o','u'),
515 CtFeatureTypeBicycleParking = MakeFeatureTypeCode('b','p','k'),
516 CtFeatureTypeBicycleRental = MakeFeatureTypeCode('b','r','e'),
517 CtFeatureTypeBareRock = MakeFeatureTypeCode('b','r','c'),
518 CtFeatureTypeBarracks = MakeFeatureTypeCode('b','r','k'),
519 CtFeatureTypeBrownField = MakeFeatureTypeCode('b','r','o'),
520 CtFeatureTypeBusStop = MakeFeatureTypeCode('b','s','p'),
521 CtFeatureTypeBusStation = MakeFeatureTypeCode('b','s','t'),
522 CtFeatureTypeBufferStop = MakeFeatureTypeCode('b','u','f'),
523 CtFeatureTypeBuilding = MakeFeatureTypeCode('b','u','i'),
524 CtFeatureTypeBunker = MakeFeatureTypeCode('b','u','n'),
525 CtFeatureTypeCabin = MakeFeatureTypeCode('c','a','b'),
526 CtFeatureTypeCafe = MakeFeatureTypeCode('c','a','f'),
527 CtFeatureTypeCampSite = MakeFeatureTypeCode('c','a','m'),
528 CtFeatureTypeCanal = MakeFeatureTypeCode('c','a','n'),
529 CtFeatureTypeCaveEntrance = MakeFeatureTypeCode('c','a','v'),
530 CtFeatureTypeCableCar = MakeFeatureTypeCode('c','c','r'),
531 CtFeatureTypeCableDistributionCabinet = MakeFeatureTypeCode('c','d','c'),
532 CtFeatureTypeCemetery = MakeFeatureTypeCode('c','e','m'),
533 CtFeatureTypeChairLift = MakeFeatureTypeCode('c','h','a'),
534 CtFeatureTypeCheckPoint = MakeFeatureTypeCode('c','h','e'),
535 CtFeatureTypeChalet = MakeFeatureTypeCode('c','h','l'),
536 CtFeatureTypeCivilBoundary = MakeFeatureTypeCode('c','i','b'),
537 CtFeatureTypeCinema = MakeFeatureTypeCode('c','i','n'),
538 CtFeatureTypeCity = MakeFeatureTypeCode('c','i','t'),
539 CtFeatureTypeCliff = MakeFeatureTypeCode('c','l','f'),
540 CtFeatureTypeClinic = MakeFeatureTypeCode('c','l','i'),
541 CtFeatureTypeCommercial = MakeFeatureTypeCode('c','m','r'),
542 CtFeatureTypeCoastline = MakeFeatureTypeCode('c','o','a'),
543 CtFeatureTypeCollege = MakeFeatureTypeCode('c','o','l'),
544 CtFeatureTypeCommon = MakeFeatureTypeCode('c','o','m'),
545 CtFeatureTypeConstruction = MakeFeatureTypeCode('c','n','s'),
546 CtFeatureTypeConservation = MakeFeatureTypeCode('c','n','v'),
547 CtFeatureTypeContinent = MakeFeatureTypeCode('c','o','n'),
548 CtFeatureTypeCounty = MakeFeatureTypeCode('c','o','u'),
549 CtFeatureTypeCarPark = MakeFeatureTypeCode('c','p','k'),
550 CtFeatureTypeCarRental = MakeFeatureTypeCode('c','r','e'),
551 CtFeatureTypeCrossing = MakeFeatureTypeCode('c','r','o'),
552 CtFeatureTypeCountry = MakeFeatureTypeCode('c','r','y'),
553 CtFeatureTypeCarSharing = MakeFeatureTypeCode('c','s','h'),
554 CtFeatureTypeCutLine = MakeFeatureTypeCode('c','u','t'),
555 CtFeatureTypeCarWash = MakeFeatureTypeCode('c','w','a'),
556 CtFeatureTypeCaravanSite = MakeFeatureTypeCode('c','v','n'),
557 CtFeatureTypeCyclingRoute = MakeFeatureTypeCode('c','y','r'),
558 CtFeatureTypeDam = MakeFeatureTypeCode('d','a','m'),
559 CtFeatureTypeDangerArea = MakeFeatureTypeCode('d','a','n'),
560 CtFeatureTypeDentist = MakeFeatureTypeCode('d','e','n'),
561 CtFeatureTypeDisused = MakeFeatureTypeCode('d','i','s'),
562 CtFeatureTypeDitch = MakeFeatureTypeCode('d','i','t'),
563 CtFeatureTypeDock = MakeFeatureTypeCode('d','o','c'),
564 CtFeatureTypeDogPark = MakeFeatureTypeCode('d','o','g'),
565 CtFeatureTypeDrain = MakeFeatureTypeCode('d','r','a'),
566 CtFeatureTypeDragLift = MakeFeatureTypeCode('d','r','g'),
567 CtFeatureTypeDoctors = MakeFeatureTypeCode('d','r','s'),
568 CtFeatureTypeDistrict = MakeFeatureTypeCode('d','s','t'),
569 CtFeatureTypeElectricVehicleCharging = MakeFeatureTypeCode('e','v','c'),
570 CtFeatureTypeFarm = MakeFeatureTypeCode('f','a','r'),
571 CtFeatureTypeFarmYard = MakeFeatureTypeCode('f','a','y'),
572 CtFeatureTypeFell = MakeFeatureTypeCode('f','e','l'),
573 CtFeatureTypeFerryTerminal = MakeFeatureTypeCode('f','e','t'),
574 CtFeatureTypeFastFood = MakeFeatureTypeCode('f','f','d'),
575 CtFeatureTypeFireExtinguisher = MakeFeatureTypeCode('f','i','e'),
576 CtFeatureTypeFireFlapper = MakeFeatureTypeCode('f','i','f'),
577 CtFeatureTypeFireHose = MakeFeatureTypeCode('f','i','h'),
578 CtFeatureTypeFireStation = MakeFeatureTypeCode('f','i','s'),
579 CtFeatureTypeFitnessStation = MakeFeatureTypeCode('f','i','t'),
580 CtFeatureTypeFireHydrant = MakeFeatureTypeCode('f','i','y'),
581 CtFeatureTypeForestry = MakeFeatureTypeCode('f','o','r'),
582 CtFeatureTypeFishing = MakeFeatureTypeCode('f','s','h'),
583 CtFeatureTypeFuel = MakeFeatureTypeCode('f','u','e'),
584 CtFeatureTypeFunicular = MakeFeatureTypeCode('f','u','n'),
585 CtFeatureTypeGarages = MakeFeatureTypeCode('g','a','r'),
586 CtFeatureTypeGate = MakeFeatureTypeCode('g','a','t'),
587 CtFeatureTypeGarden = MakeFeatureTypeCode('g','d','n'),
588 CtFeatureTypeGenerator = MakeFeatureTypeCode('g','e','n'),
589 CtFeatureTypeGreenHouse = MakeFeatureTypeCode('g','h','o'),
590 CtFeatureTypeGlacier = MakeFeatureTypeCode('g','l','a'),
591 CtFeatureTypeGolfCourse = MakeFeatureTypeCode('g','o','l'),
592 CtFeatureTypeGondola = MakeFeatureTypeCode('g','o','n'),
593 CtFeatureTypeGoodsAerialWay = MakeFeatureTypeCode('g','o','o'),
594 CtFeatureTypeGrass = MakeFeatureTypeCode('g','r','a'),
595 CtFeatureTypeGreenField = MakeFeatureTypeCode('g','r','e'),
596 CtFeatureTypeGritBin = MakeFeatureTypeCode('g','r','b'),
597 CtFeatureTypeGraveYard = MakeFeatureTypeCode('g','r','y'),
598 CtFeatureTypeGuestHouse = MakeFeatureTypeCode('g','u','e'),
599 CtFeatureTypeHalt = MakeFeatureTypeCode('h','a','l'),
600 CtFeatureTypeHamlet = MakeFeatureTypeCode('h','a','m'),
601 CtFeatureTypeHangar = MakeFeatureTypeCode('h','a','n'),
602 CtFeatureTypeHeath = MakeFeatureTypeCode('h','e','a'),
603 CtFeatureTypeHelipad = MakeFeatureTypeCode('h','e','l'),
604 CtFeatureTypeRailwayHalt = MakeFeatureTypeCode('h','l','t'),
605 CtFeatureTypeHikingRoute = MakeFeatureTypeCode('h','i','k'),
606 CtFeatureTypeHorseRiding = MakeFeatureTypeCode('h','o','r'),
607 CtFeatureTypeHospital = MakeFeatureTypeCode('h','o','s'),
608 CtFeatureTypeHotel = MakeFeatureTypeCode('h','o','t'),
609 CtFeatureTypeHorseRidingRoute = MakeFeatureTypeCode('h','r','r'),
610 CtFeatureTypeHostel = MakeFeatureTypeCode('h','s','t'),
611 CtFeatureTypeIceRink = MakeFeatureTypeCode('i','c','e'),
612 CtFeatureTypeIndustrial = MakeFeatureTypeCode('i','n','d'),
613 CtFeatureTypeInformation = MakeFeatureTypeCode('i','n','f'),
614 CtFeatureTypeIsland = MakeFeatureTypeCode('i','s','l'),
615 CtFeatureTypeIsolatedDwelling = MakeFeatureTypeCode('i','s','o'),
616 CtFeatureTypeJunction = MakeFeatureTypeCode('j','c','t'),
617 CtFeatureTypeKindergarten = MakeFeatureTypeCode('k','i','n'),
618 CtFeatureTypeLandFill = MakeFeatureTypeCode('l','a','n'),
619 CtFeatureTypeLand = MakeFeatureTypeCode('l','n','d'),
620 CtFeatureTypeLevelCrossing = MakeFeatureTypeCode('l','e','v'),
621 CtFeatureTypeLibrary = MakeFeatureTypeCode('l','i','b'),
622 CtFeatureTypeLocality = MakeFeatureTypeCode('l','o','c'),
623 CtFeatureTypeLockGate = MakeFeatureTypeCode('l','o','k'),
624 CtFeatureTypeMaritimeBoundary = MakeFeatureTypeCode('m','a','b'),
625 CtFeatureTypeMall = MakeFeatureTypeCode('m','a','l'),
626 CtFeatureTypeMarsh = MakeFeatureTypeCode('m','a','r'),
627 CtFeatureTypeMeadow = MakeFeatureTypeCode('m','e','a'),
628 CtFeatureTypeMilitary = MakeFeatureTypeCode('m','i','l'),
629 CtFeatureTypeMarina = MakeFeatureTypeCode('m','n','a'),
630 CtFeatureTypeMotel = MakeFeatureTypeCode('m','o','t'),
631 CtFeatureTypeMinorPowerLine = MakeFeatureTypeCode('m','p','l'),
632 CtFeatureTypeMiniatureGolf = MakeFeatureTypeCode('m','r','g'),
633 CtFeatureTypeMiniatureRailway = MakeFeatureTypeCode('m','r','y'),
634 CtFeatureTypeMud = MakeFeatureTypeCode('m','u','d'),
635 CtFeatureTypeMunicipality = MakeFeatureTypeCode('m','u','n'),
636 CtFeatureTypeMuseum = MakeFeatureTypeCode('m','u','s'),
637 CtFeatureTypeNatureReserve = MakeFeatureTypeCode('n','a','t'),
638 CtFeatureTypeNationalPark = MakeFeatureTypeCode('n','a','p'),
639 CtFeatureTypeNavalBase = MakeFeatureTypeCode('n','a','v'),
640 CtFeatureTypeNeighborhood = MakeFeatureTypeCode('n','e','i'),
641 CtFeatureTypeNursingHome = MakeFeatureTypeCode('n','u','r'),
642 CtFeatureTypeOcean = MakeFeatureTypeCode('o','c','e'),
643 CtFeatureTypeOrchard = MakeFeatureTypeCode('o','r','c'),
644 CtFeatureTypePrecisionApproachPathIndicator = MakeFeatureTypeCode('p','a','p'),
645 CtFeatureTypePark = MakeFeatureTypeCode('p','a','r'),
646 CtFeatureTypePublicBuilding = MakeFeatureTypeCode('p','b','u'),
647 CtFeatureTypePostBox = MakeFeatureTypeCode('p','b','x'),
648 CtFeatureTypePostCode = MakeFeatureTypeCode('p','c','o'),
649 CtFeatureTypePicnicTable = MakeFeatureTypeCode('p','c','t'),
650 CtFeatureTypePeak = MakeFeatureTypeCode('p','e','a'),
651 CtFeatureTypePharmacy = MakeFeatureTypeCode('p','h','a'),
652 CtFeatureTypePhone = MakeFeatureTypeCode('p','h','o'),
653 CtFeatureTypePicnicSite = MakeFeatureTypeCode('p','i','c'),
654 CtFeatureTypePier = MakeFeatureTypeCode('p','i','e'),
655 CtFeatureTypePipeline = MakeFeatureTypeCode('p','i','p'),
656 CtFeatureTypeParkingEntrance = MakeFeatureTypeCode('p','k','e'),
657 CtFeatureTypeParking = MakeFeatureTypeCode('p','k','g'),
658 CtFeatureTypeParkingSpace = MakeFeatureTypeCode('p','k','s'),
659 CtFeatureTypePlantNursery = MakeFeatureTypeCode('p','l','a'),
660 CtFeatureTypePlatform = MakeFeatureTypeCode('p','l','f'),
661 CtFeatureTypePlaceOfWorship = MakeFeatureTypeCode('p','l','w'),
662 CtFeatureTypePlayground = MakeFeatureTypeCode('p','l','y'),
663 CtFeatureTypePostOffice = MakeFeatureTypeCode('p','o','f'),
664 CtFeatureTypePolice = MakeFeatureTypeCode('p','o','l'),
665 CtFeatureTypePosition = MakeFeatureTypeCode('p','o','s'),
666 CtFeatureTypeProtectedArea = MakeFeatureTypeCode('p','r','a'),
667 CtFeatureTypePowerSubStation = MakeFeatureTypeCode('p','s','s'),
668 CtFeatureTypePub = MakeFeatureTypeCode('p','u','b'),
669 CtFeatureTypePowerLine = MakeFeatureTypeCode('p','w','l'),
670 CtFeatureTypePowerStation = MakeFeatureTypeCode('p','w','s'),
671 CtFeatureTypeQuarry = MakeFeatureTypeCode('q','a','r'),
672 CtFeatureTypeQuay = MakeFeatureTypeCode('q','a','y'),
673 CtFeatureTypeQuarter = MakeFeatureTypeCode('q','r','t'),
674 CtFeatureTypeRange = MakeFeatureTypeCode('r','a','n'),
675 CtFeatureTypeRapids = MakeFeatureTypeCode('r','a','p'),
676 CtFeatureTypeRecycling = MakeFeatureTypeCode('r','c','y'),
677 CtFeatureTypeRecreationGround = MakeFeatureTypeCode('r','e','c'),
678 CtFeatureTypeReef = MakeFeatureTypeCode('r','e','e'),
679 CtFeatureTypeRegion = MakeFeatureTypeCode('r','e','g'),
680 CtFeatureTypeRetail = MakeFeatureTypeCode('r','e','t'),
681 CtFeatureTypeRidge = MakeFeatureTypeCode('r','i','j'),
682 CtFeatureTypeRiver = MakeFeatureTypeCode('r','i','v'),
683 CtFeatureTypeRock = MakeFeatureTypeCode('r','o','c'),
684 CtFeatureTypeRoundHouse = MakeFeatureTypeCode('r','o','u'),
685 CtFeatureTypeResidentialArea = MakeFeatureTypeCode('r','s','d'),
686 CtFeatureTypeRestaurant = MakeFeatureTypeCode('r','s','t'),
687 CtFeatureTypeReservoir = MakeFeatureTypeCode('r','s','v'),
688 CtFeatureTypeRunway = MakeFeatureTypeCode('r','u','n'),
689 CtFeatureTypeRoute = MakeFeatureTypeCode('r','u','t'),
690 CtFeatureTypeRiverBank = MakeFeatureTypeCode('r','v','b'),
691 CtFeatureTypeSaltPond = MakeFeatureTypeCode('s','a','l'),
692 CtFeatureTypeSand = MakeFeatureTypeCode('s','a','n'),
693 CtFeatureTypeSauna = MakeFeatureTypeCode('s','a','u'),
694 CtFeatureTypeSchool = MakeFeatureTypeCode('s','c','h'),
695 CtFeatureTypeScree = MakeFeatureTypeCode('s','c','r'),
696 CtFeatureTypeScrub = MakeFeatureTypeCode('s','c','b'),
697 CtFeatureTypeSea = MakeFeatureTypeCode('s','e','a'),
698 CtFeatureTypeStateEmergencyServiceStation = MakeFeatureTypeCode('s','e','s'),
699 CtFeatureTypeShop = MakeFeatureTypeCode('s','h','o'),
700 CtFeatureTypeSkiRoute = MakeFeatureTypeCode('s','k','r'),
701 CtFeatureTypeSlipway = MakeFeatureTypeCode('s','l','i'),
702 CtFeatureTypeSportsCenter = MakeFeatureTypeCode('s','p','o'),
703 CtFeatureTypeSportsPitch = MakeFeatureTypeCode('s','p','p'),
704 CtFeatureTypeSpring = MakeFeatureTypeCode('s','p','r'),
705 CtFeatureTypeSportsTrack = MakeFeatureTypeCode('s','p','t'),
706 CtFeatureTypeState = MakeFeatureTypeCode('s','t','a'),
707 CtFeatureTypeStadium = MakeFeatureTypeCode('s','t','m'),
708 CtFeatureTypeRailwayStation = MakeFeatureTypeCode('s','t','n'),
709 CtFeatureTypeStation = MakeFeatureTypeCode('s','t','n'), // deliberate duplicate
710 CtFeatureTypeStone = MakeFeatureTypeCode('s','t','o'),
711 CtFeatureTypeStopPosition = MakeFeatureTypeCode('s','t','p'),
712 CtFeatureTypeStream = MakeFeatureTypeCode('s','t','r'),
713 CtFeatureTypeStrait = MakeFeatureTypeCode('s','t','t'),
714 CtFeatureTypeSuburb = MakeFeatureTypeCode('s','u','b'),
715 CtFeatureTypeSupermarket = MakeFeatureTypeCode('s','u','p'),
716 CtFeatureTypeSurveyPoint = MakeFeatureTypeCode('s','u','r'),
717 CtFeatureTypeSubwayEntrance = MakeFeatureTypeCode('s','w','e'),
718 CtFeatureTypeSwimmingPool = MakeFeatureTypeCode('s','w','i'),
719 CtFeatureTypeTank = MakeFeatureTypeCode('t','a','n'),
720 CtFeatureTypeTaxi = MakeFeatureTypeCode('t','a','x'),
721 CtFeatureTypeTheatre = MakeFeatureTypeCode('t','h','e'),
722 CtFeatureTypeThemePark = MakeFeatureTypeCode('t','h','p'),
723 CtFeatureTypeToilet = MakeFeatureTypeCode('t','o','i'),
724 CtFeatureTypeTown = MakeFeatureTypeCode('t','o','w'),
725 CtFeatureTypeTurningCircle = MakeFeatureTypeCode('t','c','i'),
726 CtFeatureTypeTurningPoint = MakeFeatureTypeCode('t','p','t'),
727 CtFeatureTypeTram = MakeFeatureTypeCode('t','r','a'),
728 CtFeatureTypeTree = MakeFeatureTypeCode('t','r','e'),
729 CtFeatureTypeTrafficSignals = MakeFeatureTypeCode('t','r','f'),
730 CtFeatureTypeTrackPoint = MakeFeatureTypeCode('t','r','p'),
731 CtFeatureTypeTreeRow = MakeFeatureTypeCode('t','r','r'),
732 CtFeatureTypeTramStop = MakeFeatureTypeCode('t','r','s'),
733 CtFeatureTypeTurnTable = MakeFeatureTypeCode('t','u','r'),
734 CtFeatureTypeTower = MakeFeatureTypeCode('t','w','r'),
735 CtFeatureTypeTaxiway = MakeFeatureTypeCode('t','w','y'),
736 CtFeatureTypeUniversity = MakeFeatureTypeCode('u','n','i'),
737 CtFeatureTypeVisualApproachSlopeIndicator = MakeFeatureTypeCode('v','a','s'),
738 CtFeatureTypeVillageGreen = MakeFeatureTypeCode('v','i','g'),
739 CtFeatureTypeVillage = MakeFeatureTypeCode('v','i','l'),
740 CtFeatureTypeVineyard = MakeFeatureTypeCode('v','i','n'),
741 CtFeatureTypeViewPoint = MakeFeatureTypeCode('v','i','w'),
742 CtFeatureTypeVolcano = MakeFeatureTypeCode('v','o','l'),
743 CtFeatureTypeWaterfall = MakeFeatureTypeCode('w','a','f'),
744 CtFeatureTypeWaterPark = MakeFeatureTypeCode('w','a','p'),
745 CtFeatureTypeWater = MakeFeatureTypeCode('w','a','t'),
746 CtFeatureTypeWeir = MakeFeatureTypeCode('w','e','r'),
747 CtFeatureTypeWetland = MakeFeatureTypeCode('w','e','t'),
748 CtFeatureTypeWildernessHut = MakeFeatureTypeCode('w','i','l'),
749 CtFeatureTypeWindsock = MakeFeatureTypeCode('w','i','s'),
750 CtFeatureTypeWalkingRoute = MakeFeatureTypeCode('w','l','k'),
751 CtFeatureTypeWood = MakeFeatureTypeCode('w','o','o'),
752 CtFeatureTypeWorks = MakeFeatureTypeCode('w','o','r'),
753 CtFeatureTypeWaypoint = MakeFeatureTypeCode('w','p','t'),
754 CtFeatureTypeWaterTower = MakeFeatureTypeCode('w','t','t'),
755 CtFeatureTypeWaterWell = MakeFeatureTypeCode('w','t','w'),
756 CtFeatureTypeZoo = MakeFeatureTypeCode('z','o','o'),
757
758 // legacy types for backward compatibility
759 CtFeatureTypeLegacyBridleway = MakeFeatureTypeCode('b','r','i'),
760 CtFeatureTypeLegacyCycleway = MakeFeatureTypeCode('c','y','c'),
761 CtFeatureTypeLegacyFootway = MakeFeatureTypeCode('f','o','o'),
762 CtFeatureTypeLegacyLightRail = MakeFeatureTypeCode('l','i','r'),
763 CtFeatureTypeLegacyMonorail = MakeFeatureTypeCode('m','o','n'),
764 CtFeatureTypeLegacyNarrowGauge = MakeFeatureTypeCode('n','a','r'),
765 CtFeatureTypeLegacyPreservedRailway = MakeFeatureTypeCode('p','r','y'),
766 CtFeatureTypeLegacyRailway = MakeFeatureTypeCode('r','l','y'),
767 CtFeatureTypeLegacySteps = MakeFeatureTypeCode('s','t','e'),
768 CtFeatureTypeLegacySubway = MakeFeatureTypeCode('s','w','y'),
769 CtFeatureTypeLegacyTram = MakeFeatureTypeCode('t','r','a'),
770
771 CtFeatureTypeInvalid = INT16_MAX
772 };
775
777typedef NS_ENUM(NSUInteger,CtFeatureDiscriminator)
778 {
787 };
790
808@interface CtFeatureInfo: NSObject
810 -(id)init;
812 -(id)initWithType:(CtFeatureType)aFeatureType;
818 -(id)initWithTypeAndSubType:(CtFeatureType)aFeatureType subType:(int)aSubType;
823 -(id)initWithSubType:(int)aSubType;
827 @property (nonatomic) bool route;
829 @property (nonatomic) bool tunnel;
831 @property (nonatomic) bool bridge;
833 @property (nonatomic) int level;
835 @property (nonatomic) CtFeatureType type;
837 @property (nonatomic) bool oneWay;
839 @property (nonatomic) bool oneWayForward;
841 @property (nonatomic) bool oneWayBackward;
843 @property (nonatomic) bool driveOnLeft;
845 @property (nonatomic) bool driveOnRight;
849 @property (nonatomic) bool roundabout;
851 @property (nonatomic) bool toll;
853 @property (nonatomic) bool wrongWay;
855 @property (nonatomic) int speedLimit;
857 @property (nonatomic) int gradient;
859 -(void)setVehicleAccess:(bool)aValue;
861 @property (nonatomic) bool pedestrianAccess;
863 @property (nonatomic) bool cycleAccess;
865 @property (nonatomic) bool motorVehicleAccess;
867 @property (nonatomic) bool emergencyVehicleAccess;
869 @property (nonatomic) bool otherAccessRestricted;
871 @property (nonatomic) bool isPrivate;
873 @property (nonatomic) int subType;
875 -(id)initWithRawValue:(uint32_t)aValue;
877 -(uint32_t)rawValue;
878@end
880@compatibility_alias CartoTypeFeatureInfo CtFeatureInfo;
881
883static const uint32_t CtFeatureInfoRouteTypeCount = 32;
885static const uint32_t CtFeatureInfoGradientCount = 8;
887static const uint32_t CtFeatureInfoMaxSubType = 2047;
888
890typedef uint32_t CtRouteAccess NS_TYPED_ENUM;
891
893static CtRouteAccess const CtRouteAccessShift = 26;
895static CtRouteAccess const CtRouteAccessMask = 63U << CtRouteAccessShift;
897static CtRouteAccess const CtRouteAccessWrongWayFlag = 1 << 26;
899static CtRouteAccess const CtRouteAccessPedestrianFlag = 1 << 27;
901static CtRouteAccess const CtRouteAccessCycleFlag = 1 << 28;
903static CtRouteAccess const CtRouteAccessMotorVehicleFlag = 1 << 29;
905static CtRouteAccess const CtRouteAccessEmergencyVehicleFlag = 1 << 30;
907static CtRouteAccess const CtRouteAccessOtherFlag = 1U << 31;
909static CtRouteAccess const CtRouteAccessVehicle = CtRouteAccessCycleFlag | CtRouteAccessMotorVehicleFlag | CtRouteAccessEmergencyVehicleFlag;
911static CtRouteAccess const CtRouteAccessNormal = CtRouteAccessCycleFlag | CtRouteAccessMotorVehicleFlag | CtRouteAccessPedestrianFlag;
912
914@interface CtMapObject: NSObject <CtPath>
916 -(id)initWithMapObject:(void*)aMapObject;
918 -(void)dealloc;
920 @property (nonatomic) CtMapObjectType type;
922 @property (nonatomic) NSString* layerName;
924 @property (nonatomic) NSString* label;
926 -(NSString*)stringAttribute:(NSString*)aAttribName;
928 -(NSMutableDictionary*)stringAttributes;
930 @property (nonatomic) CtFeatureInfo* featureInfo;
936 @property (nonatomic) CtPoint center;
937
939 @property (nonatomic) CtRect bounds;
940
948 @property (nonatomic) CtPointAndResult centerInDegrees;
949
951 @property (nonatomic) CtRectAndResult boundsInDegrees;
952
963 -(CtMatch*)match:(NSString*)aText matchMethod:(CtStringMatch)aMethod attributes:(NSString*)aAttributes phrase:(bool)aPhrase;
965 @property (nonatomic) uint64_t objectId;
967 -(int)contourCount;
969 -(int)pointCount:(int)aContourIndex;
971 -(CtPathPoint)point:(int)aContourIndex pointIndex:(int)aPointIndex;
973 @property (nonatomic) double area;
975 @property (nonatomic) double lengthOrPerimeter;
976
978 -(void*)object;
979@end
981@compatibility_alias CartoTypeMapObject CtMapObject;
982
984@interface CtMapObjectGroup: NSObject
986 -(id)initWithMapObjectGroup:(void*)aMapObjectGroup;
988 @property (nonatomic, strong) NSString* name;
990 @property (nonatomic, strong) NSMutableArray* objectArray;
991@end
993@compatibility_alias CartoTypeMapObjectGroup CtMapObjectGroup;
994
996typedef NS_ENUM(NSInteger,CtPathIntersectionType)
997 {
1011
1013@interface CtPathIntersectionInfo: NSObject
1015 @property (nonatomic) CtPathIntersectionType type;
1020 @property (nonatomic) double distance;
1025 @property (nonatomic) CtPoint nearest1;
1030 @property (nonatomic) CtPoint nearest2;
1031
1033 -(void*)pointer;
1034@end
1036@compatibility_alias CartoTypePathIntersectionInfo CtPathIntersectionInfo;
1037
1039typedef NS_ENUM(NSInteger,CtClipOperation)
1040 {
1052
1054@interface CtGeometry: NSObject
1056 -(id)initWithCoordType:(CtCoordType)aCoordType;
1058 -(id)initWithMapObject:(CtMapObject*)aMapObject;
1060 -(id)initWithGeometryContour:(CtGeometry*)aGeometry contourIndex:(int)aContourIndex;
1062 -(id)initWithRect:(CtRect)aRect coordType:(CtCoordType)aCoordType;
1064 -(void)dealloc;
1068 -(void)appendX:(double)aX andY:(double)aY;
1070 -(void)appendX:(double)aX andY:(double)aY andPointType:(CtPointType)aPointType;
1072 -(void)beginContour;
1074 -(int)contourCount;
1076 -(bool)contourIsOuter:(int)aContourIndex;
1078 -(int)pointCount:(int)aContourIndex;
1080 -(CtPathPointFP)point:(int)aContourIndex pointIndex:(int)aPointIndex;
1082 -(bool)isEmpty;
1084 -(bool)isClosed;
1086 -(void)setClosed:(bool)aClosed;
1088 -(void)reverse;
1090 -(CtResult)convertLinesToGreatCircles:(double)aMaxDistanceInMeters;
1092 -(CtPathIntersectionType)intersectionType:(CtMapObject*)aMapObject;
1097 -(CtPathIntersectionInfo*)intersectionInfo:(CtMapObject*)aMapObject;
1099 -(NSArray<NSNumber*>*)intersectionTypes:(NSArray<CtMapObjectGroup*>*)aMapObjectArray;
1104 -(NSArray<CtPathIntersectionInfo*>*)intersectionInfos:(NSArray<CtMapObjectGroup*>*)aMapObjectArray;
1106 -(bool) intersects:(CtMapObject*)aMapObject;
1108 -(bool) contains:(CtMapObject*)aMapObject;
1110 -(bool) contained:(CtMapObject*)aMapObject;
1119 -(CtGeometry*) clip:(CtClipOperation)aClipOperation mapObject:(CtMapObject*)aMapObject;
1128 -(NSArray<CtGeometry*>*) clip:(CtClipOperation)aClipOperation mapObjects:(NSArray<CtMapObjectGroup*>*)aMapObjectArray;
1136 +(CtGeometry*) envelope:(CtMapObject*)aMapObject offsetInMeters:(double)aOffsetInMeters;
1137
1139 -(id)initWithGeometry:(void*)aGeometry;
1141 -(void*)geometry;
1142@end
1144@compatibility_alias CartoTypeGeometry CtGeometry;
1145
1147@interface CtFindParam: NSObject
1149 -(id)init;
1151 -(id)initWithFeatureType:(CtFeatureType)aFeatureType text:(NSString*)aText location:(CtGeometry*)aLocation;
1152
1154 @property (nonatomic) int maxObjectCount;
1156 @property (nonatomic) CtGeometry* clip;
1158 @property (nonatomic) CtGeometry* location;
1160 @property (nonatomic, strong) NSString* layers;
1165 @property (nonatomic, strong) NSString* attributes;
1170 @property (nonatomic, strong) NSString* text;
1172 @property (nonatomic) CtStringMatch stringMatchMethod;
1177 @property (nonatomic, strong) NSString* condition;
1179 @property (nonatomic) bool merge;
1184 @property (nonatomic) double timeOut;
1185@end
1187@compatibility_alias CartoTypeFindParam CtFindParam;
1188
1190typedef NS_ENUM(NSInteger,CtWritableMapType)
1191 {
1199
1201typedef NS_ENUM(NSInteger,CtNoticeAnchor)
1202 {
1224
1235@interface CtNoticePosition: NSObject
1237 -(id)init:(CtNoticeAnchor)aAnchor;
1239 -(id)init:(CtNoticeAnchor)aAnchor width:(double)aWidth widthUnit:(NSString*)aWidthUnit xInset:(double)aXInset xUnit:(NSString*)aXUnit yInset:(double)aYInset yUnit:(NSString*)aYUnit;
1241 -(void*)position;
1242@end
1244@compatibility_alias CartoTypeNoticePosition CtNoticePosition;
1245
1247@interface CtPositionedBitmap: NSObject
1249 -(id)init:(UIImage*)aImage topLeft:(CGPoint)aTopLeft;
1251 -(void)dealloc;
1253 @property (nonatomic, strong) UIImage* image;
1255 @property (nonatomic) CGPoint topLeft;
1256@end
1258@compatibility_alias CartoTypePositionedBitmap CtPositionedBitmap;
1259
1261@interface CtPerspectiveParam: NSObject
1263 -(CtResult)readFromXml:(NSString*)aText;
1265 -(NSString*)toXml;
1267 @property (nonatomic) CtPoint positionDegrees;
1269 @property (nonatomic) bool autoPosition;
1271 @property (nonatomic) double heightMeters;
1273 @property (nonatomic) double azimuthDegrees;
1275 @property (nonatomic) bool autoAzimuth;
1277 @property (nonatomic) double declinationDegrees;
1279 @property (nonatomic) double rotationDegrees;
1281 @property (nonatomic) double fieldOfViewDegrees;
1283 -(void*)getPerspectiveParam;
1284@end
1286@compatibility_alias CartoTypePerspectiveParam CtPerspectiveParam;
1287
1289@interface CtViewState: NSObject
1291 -(CtResult)readFromXml:(NSString*)aText;
1293 -(NSString*)toXml;
1295 @property (nonatomic) int widthInPixels;
1297 @property (nonatomic) int heightInPixels;
1299 @property (nonatomic) CtPoint viewCenterDegrees;
1301 @property (nonatomic) double scaleDenominator;
1303 @property (nonatomic) double rotationDegrees;
1305 @property (nonatomic) bool perspective;
1309 -(void)setPerspectiveParam:(CtPerspectiveParam*)aPerspectiveParam;
1311 -(void*)viewState;
1312@end
1314@compatibility_alias CartoTypeViewState CtViewState;
1315
1317typedef NS_ENUM(NSInteger,CtLetterCase)
1318 {
1333
1335typedef uint16_t CtMapTableId NS_TYPED_ENUM;
1336
1338static CtMapTableId const CtMapTableIdGlobal = 0;
1340static CtMapTableId const CtMapTableIdLayer = 1;
1342static CtMapTableId const CtMapTableIdProjection = 4;
1344static CtMapTableId const CtMapTableIdString = 5;
1346static CtMapTableId const CtMapTableIdLowResolutionLayer = 6;
1348static CtMapTableId const CtMapTableIdPalette = 7;
1350static CtMapTableId const CtMapTableIdTextIndex = 8;
1352static CtMapTableId const CtMapTableIdRouteAStar = 10;
1354static CtMapTableId const CtMapTableIdRouteCH = 11;
1356static CtMapTableId const CtMapTableIdRouteExtra = 12;
1358static CtMapTableId const CtMapTableIdRouteTurnExpanded = 13;
1360static CtMapTableId const CtMapTableIdRouteCHStandAlone = 14;
1362static CtMapTableId const CtMapTableIdRouteTECH = 15;
1364static CtMapTableId const CtMapTableIdRouteCHTiled = 16;
1366static CtMapTableId const CtMapTableIdRouteTECHTiled = 17;
1368static CtMapTableId const CtMapTableIdRouteTurnExpandedCompact = 18;
1370static CtMapTableId const CtMapTableIdNone = UINT16_MAX;
1371
1377typedef NS_ENUM(NSInteger,CtPointFormat)
1378 {
1381
1384
1392
1401
1403@interface CtMapMetaData: NSObject
1405 @property (nonatomic) int fileVersionMajor;
1407 @property (nonatomic) int fileVersionMinor;
1409 @property (nonatomic) int CartoTypeVersionMajor;
1411 @property (nonatomic) int CartoTypeVersionMinor;
1413 @property (nonatomic) int CartoTypeBuild;
1415 @property (nonatomic) NSString* dataSetName;
1417 @property (nonatomic) NSString* copyright;
1419 @property (nonatomic) NSString* projectionName;
1421 @property (nonatomic) NSMutableArray<NSString*>* layers;
1423 @property (nonatomic) NSString* projectionParameters;
1425 @property (nonatomic) CtPointFormat pointFormat;
1427 @property (nonatomic) CtRect extentInMapCoords;
1429 @property (nonatomic) CtRect extentInDegrees;
1431 @property (nonatomic) CtMapTableId routeTableType;
1433 @property (nonatomic) bool routeDataHasGradients;
1435 @property (nonatomic) bool largeFile;
1437 @property (nonatomic) bool drivingSideKnown;
1439 @property (nonatomic) bool driveOnLeft;
1440
1442 -(id)initWithMetaData:(void*)aMetaData;
1444 -(const void*)metaData;
1445@end
1447@compatibility_alias CartoTypeMapMetaData CtMapMetaData;
1448
1454@interface CtMapObjectParam: NSObject
1456 -(id)initWithType:(CtMapObjectType)aType andLayer:(NSString*)aLayer andCoordType:(CtCoordType)aCoordType;
1458 -(void)dealloc;
1460 -(void)appendX:(double)aX andY:(double)aY;
1462 -(void)appendX:(double)aX andY:(double)aY andPointType:(CtPointType)aPointType;
1464 -(void)beginContour;
1466 -(void*)geometry;
1467
1469 @property (nonatomic) uint32_t mapHandle;
1471 @property (nonatomic, strong) NSString* layer;
1473 @property (nonatomic) double radius;
1475 @property (nonatomic) double radiusX;
1477 @property (nonatomic) double radiusY;
1479 @property (nonatomic) CtCoordType radiusCoordType;
1481 @property (nonatomic) double rotationDegrees;
1483 @property (nonatomic, strong) CtFeatureInfo* featureInfo;
1485 @property (nonatomic, strong) NSString* stringAttrib;
1487 @property (nonatomic) uint64_t objectId;
1489 @property (nonatomic) bool replace;
1490@end
1492@compatibility_alias CartoTypeMapObjectParam CtMapObjectParam;
1493
1495@interface CtTileParam: NSObject
1511 -(void)addTileSet:(NSString*)aFileNameTemplate tileRange:(CtRect)aTileRange fileZoom:(int)aFileZoom minDisplayZoom:(int)aMinDisplayZoom maxDisplayZoom:(int)aMaxDisplayZoom;
1512
1514 -(const void*)tileParam;
1515@end
1517@compatibility_alias CartoTypeTileParam CtTileParam;
1518
1519
1520#endif
CtColor CartoTypeColor
Definition: CartoTypeBase.h:296
#define MakeFeatureTypeCode(A, B, C)
Definition: CartoTypeBase.h:425
CtFileType CartoTypeFileType
Definition: CartoTypeBase.h:95
CtWritableMapType CartoTypeWritableMapType
Definition: CartoTypeBase.h:1198
CtPathPoint CartoTypePathPoint
Definition: CartoTypeBase.h:162
CtRectAndResult CartoTypeRectAndResult
Definition: CartoTypeBase.h:237
compatibility_alias CartoTypeMapObjectParam CtMapObjectParam
Definition: CartoTypeBase.h:1492
compatibility_alias CartoTypeFindParam CtFindParam
Definition: CartoTypeBase.h:1187
CtCoordType CartoTypeCoordType
Definition: CartoTypeBase.h:291
compatibility_alias CartoTypeGeometryAndResult CtGeometryAndResult
Definition: CartoTypeBase.h:250
CtPathIntersectionType
Definition: CartoTypeBase.h:997
@ CtPathIntersectionTypeContains
Definition: CartoTypeBase.h:1005
@ CtPathIntersectionTypeSeparate
Definition: CartoTypeBase.h:1001
@ CtPathIntersectionTypeIntersects
Definition: CartoTypeBase.h:1003
@ CtPathIntersectionTypeContained
Definition: CartoTypeBase.h:1007
@ CtPathIntersectionTypeUnknown
Definition: CartoTypeBase.h:999
CtRect CartoTypeRect
Definition: CartoTypeBase.h:201
compatibility_alias CartoTypeTileParam CtTileParam
Definition: CartoTypeBase.h:1517
compatibility_alias CartoTypePerspectiveParam CtPerspectiveParam
Definition: CartoTypeBase.h:1286
compatibility_alias CartoTypeAddress CtAddress
Definition: CartoTypeBase.h:392
CtFeatureDiscriminator CartoTypeFeatureDiscriminator
Definition: CartoTypeBase.h:789
CtPathPointFP CartoTypePathPointFP
Definition: CartoTypeBase.h:175
CtStringMatch CartoTypeStringMatch
Definition: CartoTypeBase.h:68
CtPointFormat CartoTypePointFormat
Definition: CartoTypeBase.h:1400
CtAreaLengthAndResult CartoTypeAreaLengthAndResult
Definition: CartoTypeBase.h:274
uint32_t CtColor NS_TYPED_ENUM
Definition: CartoTypeBase.h:294
CtIdAndResult CartoTypeIdAndResult
Definition: CartoTypeBase.h:261
CtCoordType
Definition: CartoTypeBase.h:278
@ CtCoordTypeMapMeter
Definition: CartoTypeBase.h:288
@ CtCoordTypeMap
Definition: CartoTypeBase.h:286
@ CtCoordTypeDegree
Definition: CartoTypeBase.h:280
@ CtCoordTypeScreen
Definition: CartoTypeBase.h:284
@ CtCoordTypeDisplay
Definition: CartoTypeBase.h:282
typedef NS_OPTIONS(NSUInteger, CtFontStyle)
Definition: CartoTypeBase.h:22
compatibility_alias CartoTypePositionedBitmap CtPositionedBitmap
Definition: CartoTypeBase.h:1258
compatibility_alias CartoTypeHeightProfilePoint CtHeightProfilePoint
Definition: CartoTypeBase.h:215
CtPointFormat
Definition: CartoTypeBase.h:1378
@ CtPointFormatUnknown
Definition: CartoTypeBase.h:1380
@ CtPointFormatMeter
Definition: CartoTypeBase.h:1383
@ CtPointFormatScaledDegree
Definition: CartoTypeBase.h:1391
@ CtPointFormatMeter32nds
Definition: CartoTypeBase.h:1397
compatibility_alias CartoTypeMapObject CtMapObject
Definition: CartoTypeBase.h:981
CtClipOperation CartoTypeClipOperation
Definition: CartoTypeBase.h:1051
compatibility_alias CartoTypeMapMetaData CtMapMetaData
Definition: CartoTypeBase.h:1447
CtMapObjectType
Definition: CartoTypeBase.h:99
@ CtMapObjectTypeLine
Definition: CartoTypeBase.h:104
@ CtMapObjectTypeNone
Definition: CartoTypeBase.h:116
@ CtMapObjectTypePolygon
Definition: CartoTypeBase.h:107
@ CtMapObjectTypeArray
Definition: CartoTypeBase.h:110
@ CtMapObjectTypeCount
Definition: CartoTypeBase.h:113
@ CtMapObjectTypePoint
Definition: CartoTypeBase.h:101
CtPointType
Definition: CartoTypeBase.h:123
@ CtPointTypeQuadratic
Definition: CartoTypeBase.h:127
@ CtPointTypeCubic
Definition: CartoTypeBase.h:129
@ CtPointTypeOnCurve
Definition: CartoTypeBase.h:125
CtMapObjectType CartoTypeMapObjectType
Definition: CartoTypeBase.h:119
CtAlign CartoTypeAlign
Definition: CartoTypeBase.h:149
CtFeatureType
Definition: CartoTypeBase.h:435
CtPoint CartoTypePoint
Definition: CartoTypeBase.h:186
CtLetterCase CartoTypeLetterCase
Definition: CartoTypeBase.h:1332
CtAlign
Definition: CartoTypeBase.h:136
@ CtAlignStandard
Definition: CartoTypeBase.h:140
@ CtAlignReverse
Definition: CartoTypeBase.h:142
@ CtAlignRight
Definition: CartoTypeBase.h:146
@ CtAlignLeft
Definition: CartoTypeBase.h:144
@ CtAlignCenter
Definition: CartoTypeBase.h:138
CtFileType
Definition: CartoTypeBase.h:74
@ CtFileTypeCtsql
Definition: CartoTypeBase.h:88
@ CtFileTypePng
Definition: CartoTypeBase.h:76
@ CtFileTypeGpx
Definition: CartoTypeBase.h:92
@ CtFileTypeKml
Definition: CartoTypeBase.h:86
@ CtFileTypeCtms
Definition: CartoTypeBase.h:84
@ CtFileTypeTiff
Definition: CartoTypeBase.h:80
@ CtFileTypeCtroute
Definition: CartoTypeBase.h:90
@ CtFileTypeCtm1
Definition: CartoTypeBase.h:82
@ CtFileTypeJpeg
Definition: CartoTypeBase.h:78
compatibility_alias CartoTypeViewState CtViewState
Definition: CartoTypeBase.h:1314
CtFeatureDiscriminator
Definition: CartoTypeBase.h:778
@ CtFeatureDiscriminatorBridgeRoute
Definition: CartoTypeBase.h:782
@ CtFeatureDiscriminatorTunnelRoute
Definition: CartoTypeBase.h:784
@ CtFeatureDiscriminatorNonRoute
Definition: CartoTypeBase.h:780
@ CtFeatureDiscriminatorRoute
Definition: CartoTypeBase.h:786
CtLetterCase
Definition: CartoTypeBase.h:1318
@ CtLetterCaseUpper
Definition: CartoTypeBase.h:1324
@ CtLetterCaseLower
Definition: CartoTypeBase.h:1322
@ CtLetterCaseNone
Definition: CartoTypeBase.h:1320
@ CtLetterCaseTitle
Definition: CartoTypeBase.h:1329
CtWritableMapType
Definition: CartoTypeBase.h:1191
@ CtWritableMapTypeMemory
Definition: CartoTypeBase.h:1193
@ CtWritableMapTypeSQLite
Definition: CartoTypeBase.h:1195
compatibility_alias CartoTypeNoticePosition CtNoticePosition
Definition: CartoTypeBase.h:1244
CtPointType CartoTypePointType
Definition: CartoTypeBase.h:132
CtPathIntersectionType CartoTypePathIntersectionType
Definition: CartoTypeBase.h:1010
CtFontStyle CartoTypeFontStyle
Definition: CartoTypeBase.h:36
CtFeatureType CartoTypeFeatureType
Definition: CartoTypeBase.h:774
CtClipOperation
Definition: CartoTypeBase.h:1040
@ CtClipOperationUnion
Definition: CartoTypeBase.h:1044
@ CtClipOperationDifference
Definition: CartoTypeBase.h:1046
@ CtClipOperationIntersection
Definition: CartoTypeBase.h:1042
@ CtClipOperationXor
Definition: CartoTypeBase.h:1048
compatibility_alias CartoTypePathIntersectionInfo CtPathIntersectionInfo
Definition: CartoTypeBase.h:1036
compatibility_alias CartoTypeMatch CtMatch
Definition: CartoTypeBase.h:422
compatibility_alias CartoTypeMapObjectGroup CtMapObjectGroup
Definition: CartoTypeBase.h:993
CtNoticeAnchor
Definition: CartoTypeBase.h:1202
@ CtNoticeAnchorBottomRight
Definition: CartoTypeBase.h:1210
@ CtNoticeAnchorRight
Definition: CartoTypeBase.h:1214
@ CtNoticeAnchorTopLeft
Definition: CartoTypeBase.h:1204
@ CtNoticeAnchorCenter
Definition: CartoTypeBase.h:1220
@ CtNoticeAnchorTopRight
Definition: CartoTypeBase.h:1206
@ CtNoticeAnchorLeft
Definition: CartoTypeBase.h:1216
@ CtNoticeAnchorBottomLeft
Definition: CartoTypeBase.h:1208
@ CtNoticeAnchorTop
Definition: CartoTypeBase.h:1212
@ CtNoticeAnchorBottom
Definition: CartoTypeBase.h:1218
compatibility_alias CartoTypeBlendStyle CtBlendStyle
Definition: CartoTypeBase.h:360
compatibility_alias CartoTypeFeatureInfo CtFeatureInfo
Definition: CartoTypeBase.h:880
compatibility_alias CartoTypeGeometry CtGeometry
Definition: CartoTypeBase.h:1144
CtNoticeAnchor CartoTypeNoticeAnchor
Definition: CartoTypeBase.h:1223
CtPointAndResult CartoTypePointAndResult
Definition: CartoTypeBase.h:226
uint32_t CtResult
Definition: CartoTypeResultCode.h:369
Definition: CartoTypeBase.h:364
Definition: CartoTypeBase.h:338
Definition: CartoTypeBase.h:809
bool driveOnLeft
Definition: CartoTypeBase.h:843
bool toll
Definition: CartoTypeBase.h:851
bool oneWay
Definition: CartoTypeBase.h:837
int level
Definition: CartoTypeBase.h:833
bool cycleAccess
Definition: CartoTypeBase.h:863
bool oneWayBackward
Definition: CartoTypeBase.h:841
bool tunnel
Definition: CartoTypeBase.h:829
bool wrongWay
Definition: CartoTypeBase.h:853
bool pedestrianAccess
Definition: CartoTypeBase.h:861
bool roundabout
Definition: CartoTypeBase.h:849
int subType
Definition: CartoTypeBase.h:873
bool driveOnRight
Definition: CartoTypeBase.h:845
bool bridge
Definition: CartoTypeBase.h:831
bool route
Definition: CartoTypeBase.h:827
bool isPrivate
Definition: CartoTypeBase.h:871
CtFeatureType type
Definition: CartoTypeBase.h:835
void reverseOneWayDirection()
bool emergencyVehicleAccess
Definition: CartoTypeBase.h:867
uint32_t rawValue()
int speedLimit
Definition: CartoTypeBase.h:855
int gradient
Definition: CartoTypeBase.h:857
bool otherAccessRestricted
Definition: CartoTypeBase.h:869
CtFeatureDiscriminator discriminator
Definition: CartoTypeBase.h:825
bool motorVehicleAccess
Definition: CartoTypeBase.h:865
bool oneWayForward
Definition: CartoTypeBase.h:839
Definition: CartoTypeBase.h:1148
NSString * layers
Definition: CartoTypeBase.h:1160
int maxObjectCount
Definition: CartoTypeBase.h:1154
CtGeometry * clip
Definition: CartoTypeBase.h:1156
double timeOut
Definition: CartoTypeBase.h:1184
bool merge
Definition: CartoTypeBase.h:1179
NSString * text
Definition: CartoTypeBase.h:1170
NSString * attributes
Definition: CartoTypeBase.h:1165
CtGeometry * location
Definition: CartoTypeBase.h:1158
NSString * condition
Definition: CartoTypeBase.h:1177
CtStringMatch stringMatchMethod
Definition: CartoTypeBase.h:1172
Definition: CartoTypeBase.h:244
Definition: CartoTypeBase.h:1055
void reverse()
CtCoordType coordType()
bool isEmpty()
void beginContour()
void dealloc()
void * geometry()
int contourCount()
bool isClosed()
Definition: CartoTypeBase.h:205
CtPoint positionInDegrees
Definition: CartoTypeBase.h:206
double timeInSeconds
Definition: CartoTypeBase.h:210
double distanceInMeters
Definition: CartoTypeBase.h:212
double heightInMeters
Definition: CartoTypeBase.h:208
Definition: CartoTypeBase.h:1404
Definition: CartoTypeBase.h:985
NSMutableArray * objectArray
Definition: CartoTypeBase.h:990
NSString * name
Definition: CartoTypeBase.h:988
Definition: CartoTypeBase.h:914
CtRectAndResult boundsInDegrees
Definition: CartoTypeBase.h:951
CtFeatureInfo * featureInfo
Definition: CartoTypeBase.h:930
int contourCount()
double area
Definition: CartoTypeBase.h:973
double lengthOrPerimeter
Definition: CartoTypeBase.h:975
CtPointAndResult centerInDegrees
Definition: CartoTypeBase.h:948
NSString * layerName
Definition: CartoTypeBase.h:922
NSString * label
Definition: CartoTypeBase.h:924
void * object()
CtPoint center
Definition: CartoTypeBase.h:936
CtGeometryAndResult * geometryInDegrees
Definition: CartoTypeBase.h:954
NSMutableDictionary * stringAttributes()
CtRect bounds
Definition: CartoTypeBase.h:939
uint64_t objectId
Definition: CartoTypeBase.h:965
CtMapObjectType type
Definition: CartoTypeBase.h:920
Definition: CartoTypeBase.h:1455
uint64_t objectId
Definition: CartoTypeBase.h:1487
NSString * layer
Definition: CartoTypeBase.h:1471
double radiusX
Definition: CartoTypeBase.h:1475
double radius
Definition: CartoTypeBase.h:1473
double radiusY
Definition: CartoTypeBase.h:1477
CtFeatureInfo * featureInfo
Definition: CartoTypeBase.h:1483
uint32_t mapHandle
Definition: CartoTypeBase.h:1469
bool replace
Definition: CartoTypeBase.h:1489
double rotationDegrees
Definition: CartoTypeBase.h:1481
CtCoordType radiusCoordType
Definition: CartoTypeBase.h:1479
NSString * stringAttrib
Definition: CartoTypeBase.h:1485
Definition: CartoTypeBase.h:410
Definition: CartoTypeBase.h:1236
Definition: CartoTypeBase.h:1014
Definition: CartoTypeBase.h:1262
bool autoPosition
Definition: CartoTypeBase.h:1269
double heightMeters
Definition: CartoTypeBase.h:1271
double fieldOfViewDegrees
Definition: CartoTypeBase.h:1281
double rotationDegrees
Definition: CartoTypeBase.h:1279
void * getPerspectiveParam()
NSString * toXml()
bool autoAzimuth
Definition: CartoTypeBase.h:1275
double declinationDegrees
Definition: CartoTypeBase.h:1277
double azimuthDegrees
Definition: CartoTypeBase.h:1273
CtPoint positionDegrees
Definition: CartoTypeBase.h:1267
Definition: CartoTypeBase.h:1248
CGPoint topLeft
Definition: CartoTypeBase.h:1255
UIImage * image
Definition: CartoTypeBase.h:1253
Definition: CartoTypeBase.h:1496
const void * tileParam()
Definition: CartoTypeBase.h:1290
bool perspective
Definition: CartoTypeBase.h:1305
CtPoint viewCenterDegrees
Definition: CartoTypeBase.h:1299
void * viewState()
double rotationDegrees
Definition: CartoTypeBase.h:1303
NSString * toXml()
CtPerspectiveParam * getPerspectiveParam()
double scaleDenominator
Definition: CartoTypeBase.h:1301
int heightInPixels
Definition: CartoTypeBase.h:1297
int widthInPixels
Definition: CartoTypeBase.h:1295
Definition: CartoTypeBase.h:405
Definition: CartoTypeBase.h:395
int contourCount()
Definition: CartoTypeBase.h:265
double area
Definition: CartoTypeBase.h:267
CtResult result
Definition: CartoTypeBase.h:271
double length
Definition: CartoTypeBase.h:269
Definition: CartoTypeBase.h:254
CtResult result
Definition: CartoTypeBase.h:258
uint64_t objectId
Definition: CartoTypeBase.h:256
Definition: CartoTypeBase.h:166
double y
Definition: CartoTypeBase.h:170
double x
Definition: CartoTypeBase.h:168
CtPointType type
Definition: CartoTypeBase.h:172
Definition: CartoTypeBase.h:153
int32_t x
Definition: CartoTypeBase.h:155
CtPointType type
Definition: CartoTypeBase.h:159
int32_t y
Definition: CartoTypeBase.h:157
Definition: CartoTypeBase.h:219
CtResult result
Definition: CartoTypeBase.h:223
CtPoint point
Definition: CartoTypeBase.h:221
Definition: CartoTypeBase.h:179
double x
Definition: CartoTypeBase.h:181
double y
Definition: CartoTypeBase.h:183
Definition: CartoTypeBase.h:230
CtResult result
Definition: CartoTypeBase.h:234
CtRect rect
Definition: CartoTypeBase.h:232
Definition: CartoTypeBase.h:190
double maxY
Definition: CartoTypeBase.h:198
double minX
Definition: CartoTypeBase.h:192
double maxX
Definition: CartoTypeBase.h:196
double minY
Definition: CartoTypeBase.h:194