/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 9 Ġmicro G ĠProject ĠTeam Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġorg . micro g . gms . maps . mapbox . model Ċ Ċ import Ġandroid . util . Log Ċ import Ġcom . google . android . gms . dynamic . I Object Wrapper Ċ import Ġcom . google . android . gms . maps . model . LatLng Ċ import Ġcom . google . android . gms . maps . model . internal . IM ark er Delegate Ċ import Ġcom . mapbox . mapbox sdk . plugins . annotation . Symbol Ċ import Ġorg . micro g . gms . kotlin . unwrap Ċ import Ġorg . micro g . gms . maps . mapbox . Google Map Impl Ċ import Ġorg . micro g . gms . maps . mapbox . utils . to G ms Ċ import Ġorg . micro g . gms . maps . mapbox . utils . toMap box Ċ Ċ class ĠMarker Impl ( private Ġval Ġmap : ĠGoogle Map Impl , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġsymbol : ĠSymbol , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġvar Ġanchor : ĠFloat Array , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġvar Ġicon : ĠBitmap Descriptor Impl ?, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġvar Ġalpha : ĠFloat Ġ= Ġsymbol . icon Opacity , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġvar Ġtitle : ĠString ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġvar Ġsnippet : ĠString ? Ġ= Ġnull ) Ġ: ĠI Marker Delegate . Stub () Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġtag : ĠI Object Wrapper ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun Ġremove () Ġ{ ĊĠĠĠĠĠĠĠ Ġmap . symbol Manager ?. delete ( symbol ) ĊĠĠĠĠĠĠĠ Ġmap . markers . remove ( symbol . id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetId (): ĠString Ġ= Ġ" m " Ġ+ Ġsymbol . id . toString () ĊĊĠĠĠ Ġoverride Ġfun Ġset Position ( pos : ĠLat Lng ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġpos ?. let Ġ{ Ġsymbol . lat Lng Ġ= Ġit . toMap box () Ġ} ĊĠĠĠĠĠĠĠ Ġmap . symbol Manager ?. update ( symbol ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Position (): ĠLat Lng Ġ= Ġsymbol . lat Lng . to G ms () ĊĊĠĠĠ Ġoverride Ġfun ĠsetTitle ( title : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . title Ġ= Ġtitle ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Title (): ĠString ? Ġ= Ġtitle ĊĊĠĠĠ Ġoverride Ġfun Ġset Snippet ( snippet : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . snippet Ġ= Ġsnippet ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Snippet (): ĠString ? Ġ= Ġsnippet ĊĊĠĠĠ Ġoverride Ġfun Ġset Drag gable ( drag : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsymbol . is Drag gable Ġ= Ġdrag ĊĠĠĠĠĠĠĠ Ġmap . symbol Manager ?. update ( symbol ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġis Drag gable (): ĠBoolean Ġ= Ġsymbol . is Drag gable ĊĊĠĠĠ Ġoverride Ġfun Ġshow Info Window () Ġ{ ĊĠĠĠĠĠĠĠ ĠLog . d ( TAG , Ġ" un implemented ĠMethod : Ġshow Info Window ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġhide Info Window () Ġ{ ĊĠĠĠĠĠĠĠ ĠLog . d ( TAG , Ġ" un implemented ĠMethod : Ġhide Info Window ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġis Info Window Shown (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ ĠLog . d ( TAG , Ġ" un implemented ĠMethod : Ġis Info Window Show ") ĊĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Visible ( visible : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsymbol . icon Opacity Ġ= Ġif Ġ( visible ) Ġ 0 f Ġelse Ġalpha ĊĠĠĠĠĠĠĠ Ġmap . symbol Manager ?. update ( symbol ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġis Visible (): ĠBoolean Ġ= Ġsymbol . icon Opacity Ġ!= Ġ 0 f ĊĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( this Ġ=== Ġother ) Ġreturn Ġtrue ĊĠĠĠĠĠĠĠ Ġif Ġ( other Ġis ĠI Marker Delegate ) Ġreturn Ġother . id Ġ== Ġid ĊĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġequals Remote ( other : ĠI Marker Delegate ?): ĠBoolean Ġ= Ġequals ( other ) ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġid . hashCode () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ"$ id Ġ($ title )" ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode Remote (): ĠInt Ġ= ĠhashCode () ĊĊĠĠĠ Ġoverride Ġfun Ġset Icon ( obj : ĠI Object Wrapper ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġobj . unwrap < Bitmap Descriptor Impl >() ?. let Ġ{ Ġicon Ġ= Ġit Ġ} ĊĠĠĠĠĠĠĠ Ġicon ?. apply To ( symbol , Ġanchor , Ġmap . dpi Factor ) ĊĠĠĠĠĠĠĠ Ġmap . symbol Manager ?. update ( symbol ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Anchor ( x : ĠFloat , Ġy : ĠFloat ) Ġ{ ĊĠĠĠĠĠĠĠ Ġanchor Ġ= Ġfloat ArrayOf ( x , Ġy ) ĊĠĠĠĠĠĠĠ Ġicon ?. apply To ( symbol , Ġanchor , Ġmap . dpi Factor ) ĊĠĠĠĠĠĠĠ Ġmap . symbol Manager ?. update ( symbol ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Flat ( flat : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ ĠLog . d ( TAG , Ġ" un implemented ĠMethod : Ġset Flat ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġis Flat (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ ĠLog . d ( TAG , Ġ" un implemented ĠMethod : Ġis Flat ") ĊĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Rotation ( rotation : ĠFloat ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsymbol . icon Rotate Ġ= Ġrotation ĊĠĠĠĠĠĠĠ Ġmap . symbol Manager ?. update ( symbol ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Rotation (): ĠFloat Ġ= Ġsymbol . icon Rotate ĊĊĠĠĠ Ġoverride Ġfun Ġset Info Window Anchor ( x : ĠFloat , Ġy : ĠFloat ) Ġ{ ĊĠĠĠĠĠĠĠ ĠLog . d ( TAG , Ġ" un implemented ĠMethod : Ġset Info Window Anchor ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Alpha ( alpha : ĠFloat ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . alpha Ġ= Ġalpha ĊĠĠĠĠĠĠĠ Ġsymbol . icon Opacity Ġ= Ġalpha ĊĠĠĠĠĠĠĠ Ġmap . symbol Manager ?. update ( symbol ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Alpha (): ĠFloat Ġ= Ġalpha ĊĊĠĠĠ Ġoverride Ġfun Ġset Z Index ( z Index : ĠFloat ) Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġint Bits Ġ= Ġjava . lang . Float . float ToInt Bits ( z Index ) ĊĠĠĠĠĠĠĠ Ġif Ġ( int Bits Ġ< Ġ 0 ) Ġint Bits Ġ= Ġint Bits Ġxor Ġ 0 x 7 fffffff ĊĠĠĠĠĠĠĠ Ġsymbol . z Index Ġ= Ġint Bits ĊĠĠĠĠĠĠĠ Ġmap . symbol Manager ?. update ( symbol ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Z Index (): ĠFloat Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġint Bits Ġ= Ġsymbol . z Index ĊĠĠĠĠĠĠĠ Ġif Ġ( int Bits Ġ< Ġ 0 ) Ġint Bits Ġ= Ġint Bits Ġxor Ġ 0 x 7 fffffff ĊĠĠĠĠĠĠĠ Ġreturn Ġjava . lang . Float . int Bits To Float ( int Bits ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Tag ( obj : ĠI Object Wrapper ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . tag Ġ= Ġobj ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Tag (): ĠI Object Wrapper ? Ġ= Ġtag ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠTAG Ġ= Ġ" G ms Map Marker " ĊĠĠĠ Ġ} Ċ }