Documentation
¶
Index ¶
- type AllowedLicense
- type AuthRequest
- type AuthResponse
- type AuthenticationError
- type AuthenticationResult
- type Authenticator
- type Car
- type CarClass
- type CarInClass
- type CarPaintRule
- type CarType
- type CarTypes
- type Category
- type ConfigurationError
- type DataCar
- type DataCarClass
- type DataConstant
- type DataHosted
- type DataLeague
- type DataResults
- type DataSeason
- type DataSeries
- type DataTrack
- type DefaultAuthenticator
- type Division
- type DriverHelmet
- type DriverSuit
- type EventType
- type EventTypes
- type ForecastOptions
- type FromOption
- type HeatSessionInfo
- type Helmet
- type HostedCombinedSessionsOption
- type HostedSession
- type HostedSessions
- type IRData
- type IncludeEndAfterFromOption
- type IncludeLicensesOption
- type League
- type LeagueGetOption
- type LeagueImage
- type LeagueMember
- type LeagueSeason
- type LeagueSeasonCar
- type LeagueSeasonCarClass
- type LeagueSeasonSession
- type LeagueSeasonSessionCar
- type LeagueSeasonSessions
- type LeagueSeasonSessionsOption
- type LeagueSeasons
- type LeagueSeasonsOption
- type LeagueTags
- type LicenseGroupType
- type LinkError
- type Logger
- type Options
- func WithAuthenticator(f func(ird IRData, def Authenticator) Authenticator) Options
- func WithAutoReauthorize(autoReauthorize bool) Options
- func WithAutoReauthorizeThreshold(reauthorizeThreshold time.Duration) Options
- func WithHttpClient(client *http.Client) Options
- func WithMembersUrl(membersUrl string) Options
- func WithRateLimitLocking(enabled bool) Options
- func WithRateLimitRetry(attempts int) Options
- func WithRateLimitWait(maxWait time.Duration) Options
- type OptionsAuthenticator
- type OptionsAutoReauthorize
- type OptionsAutoReauthorizeThreshold
- type OptionsHttpClient
- type OptionsMembersUrl
- type OptionsRateLimitLocking
- type OptionsRateLimitRetry
- type OptionsRateLimitWait
- type PackageIDOption
- type RaceGuide
- type RaceGuideOption
- type RaceGuideSession
- type RaceTimeDescriptor
- type RateLimit
- type RateLimitExceededError
- type RedisAuthenticator
- type ResultAllowedLicense
- type ResultCarClass
- type ResultCarInClass
- type ResultLivery
- type ResultRaceSummary
- type ResultSession
- type ResultSessionResult
- type ResultSessionSplit
- type ResultSessionWeather
- type ResultSubSessionResult
- type ResultTrack
- type ResultTrackState
- type ResultWeather
- type ResultsFromOption
- type ResultsGetOption
- type ResultsOnlyOption
- type RetiredOption
- type Season
- type SeasonIDs
- type Seasons
- type Series
- type SeriesAsset
- type SeriesAssets
- type SeriesAssetsOption
- type SeriesItem
- type SeriesSeason
- type SeriesSeasonSchedule
- type SeriesSeasonScheduleCar
- type SeriesSeasonTrack
- type SeriesSeasons
- type SeriesSeasonsOption
- type ServiceUnavailableError
- type Session
- type SessionCar
- type SessionDriver
- type SessionEligibility
- type SessionEventType
- type SessionHeatInfo
- type SessionLicenseGroupType
- type SessionServerFarm
- type SessionTrack
- type SessionTrackState
- type SessionType
- type SessionWeather
- type SpectatorSubSessionIDs
- type SpectatorSubSessionIDsDetail
- type SpectatorSubSessionIDsDetailSubsession
- type SpectatorSubSessionIDsOption
- type Track
- type TrackAssets
- type TrackState
- type TrackType
- type Weather
- type WeatherSummary
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AllowedLicense ¶ added in v0.1.6
type AuthRequest ¶
type AuthResponse ¶
type AuthResponse struct { AuthCode interface{} `json:"authcode"` AutoLoginSeries string `json:"autoLoginSeries"` AutoLoginToken string `json:"autoLoginToken"` CustId int `json:"custId"` Email string `json:"email"` SsoCookieDomain string `json:"ssoCookieDomain"` SsoCookieName string `json:"ssoCookieName"` SsoCookiePath string `json:"ssoCookiePath"` SsoCookieValue string `json:"ssoCookieValue"` Message string `json:"message"` Inactive bool `json:"inactive"` VerificationRequired bool `json:"verificationRequired"` }
type AuthenticationError ¶
func (*AuthenticationError) Error ¶
func (e *AuthenticationError) Error() string
type AuthenticationResult ¶ added in v0.3.1
type Authenticator ¶ added in v0.3.1
type Car ¶
type Car struct { AiEnabled bool `json:"ai_enabled"` AllowNumberColors bool `json:"allow_number_colors"` AllowNumberFont bool `json:"allow_number_font"` AllowSponsor1 bool `json:"allow_sponsor1"` AllowSponsor2 bool `json:"allow_sponsor2"` AllowWheelColor bool `json:"allow_wheel_color"` AwardExempt bool `json:"award_exempt"` CarDirPath string `json:"car_dirpath"` CarID int `json:"car_id"` CarName string `json:"car_name"` CarNameAbbreviated string `json:"car_name_abbreviated"` CarTypes []CarType `json:"car_types"` CarWeight int `json:"car_weight"` Categories []string `json:"categories"` Created time.Time `json:"created"` FirstSale time.Time `json:"first_sale"` ForumURL string `json:"forum_url,omitempty"` FreeWithSubscription bool `json:"free_with_subscription"` HasHeadlights bool `json:"has_headlights"` HasMultipleDryTireTypes bool `json:"has_multiple_dry_tire_types"` HasRainCapableTireTypes bool `json:"has_rain_capable_tire_types"` Hp int `json:"hp"` IsPsPurchasable bool `json:"is_ps_purchasable"` MaxPowerAdjustPct int `json:"max_power_adjust_pct"` MaxWeightPenaltyKg int `json:"max_weight_penalty_kg"` MinPowerAdjustPct int `json:"min_power_adjust_pct"` PackageID int `json:"package_id"` Patterns int `json:"patterns"` Price float64 `json:"price"` PriceDisplay string `json:"price_display,omitempty"` RainEnabled bool `json:"rain_enabled"` Retired bool `json:"retired"` SearchFilters string `json:"search_filters"` Sku int `json:"sku"` CarMake string `json:"car_make,omitempty"` CarModel string `json:"car_model,omitempty"` PaintRules map[string]CarPaintRule `json:"paint_rules,omitempty"` SiteURL string `json:"site_url,omitempty"` }
type CarInClass ¶
type CarPaintRule ¶
type CarPaintRule struct { RestrictCustomPaint bool `json:"RestrictCustomPaint,omitempty"` PaintCarAvailable bool `json:"PaintCarAvailable"` Color1 string `json:"Color1"` Color2 string `json:"Color2"` Color3 string `json:"Color3"` Sponsor1Available bool `json:"Sponsor1Available"` Sponsor2Available bool `json:"Sponsor2Available"` Sponsor1 string `json:"Sponsor1"` Sponsor2 string `json:"Sponsor2"` RulesExplanation string `json:"RulesExplanation"` }
func (*CarPaintRule) MarshalJSON ¶
func (r *CarPaintRule) MarshalJSON() ([]byte, error)
func (*CarPaintRule) UnmarshalJSON ¶
func (r *CarPaintRule) UnmarshalJSON(data []byte) error
type ConfigurationError ¶
func (*ConfigurationError) Error ¶
func (e *ConfigurationError) Error() string
type DataConstant ¶
type DataHosted ¶
type DataHosted interface { GetSessions(ctx context.Context) (HostedSessions, error) GetCombinedSessions(ctx context.Context, opts ...HostedCombinedSessionsOption) (HostedSessions, error) }
type DataLeague ¶ added in v0.1.22
type DataLeague interface { Get(ctx context.Context, leagueId int, opts ...LeagueGetOption) (League, error) Seasons(ctx context.Context, leagueId int, opts ...LeagueSeasonsOption) (LeagueSeasons, error) SeasonSessions(ctx context.Context, leagueId int, seasonId int, opts ...LeagueSeasonSessionsOption) (LeagueSeasonSessions, error) }
DataLeague interface defines the methods for interacting with leagues
type DataResults ¶ added in v0.1.20
type DataResults interface {
Get(ctx context.Context, subsessionId int, opts ...ResultsGetOption) (ResultSession, error)
}
type DataSeason ¶ added in v0.1.6
type DataSeason interface { List(ctx context.Context, year int, quarter int) (Seasons, error) RaceGuide(ctx context.Context, opts ...RaceGuideOption) (RaceGuide, error) SpectatorSubSessionIDs(ctx context.Context, opts ...SpectatorSubSessionIDsOption) (SpectatorSubSessionIDs, error) SpectatorSubSessionIDsDetail(ctx context.Context, opts ...SpectatorSubSessionIDsOption) (SpectatorSubSessionIDsDetail, error) }
type DataSeries ¶ added in v0.1.6
type DataSeries interface { Assets(ctx context.Context, opts ...SeriesAssetsOption) (SeriesAssets, error) Get(ctx context.Context) (Series, error) Seasons(ctx context.Context, opts ...SeriesSeasonsOption) (SeriesSeasons, error) }
type DefaultAuthenticator ¶ added in v0.3.1
type DefaultAuthenticator struct { Authenticator // contains filtered or unexported fields }
func NewDefaultAuthenticator ¶ added in v0.3.1
func NewDefaultAuthenticator(irdata IRData) (*DefaultAuthenticator, error)
type DriverHelmet ¶
type DriverSuit ¶ added in v0.1.20
type EventTypes ¶ added in v0.1.6
type EventTypes struct {
EventTypes []int
}
func (*EventTypes) ApplySpectatorSubSessionIDs ¶ added in v0.1.6
func (o *EventTypes) ApplySpectatorSubSessionIDs(v *url.Values)
type ForecastOptions ¶ added in v0.1.7
type ForecastOptions struct { ForecastType int `json:"forecast_type"` Precipitation int `json:"precipitation"` Skies int `json:"skies"` StopPrecip int `json:"stop_precip"` Temperature int `json:"temperature"` WeatherSeed int64 `json:"weather_seed"` WindDir int `json:"wind_dir"` WindSpeed int `json:"wind_speed"` }
type FromOption ¶ added in v0.1.6
func (*FromOption) ApplyRaceGuide ¶ added in v0.1.6
func (o *FromOption) ApplyRaceGuide(v *url.Values)
type HeatSessionInfo ¶ added in v0.1.7
type HeatSessionInfo struct { ConsolationDeltaMaxFieldSize int `json:"consolation_delta_max_field_size"` ConsolationDeltaSessionLaps int `json:"consolation_delta_session_laps"` ConsolationDeltaSessionLengthMinutes int `json:"consolation_delta_session_length_minutes"` ConsolationFirstMaxFieldSize int `json:"consolation_first_max_field_size"` ConsolationFirstSessionLaps int `json:"consolation_first_session_laps"` ConsolationFirstSessionLengthMinutes int `json:"consolation_first_session_length_minutes"` ConsolationNumPositionToInvert int `json:"consolation_num_position_to_invert"` ConsolationNumToConsolation int `json:"consolation_num_to_consolation"` ConsolationNumToMain int `json:"consolation_num_to_main"` ConsolationRunAlways bool `json:"consolation_run_always"` ConsolationScoresChampPoints bool `json:"consolation_scores_champ_points"` Created time.Time `json:"created"` CustID int `json:"cust_id"` Description string `json:"description"` HeatCautionType int `json:"heat_caution_type"` HeatInfoID int `json:"heat_info_id"` HeatInfoName string `json:"heat_info_name"` HeatLaps int `json:"heat_laps"` HeatLengthMinutes int `json:"heat_length_minutes"` HeatMaxFieldSize int `json:"heat_max_field_size"` HeatNumFromEachToMain int `json:"heat_num_from_each_to_main"` HeatNumPositionToInvert int `json:"heat_num_position_to_invert"` HeatScoresChampPoints bool `json:"heat_scores_champ_points"` HeatSessionMinutesEstimate int `json:"heat_session_minutes_estimate"` Hidden bool `json:"hidden"` MainLaps int `json:"main_laps"` MainLengthMinutes int `json:"main_length_minutes"` MainMaxFieldSize int `json:"main_max_field_size"` MainNumPositionToInvert int `json:"main_num_position_to_invert"` MaxEntrants int `json:"max_entrants"` OpenPractice bool `json:"open_practice"` PreMainPracticeLengthMinutes int `json:"pre_main_practice_length_minutes"` PreQualNumToMain int `json:"pre_qual_num_to_main"` PreQualPracticeLengthMinutes int `json:"pre_qual_practice_length_minutes"` QualCautionType int `json:"qual_caution_type"` QualLaps int `json:"qual_laps"` QualLengthMinutes int `json:"qual_length_minutes"` QualNumToMain int `json:"qual_num_to_main"` QualOpenDelaySeconds int `json:"qual_open_delay_seconds"` QualScoresChampPoints bool `json:"qual_scores_champ_points"` QualScoring int `json:"qual_scoring"` QualStyle int `json:"qual_style"` RaceStyle int `json:"race_style"` }
type HostedSession ¶
type HostedSession struct { Session Admins []SessionDriver `json:"admins"` }
type HostedSessions ¶
type HostedSessions struct { Subscribed bool `json:"subscribed"` Sessions []HostedSession `json:"sessions"` Success bool `json:"success"` }
type IRData ¶
type IRData interface { Email() string IsLoggedIn() bool GetLoginExpiration() time.Time MembersUrl() string HttpClient() *http.Client RateLimit() *RateLimit Car() DataCar CarClass() DataCarClass Constant() DataConstant Hosted() DataHosted League() DataLeague Track() DataTrack Season() DataSeason Series() DataSeries Results() DataResults }
type IncludeEndAfterFromOption ¶ added in v0.1.6
type IncludeEndAfterFromOption struct {
Include bool
}
func (*IncludeEndAfterFromOption) ApplyRaceGuide ¶ added in v0.1.6
func (o *IncludeEndAfterFromOption) ApplyRaceGuide(v *url.Values)
type IncludeLicensesOption ¶ added in v0.1.22
type IncludeLicensesOption struct {
IncludeLicenses bool
}
IncludeLicensesOption implements LeagueGetOption
func (*IncludeLicensesOption) ApplyLeagueGet ¶ added in v0.1.22
func (o *IncludeLicensesOption) ApplyLeagueGet(v *url.Values)
type League ¶ added in v0.1.22
type League struct { LeagueID int `json:"league_id"` OwnerID int `json:"owner_id"` LeagueName string `json:"league_name"` Created time.Time `json:"created"` Hidden bool `json:"hidden"` Message string `json:"message"` About string `json:"about"` URL string `json:"url"` Recruiting bool `json:"recruiting"` PrivateWall bool `json:"private_wall"` PrivateRoster bool `json:"private_roster"` PrivateSchedule bool `json:"private_schedule"` PrivateResults bool `json:"private_results"` IsOwner bool `json:"is_owner"` IsAdmin bool `json:"is_admin"` RosterCount int `json:"roster_count"` Owner LeagueMember `json:"owner"` Image LeagueImage `json:"image"` Tags LeagueTags `json:"tags"` LeagueApplications []any `json:"league_applications"` PendingRequests []any `json:"pending_requests"` IsMember bool `json:"is_member"` IsApplicant bool `json:"is_applicant"` IsInvite bool `json:"is_invite"` IsIgnored bool `json:"is_ignored"` Roster []LeagueMember `json:"roster"` }
type LeagueGetOption ¶ added in v0.1.22
LeagueGetOption interface for options to the Get method
type LeagueImage ¶ added in v0.1.22
type LeagueMember ¶ added in v0.1.22
type LeagueMember struct { CustID int `json:"cust_id"` DisplayName string `json:"display_name"` Helmet Helmet `json:"helmet"` Owner bool `json:"owner,omitempty"` Admin bool `json:"admin,omitempty"` LeagueMailOptOut bool `json:"league_mail_opt_out,omitempty"` LeaguePmOptOut bool `json:"league_pm_opt_out,omitempty"` LeagueMemberSince time.Time `json:"league_member_since,omitempty"` CarNumber any `json:"car_number"` NickName any `json:"nick_name"` }
type LeagueSeason ¶ added in v0.2.1
type LeagueSeason struct { LeagueID int `json:"league_id"` SeasonID int `json:"season_id"` PointsSystemID int `json:"points_system_id"` SeasonName string `json:"season_name"` Active bool `json:"active"` Hidden bool `json:"hidden"` NumDrops int `json:"num_drops"` NoDropsOnOrAfterRaceNum int `json:"no_drops_on_or_after_race_num"` PointsCars []LeagueSeasonCar `json:"points_cars"` DriverPointsCarClasses []LeagueSeasonCarClass `json:"driver_points_car_classes"` TeamPointsCarClasses []LeagueSeasonCarClass `json:"team_points_car_classes"` PointsSystemName string `json:"points_system_name"` PointsSystemDesc string `json:"points_system_desc"` }
type LeagueSeasonCar ¶ added in v0.2.1
type LeagueSeasonCarClass ¶ added in v0.2.1
type LeagueSeasonCarClass struct { CarClassID int `json:"car_class_id"` Name string `json:"name"` CarsInClass []LeagueSeasonCar `json:"cars_in_class"` }
type LeagueSeasonSession ¶ added in v0.2.1
type LeagueSeasonSession struct { Cars []LeagueSeasonSessionCar `json:"cars"` DriverChanges bool `json:"driver_changes"` EntryCount int `json:"entry_count"` HasResults bool `json:"has_results"` LaunchAt time.Time `json:"launch_at"` LeagueID int `json:"league_id"` LeagueSeasonID int `json:"league_season_id"` LoneQualify bool `json:"lone_qualify"` PaceCarClassID any `json:"pace_car_class_id"` PaceCarID any `json:"pace_car_id"` PasswordProtected bool `json:"password_protected"` PracticeLength int `json:"practice_length"` PrivateSessionID int `json:"private_session_id"` QualifyLaps int `json:"qualify_laps"` QualifyLength int `json:"qualify_length"` RaceLaps int `json:"race_laps"` RaceLength int `json:"race_length"` SessionID int `json:"session_id"` SubsessionID int `json:"subsession_id"` Status int `json:"status"` TrackID int `json:"track_id"` TrackName string `json:"track_name"` }
type LeagueSeasonSessionCar ¶ added in v0.2.1
type LeagueSeasonSessions ¶ added in v0.2.1
type LeagueSeasonSessions struct {
Sessions []LeagueSeasonSession `json:"sessions"`
}
type LeagueSeasonSessionsOption ¶ added in v0.2.1
LeagueSeasonSessionsOption interface for options to the SeasonSessions method
type LeagueSeasons ¶ added in v0.2.1
type LeagueSeasons struct { Subscribed bool `json:"subscribed"` Seasons []LeagueSeason `json:"seasons"` Success bool `json:"success"` Retired bool `json:"retired"` LeagueID int `json:"league_id"` }
type LeagueSeasonsOption ¶ added in v0.2.1
LeagueSeasonsOption interface for options to the Seasons method
type LeagueTags ¶ added in v0.1.22
type LicenseGroupType ¶ added in v0.1.7
type LicenseGroupType struct {
LicenseGroupType int `json:"license_group_type"`
}
type Options ¶
type Options interface {
Apply(data *irdata) error
}
func WithAuthenticator ¶ added in v0.3.2
func WithAuthenticator(f func(ird IRData, def Authenticator) Authenticator) Options
func WithAutoReauthorize ¶
func WithHttpClient ¶
func WithMembersUrl ¶
func WithRateLimitLocking ¶ added in v0.1.18
func WithRateLimitRetry ¶ added in v0.1.18
func WithRateLimitWait ¶ added in v0.1.18
type OptionsAuthenticator ¶ added in v0.3.2
type OptionsAuthenticator struct {
AuthenticatorInit func(ird IRData, def Authenticator) Authenticator
}
func (OptionsAuthenticator) Apply ¶ added in v0.3.2
func (o OptionsAuthenticator) Apply(data *irdata) error
type OptionsAutoReauthorize ¶
type OptionsAutoReauthorize struct {
}func (OptionsAutoReauthorize) Apply ¶
func (o OptionsAutoReauthorize) Apply(data *irdata) error
type OptionsAutoReauthorizeThreshold ¶
type OptionsAutoReauthorizeThreshold struct {
}func (OptionsAutoReauthorizeThreshold) Apply ¶
func (o OptionsAutoReauthorizeThreshold) Apply(data *irdata) error
type OptionsHttpClient ¶
func (OptionsHttpClient) Apply ¶
func (o OptionsHttpClient) Apply(data *irdata) error
type OptionsMembersUrl ¶
type OptionsMembersUrl struct {
MembersUrl string
}
func (OptionsMembersUrl) Apply ¶
func (o OptionsMembersUrl) Apply(data *irdata) error
type OptionsRateLimitLocking ¶ added in v0.1.18
type OptionsRateLimitLocking struct {
Enabled bool
}
func (OptionsRateLimitLocking) Apply ¶ added in v0.1.18
func (o OptionsRateLimitLocking) Apply(data *irdata) error
type OptionsRateLimitRetry ¶ added in v0.1.18
type OptionsRateLimitRetry struct {
Attempts int
}
func (OptionsRateLimitRetry) Apply ¶ added in v0.1.18
func (o OptionsRateLimitRetry) Apply(data *irdata) error
type OptionsRateLimitWait ¶ added in v0.1.18
func (OptionsRateLimitWait) Apply ¶ added in v0.1.18
func (o OptionsRateLimitWait) Apply(data *irdata) error
type PackageIDOption ¶
type PackageIDOption struct {
PackageID int
}
func (*PackageIDOption) ApplyHostedCombinedSessions ¶
func (o *PackageIDOption) ApplyHostedCombinedSessions(v *url.Values)
type RaceGuideOption ¶ added in v0.1.6
type RaceGuideSession ¶ added in v0.1.6
type RaceGuideSession struct { SeasonID int `json:"season_id"` StartTime time.Time `json:"start_time"` SuperSession bool `json:"super_session"` SeriesID int `json:"series_id"` RaceWeekNum int `json:"race_week_num"` EndTime time.Time `json:"end_time"` SessionID int `json:"session_id,omitempty"` EntryCount int `json:"entry_count"` }
type RaceTimeDescriptor ¶ added in v0.1.7
type RateLimit ¶ added in v0.1.18
type RateLimit struct {
// contains filtered or unexported fields
}
func (*RateLimit) TotalLimit ¶ added in v0.1.18
type RateLimitExceededError ¶ added in v0.1.18
func (*RateLimitExceededError) Error ¶ added in v0.1.18
func (e *RateLimitExceededError) Error() string
type RedisAuthenticator ¶ added in v0.3.1
type RedisAuthenticator struct { Authenticator Logger Logger KeyPrefix string LocalCacheDuration time.Duration // contains filtered or unexported fields }
func NewRedisAuthenticator ¶ added in v0.3.1
func NewRedisAuthenticator(redis redis.Cmdable, authenticator Authenticator) (*RedisAuthenticator, error)
func NewRedisDefaultAuthenticator ¶ added in v0.3.1
func NewRedisDefaultAuthenticator(redis redis.Cmdable, irdata IRData) (*RedisAuthenticator, error)
type ResultAllowedLicense ¶ added in v0.1.20
type ResultCarClass ¶ added in v0.1.20
type ResultCarInClass ¶ added in v0.1.20
type ResultCarInClass struct {
CarID int `json:"car_id"`
}
type ResultLivery ¶ added in v0.1.20
type ResultLivery struct { CarID int `json:"car_id"` Pattern int `json:"pattern"` Color1 string `json:"color1"` Color2 string `json:"color2"` Color3 string `json:"color3"` NumberFont int `json:"number_font"` NumberColor1 string `json:"number_color1"` NumberColor2 string `json:"number_color2"` NumberColor3 string `json:"number_color3"` NumberSlant int `json:"number_slant"` Sponsor1 int `json:"sponsor1"` Sponsor2 int `json:"sponsor2"` CarNumber string `json:"car_number"` WheelColor interface{} `json:"wheel_color"` RimType int `json:"rim_type"` }
type ResultRaceSummary ¶ added in v0.1.20
type ResultRaceSummary struct { SubsessionID int `json:"subsession_id"` AverageLap int `json:"average_lap"` LapsComplete int `json:"laps_complete"` NumCautions int `json:"num_cautions"` NumCautionLaps int `json:"num_caution_laps"` NumLeadChanges int `json:"num_lead_changes"` FieldStrength int `json:"field_strength"` NumOptLaps int `json:"num_opt_laps"` HasOptPath bool `json:"has_opt_path"` SpecialEventType int `json:"special_event_type"` SpecialEventTypeText string `json:"special_event_type_text"` }
type ResultSession ¶ added in v0.1.20
type ResultSession struct { SubsessionID int `json:"subsession_id"` AllowedLicenses []ResultAllowedLicense `json:"allowed_licenses"` AssociatedSubsessionIds []int `json:"associated_subsession_ids"` CanProtest bool `json:"can_protest"` CarClasses []ResultCarClass `json:"car_classes"` CautionType int `json:"caution_type"` CooldownMinutes int `json:"cooldown_minutes"` CornersPerLap int `json:"corners_per_lap"` DamageModel int `json:"damage_model"` DriverChangeParam1 int `json:"driver_change_param1"` DriverChangeParam2 int `json:"driver_change_param2"` DriverChangeRule int `json:"driver_change_rule"` DriverChanges bool `json:"driver_changes"` EndTime time.Time `json:"end_time"` EventAverageLap int `json:"event_average_lap"` EventBestLapTime int `json:"event_best_lap_time"` EventLapsComplete int `json:"event_laps_complete"` EventStrengthOfField int `json:"event_strength_of_field"` EventType int `json:"event_type"` EventTypeName string `json:"event_type_name"` HeatInfoID int `json:"heat_info_id"` LicenseCategory string `json:"license_category"` LicenseCategoryID int `json:"license_category_id"` LimitMinutes int `json:"limit_minutes"` MaxTeamDrivers int `json:"max_team_drivers"` MaxWeeks int `json:"max_weeks"` MinTeamDrivers int `json:"min_team_drivers"` NumCautionLaps int `json:"num_caution_laps"` NumCautions int `json:"num_cautions"` NumDrivers int `json:"num_drivers"` NumLapsForQualAverage int `json:"num_laps_for_qual_average"` NumLapsForSoloAverage int `json:"num_laps_for_solo_average"` NumLeadChanges int `json:"num_lead_changes"` OfficialSession bool `json:"official_session"` PointsType string `json:"points_type"` PrivateSessionID int `json:"private_session_id"` RaceSummary ResultRaceSummary `json:"race_summary"` RaceWeekNum int `json:"race_week_num"` ResultsRestricted bool `json:"results_restricted"` SeasonID int `json:"season_id"` SeasonName string `json:"season_name"` SeasonQuarter int `json:"season_quarter"` SeasonShortName string `json:"season_short_name"` SeasonYear int `json:"season_year"` SeriesID int `json:"series_id"` SeriesLogo string `json:"series_logo"` SeriesName string `json:"series_name"` SeriesShortName string `json:"series_short_name"` SessionID int `json:"session_id"` SessionResults []ResultSessionResult `json:"session_results"` SessionSplits []ResultSessionSplit `json:"session_splits"` SpecialEventType int `json:"special_event_type"` StartTime time.Time `json:"start_time"` Track ResultTrack `json:"track"` TrackState TrackState `json:"track_state"` Weather ResultWeather `json:"weather"` }
type ResultSessionResult ¶ added in v0.1.20
type ResultSessionResult struct { SimsessionNumber int `json:"simsession_number"` SimsessionName string `json:"simsession_name"` SimsessionType int `json:"simsession_type"` SimsessionTypeName string `json:"simsession_type_name"` SimsessionSubtype int `json:"simsession_subtype"` WeatherResult ResultSessionWeather `json:"weather_result"` Results []ResultSubSessionResult `json:"results"` }
type ResultSessionSplit ¶ added in v0.1.20
type ResultSessionWeather ¶ added in v0.1.20
type ResultSessionWeather struct { AvgSkies float64 `json:"avg_skies"` AvgCloudCoverPct float64 `json:"avg_cloud_cover_pct"` MinCloudCoverPct float64 `json:"min_cloud_cover_pct"` MaxCloudCoverPct float64 `json:"max_cloud_cover_pct"` TempUnits float64 `json:"temp_units"` AvgTemp float64 `json:"avg_temp"` MinTemp float64 `json:"min_temp"` MaxTemp float64 `json:"max_temp"` AvgRelHumidity float64 `json:"avg_rel_humidity"` WindUnits float64 `json:"wind_units"` AvgWindSpeed float64 `json:"avg_wind_speed"` MinWindSpeed float64 `json:"min_wind_speed"` MaxWindSpeed float64 `json:"max_wind_speed"` AvgWindDir float64 `json:"avg_wind_dir"` MaxFog float64 `json:"max_fog"` FogTimePct float64 `json:"fog_time_pct"` PrecipTimePct float64 `json:"precip_time_pct"` PrecipMm float64 `json:"precip_mm"` PrecipMm2HrBeforeSession float64 `json:"precip_mm2hr_before_session"` SimulatedStartTime string `json:"simulated_start_time"` }
type ResultSubSessionResult ¶ added in v0.1.20
type ResultSubSessionResult struct { CustID int `json:"cust_id"` DisplayName string `json:"display_name"` AggregateChampPoints int `json:"aggregate_champ_points"` Ai bool `json:"ai"` AverageLap float64 `json:"average_lap"` BestLapNum int `json:"best_lap_num"` BestLapTime float64 `json:"best_lap_time"` BestNlapsNum int `json:"best_nlaps_num"` BestNlapsTime float64 `json:"best_nlaps_time"` BestQualLapAt time.Time `json:"best_qual_lap_at"` BestQualLapNum int `json:"best_qual_lap_num"` BestQualLapTime float64 `json:"best_qual_lap_time"` CarClassID int `json:"car_class_id"` CarClassName string `json:"car_class_name"` CarClassShortName string `json:"car_class_short_name"` CarID int `json:"car_id"` CarName string `json:"car_name"` ChampPoints int `json:"champ_points"` ClassInterval int `json:"class_interval"` ClubID int `json:"club_id"` ClubName string `json:"club_name"` ClubPoints int `json:"club_points"` ClubShortname string `json:"club_shortname"` CountryCode string `json:"country_code"` Division int `json:"division"` DivisionName string `json:"division_name"` DropRace bool `json:"drop_race"` FinishPosition int `json:"finish_position"` FinishPositionInClass int `json:"finish_position_in_class"` Friend bool `json:"friend"` Helmet DriverHelmet `json:"helmet"` Incidents int `json:"incidents"` Interval int `json:"interval"` LapsComplete int `json:"laps_complete"` LapsLead int `json:"laps_lead"` LeagueAggPoints int `json:"league_agg_points"` LeaguePoints int `json:"league_points"` LicenseChangeOval int `json:"license_change_oval"` LicenseChangeRoad int `json:"license_change_road"` Livery ResultLivery `json:"livery"` MaxPctFuelFill int `json:"max_pct_fuel_fill"` Multiplier int `json:"multiplier"` NewCpi float64 `json:"new_cpi"` NewLicenseLevel int `json:"new_license_level"` NewSubLevel int `json:"new_sub_level"` NewTtrating int `json:"new_ttrating"` NewiRating int `json:"newi_rating"` OldCpi float64 `json:"old_cpi"` OldLicenseLevel int `json:"old_license_level"` OldSubLevel int `json:"old_sub_level"` OldTtrating int `json:"old_ttrating"` OldiRating int `json:"oldi_rating"` OptLapsComplete int `json:"opt_laps_complete"` Position int `json:"position"` QualLapTime int `json:"qual_lap_time"` ReasonOut string `json:"reason_out"` ReasonOutID int `json:"reason_out_id"` StartingPosition int `json:"starting_position"` StartingPositionInClass int `json:"starting_position_in_class"` Suit DriverSuit `json:"suit"` Watched bool `json:"watched"` WeightPenaltyKg int `json:"weight_penalty_kg"` }
type ResultTrack ¶ added in v0.1.20
type ResultTrackState ¶ added in v0.1.20
type ResultWeather ¶ added in v0.1.20
type ResultWeather struct { AllowFog bool `json:"allow_fog"` Fog int `json:"fog"` PrecipMm2HrBeforeFinalSession int `json:"precip_mm2hr_before_final_session"` PrecipMmFinalSession int `json:"precip_mm_final_session"` PrecipOption int `json:"precip_option"` PrecipTimePct int `json:"precip_time_pct"` RelHumidity int `json:"rel_humidity"` SimulatedStartTime string `json:"simulated_start_time"` Skies int `json:"skies"` TempUnits int `json:"temp_units"` TempValue int `json:"temp_value"` TimeOfDay int `json:"time_of_day"` TrackWater int `json:"track_water"` Type int `json:"type"` Version int `json:"version"` WeatherVarInitial int `json:"weather_var_initial"` WeatherVarOngoing int `json:"weather_var_ongoing"` WindDir int `json:"wind_dir"` WindUnits int `json:"wind_units"` WindValue int `json:"wind_value"` }
type ResultsFromOption ¶ added in v0.1.20
type ResultsFromOption struct {
IncludeLicenses bool
}
func (*ResultsFromOption) ApplyResultsGet ¶ added in v0.1.20
func (o *ResultsFromOption) ApplyResultsGet(v *url.Values)
type ResultsGetOption ¶ added in v0.1.20
type ResultsOnlyOption ¶ added in v0.2.1
type ResultsOnlyOption struct {
ResultsOnly bool
}
ResultsOnlyOption implements LeagueSeasonSessionsOption
func (*ResultsOnlyOption) ApplyLeagueSeasonSessions ¶ added in v0.2.1
func (o *ResultsOnlyOption) ApplyLeagueSeasonSessions(v *url.Values)
type RetiredOption ¶ added in v0.2.1
type RetiredOption struct {
Retired bool
}
RetiredOption implements LeagueSeasonsOption
func (*RetiredOption) ApplyLeagueSeasons ¶ added in v0.2.1
func (o *RetiredOption) ApplyLeagueSeasons(v *url.Values)
type Season ¶ added in v0.1.6
type Season struct { SeasonID int `json:"season_id"` SeriesID int `json:"series_id"` SeasonName string `json:"season_name"` SeriesName string `json:"series_name"` Official bool `json:"official"` SeasonYear int `json:"season_year"` SeasonQuarter int `json:"season_quarter"` LicenseGroup int `json:"license_group"` FixedSetup bool `json:"fixed_setup"` DriverChanges bool `json:"driver_changes"` RookieSeason string `json:"rookie_season,omitempty"` }
type SeasonIDs ¶ added in v0.3.3
type SeasonIDs struct {
SeasonIDs []int
}
func (*SeasonIDs) ApplySpectatorSubSessionIDs ¶ added in v0.3.3
type Series ¶ added in v0.1.6
type Series []SeriesItem
type SeriesAsset ¶ added in v0.1.6
type SeriesAssets ¶ added in v0.1.6
type SeriesAssets map[string]SeriesAsset
type SeriesAssetsOption ¶ added in v0.1.6
type SeriesAssetsOption func(*seriesAssetsOptions)
func WithImageBaseUrl ¶ added in v0.1.6
func WithImageBaseUrl(url string) SeriesAssetsOption
type SeriesItem ¶ added in v0.1.17
type SeriesItem struct { AllowedLicenses []AllowedLicense `json:"allowed_licenses"` Category string `json:"category"` CategoryID int `json:"category_id"` Eligible bool `json:"eligible"` ForumURL string `json:"forum_url,omitempty"` MaxStarters int `json:"max_starters"` MinStarters int `json:"min_starters"` OvalCautionType int `json:"oval_caution_type"` RoadCautionType int `json:"road_caution_type"` SeriesID int `json:"series_id"` SeriesName string `json:"series_name"` SeriesShortName string `json:"series_short_name"` SearchFilters string `json:"search_filters,omitempty"` }
type SeriesSeason ¶ added in v0.1.7
type SeriesSeason struct { SeasonID int `json:"season_id"` SeasonName string `json:"season_name"` Active bool `json:"active"` AllowedSeasonMembers any `json:"allowed_season_members"` CarClassIds []int `json:"car_class_ids"` CarSwitching bool `json:"car_switching"` CarTypes []CarType `json:"car_types"` CautionLapsDoNotCount bool `json:"caution_laps_do_not_count"` Complete bool `json:"complete"` CrossLicense bool `json:"cross_license"` DriverChangeRule int `json:"driver_change_rule"` DriverChanges bool `json:"driver_changes"` Drops int `json:"drops"` EnablePitlaneCollisions bool `json:"enable_pitlane_collisions"` FixedSetup bool `json:"fixed_setup"` GreenWhiteCheckeredLimit int `json:"green_white_checkered_limit"` GridByClass bool `json:"grid_by_class"` HardcoreLevel int `json:"hardcore_level"` HasSupersessions bool `json:"has_supersessions"` IgnoreLicenseForPractice bool `json:"ignore_license_for_practice"` IncidentLimit int `json:"incident_limit"` IncidentWarnMode int `json:"incident_warn_mode"` IncidentWarnParam1 int `json:"incident_warn_param1"` IncidentWarnParam2 int `json:"incident_warn_param2"` IsHeatRacing bool `json:"is_heat_racing"` LicenseGroup int `json:"license_group"` LicenseGroupTypes []LicenseGroupType `json:"license_group_types"` LuckyDog bool `json:"lucky_dog"` MaxTeamDrivers int `json:"max_team_drivers"` MaxWeeks int `json:"max_weeks"` MinTeamDrivers int `json:"min_team_drivers"` Multiclass bool `json:"multiclass"` MustUseDiffTireTypesInRace bool `json:"must_use_diff_tire_types_in_race"` NextRaceSession any `json:"next_race_session"` NumOptLaps int `json:"num_opt_laps"` Official bool `json:"official"` OpDuration int `json:"op_duration"` OpenPracticeSessionTypeID int `json:"open_practice_session_type_id"` QualifierMustStartRace bool `json:"qualifier_must_start_race"` RaceWeek int `json:"race_week"` RaceWeekToMakeDivisions int `json:"race_week_to_make_divisions"` RegOpenMinutes int `json:"reg_open_minutes,omitempty"` RegUserCount int `json:"reg_user_count"` RegionCompetition bool `json:"region_competition"` RestrictByMember bool `json:"restrict_by_member"` RestrictToCar bool `json:"restrict_to_car"` RestrictViewing bool `json:"restrict_viewing"` ScheduleDescription string `json:"schedule_description"` Schedules []SeriesSeasonSchedule `json:"schedules"` SeasonQuarter int `json:"season_quarter"` SeasonShortName string `json:"season_short_name"` SeasonYear int `json:"season_year"` SendToOpenPractice bool `json:"send_to_open_practice"` SeriesID int `json:"series_id"` ShortParadeLap bool `json:"short_parade_lap"` StartDate time.Time `json:"start_date"` StartOnQualTire bool `json:"start_on_qual_tire"` StartZone bool `json:"start_zone"` TrackTypes []TrackType `json:"track_types"` UnsportConductRuleMode int `json:"unsport_conduct_rule_mode"` RacePoints int `json:"race_points,omitempty"` RookieSeason string `json:"rookie_season,omitempty"` HeatSesInfo HeatSessionInfo `json:"heat_ses_info,omitempty"` }
type SeriesSeasonSchedule ¶ added in v0.1.7
type SeriesSeasonSchedule struct { SeasonID int `json:"season_id"` RaceWeekNum int `json:"race_week_num"` CarRestrictions []any `json:"car_restrictions"` Category string `json:"category"` CategoryID int `json:"category_id"` EnablePitlaneCollisions bool `json:"enable_pitlane_collisions"` FullCourseCautions bool `json:"full_course_cautions"` QualAttached bool `json:"qual_attached"` RaceLapLimit int `json:"race_lap_limit"` RaceTimeLimit int `json:"race_time_limit"` // minutes if > 0 RaceTimeDescriptors []RaceTimeDescriptor `json:"race_time_descriptors"` RaceWeekCars []SeriesSeasonScheduleCar `json:"race_week_cars"` RestartType string `json:"restart_type"` ScheduleName string `json:"schedule_name"` SeasonName string `json:"season_name"` SeriesID int `json:"series_id"` SeriesName string `json:"series_name"` ShortParadeLap bool `json:"short_parade_lap"` SimulatedTimeMultiplier int `json:"simulated_time_multiplier"` SpecialEventType any `json:"special_event_type"` StartDate string `json:"start_date"` StartType string `json:"start_type"` StartZone bool `json:"start_zone"` Track Track `json:"track"` TrackState TrackState `json:"track_state"` Weather Weather `json:"weather"` }
type SeriesSeasonScheduleCar ¶ added in v0.1.14
type SeriesSeasonTrack ¶ added in v0.1.7
type SeriesSeasons ¶ added in v0.1.7
type SeriesSeasons []SeriesSeason
type SeriesSeasonsOption ¶ added in v0.1.7
type SeriesSeasonsOption func(*seriesSeasonsOptions)
func WithIncludeSeries ¶ added in v0.1.7
func WithIncludeSeries(include bool) SeriesSeasonsOption
type ServiceUnavailableError ¶
type ServiceUnavailableError struct {}
func (*ServiceUnavailableError) Error ¶
func (e *ServiceUnavailableError) Error() string
type Session ¶
type Session struct { AiAvoidPlayers bool `json:"ai_avoid_players"` AiMaxSkill int `json:"ai_max_skill,omitempty"` AiMinSkill int `json:"ai_min_skill,omitempty"` AiRosterName string `json:"ai_roster_name,omitempty"` AllowedClubs []interface{} `json:"allowed_clubs"` AllowedLeagues []interface{} `json:"allowed_leagues"` AllowedTeams []interface{} `json:"allowed_teams"` CarTypes []CarType `json:"car_types"` Cars []SessionCar `json:"cars"` CarsLeft int `json:"cars_left"` ConsecCautionsSingleFile bool `json:"consec_cautions_single_file"` CountByCarClassID map[string]int `json:"count_by_car_class_id"` CountByCarID map[string]int `json:"count_by_car_id"` DamageModel int `json:"damage_model"` DisallowVirtualMirror bool `json:"disallow_virtual_mirror"` DoNotCountCautionLaps bool `json:"do_not_count_caution_laps"` DoNotPaintCars bool `json:"do_not_paint_cars"` DriverChangeRule int `json:"driver_change_rule"` DriverChanges bool `json:"driver_changes"` Eligibility SessionEligibility `json:"elig"` EnablePitlaneCollisions bool `json:"enable_pitlane_collisions"` EntryCount int `json:"entry_count"` EventTypes []EventType `json:"event_types"` Farm SessionServerFarm `json:"farm"` FixedSetup bool `json:"fixed_setup"` FullCourseCautions bool `json:"full_course_cautions"` GreenWhiteCheckeredLimit int `json:"green_white_checkered_limit"` HardcoreLevel int `json:"hardcore_level"` Host SessionDriver `json:"host"` IncidentLimit int `json:"incident_limit"` IncidentWarnMode int `json:"incident_warn_mode"` IncidentWarnParam1 int `json:"incident_warn_param1"` IncidentWarnParam2 int `json:"incident_warn_param2"` LaunchAt time.Time `json:"launch_at"` LeagueID int `json:"league_id"` LeagueSeasonID int `json:"league_season_id"` LicenseGroupTypes []SessionLicenseGroupType `json:"license_group_types"` LoneQualify bool `json:"lone_qualify"` LuckyDog bool `json:"lucky_dog"` MaxAiDrivers int `json:"max_ai_drivers"` MaxDrivers int `json:"max_drivers"` MaxIr int `json:"max_ir"` MaxLicenseLevel int `json:"max_license_level"` MaxTeamDrivers int `json:"max_team_drivers"` MinIr int `json:"min_ir"` MinLicenseLevel int `json:"min_license_level"` MinTeamDrivers int `json:"min_team_drivers"` MulticlassType int `json:"multiclass_type"` MustUseDiffTireTypesInRace bool `json:"must_use_diff_tire_types_in_race"` NoLapperWaveArounds bool `json:"no_lapper_wave_arounds"` NumFastTows int `json:"num_fast_tows"` NumOptLaps int `json:"num_opt_laps"` OpenRegExpires time.Time `json:"open_reg_expires"` OrderID int `json:"order_id"` PaceCarClassID int `json:"pace_car_class_id"` PaceCarID int `json:"pace_car_id"` PasswordProtected bool `json:"password_protected"` PitsInUse int `json:"pits_in_use"` PracticeLength int `json:"practice_length"` PrivateSessionID int `json:"private_session_id"` QualifierMustStartRace bool `json:"qualifier_must_start_race"` QualifyLaps int `json:"qualify_laps"` QualifyLength int `json:"qualify_length"` RaceLaps int `json:"race_laps"` RaceLength int `json:"race_length"` Restarts int `json:"restarts"` RestrictResults bool `json:"restrict_results"` RestrictViewing bool `json:"restrict_viewing"` RollingStarts bool `json:"rolling_starts"` SessionFull bool `json:"session_full"` SessionID int `json:"session_id"` SessionName string `json:"session_name"` SessionType int `json:"session_type"` SessionTypes []SessionType `json:"session_types"` ShortParadeLap bool `json:"short_parade_lap"` StartOnQualTire bool `json:"start_on_qual_tire"` StartZone bool `json:"start_zone"` Status int `json:"status"` SubsessionID int `json:"subsession_id"` TeamEntryCount int `json:"team_entry_count"` TelemetryForceToDisk int `json:"telemetry_force_to_disk"` TelemetryRestriction int `json:"telemetry_restriction"` TimeLimit int `json:"time_limit"` Track SessionTrack `json:"track"` TrackState SessionTrackState `json:"track_state"` TrackTypes []TrackType `json:"track_types"` UnsportConductRuleMode int `json:"unsport_conduct_rule_mode"` WarmupLength int `json:"warmup_length"` Weather SessionWeather `json:"weather"` RegisteredTeams []int `json:"registered_teams,omitempty"` SessionDesc string `json:"session_desc,omitempty"` HeatSesInfo SessionHeatInfo `json:"heat_ses_info,omitempty"` AltAssetID int `json:"alt_asset_id,omitempty"` }
type SessionCar ¶
type SessionCar struct { CarID int `json:"car_id"` CarName string `json:"car_name"` CarClassID int `json:"car_class_id"` CarClassName string `json:"car_class_name"` MaxPctFuelFill int `json:"max_pct_fuel_fill"` WeightPenaltyKg int `json:"weight_penalty_kg"` PowerAdjustPct float64 `json:"power_adjust_pct"` MaxDryTireSets int `json:"max_dry_tire_sets"` PackageID int `json:"package_id"` }
type SessionDriver ¶
type SessionDriver struct { CustID int `json:"cust_id"` DisplayName string `json:"display_name"` Helmet DriverHelmet `json:"helmet"` }
type SessionEligibility ¶
type SessionEligibility struct { SessionFull bool `json:"session_full"` CanSpot bool `json:"can_spot"` CanWatch bool `json:"can_watch"` CanDrive bool `json:"can_drive"` HasSessPassword bool `json:"has_sess_password"` NeedsPurchase bool `json:"needs_purchase"` OwnCar bool `json:"own_car"` OwnTrack bool `json:"own_track"` PurchaseSkus []int `json:"purchase_skus"` Registered bool `json:"registered"` }
type SessionEventType ¶
type SessionEventType struct {
EventType int `json:"event_type"`
}
type SessionHeatInfo ¶
type SessionHeatInfo struct { HeatInfoID int `json:"heat_info_id"` CustID int `json:"cust_id"` Hidden bool `json:"hidden"` Created time.Time `json:"created"` HeatInfoName string `json:"heat_info_name"` MaxEntrants int `json:"max_entrants"` RaceStyle int `json:"race_style"` OpenPractice bool `json:"open_practice"` PreQualPracticeLengthMinutes int `json:"pre_qual_practice_length_minutes"` PreQualNumToMain int `json:"pre_qual_num_to_main"` QualStyle int `json:"qual_style"` QualLengthMinutes int `json:"qual_length_minutes"` QualLaps int `json:"qual_laps"` QualNumToMain int `json:"qual_num_to_main"` QualScoring int `json:"qual_scoring"` QualCautionType int `json:"qual_caution_type"` QualOpenDelaySeconds int `json:"qual_open_delay_seconds"` QualScoresChampPoints bool `json:"qual_scores_champ_points"` HeatLengthMinutes int `json:"heat_length_minutes"` HeatLaps int `json:"heat_laps"` HeatMaxFieldSize int `json:"heat_max_field_size"` HeatNumPositionToInvert int `json:"heat_num_position_to_invert"` HeatCautionType int `json:"heat_caution_type"` HeatNumFromEachToMain int `json:"heat_num_from_each_to_main"` HeatScoresChampPoints bool `json:"heat_scores_champ_points"` ConsolationNumToConsolation int `json:"consolation_num_to_consolation"` ConsolationNumToMain int `json:"consolation_num_to_main"` ConsolationFirstMaxFieldSize int `json:"consolation_first_max_field_size"` ConsolationFirstSessionLengthMinutes int `json:"consolation_first_session_length_minutes"` ConsolationFirstSessionLaps int `json:"consolation_first_session_laps"` ConsolationDeltaMaxFieldSize int `json:"consolation_delta_max_field_size"` ConsolationDeltaSessionLengthMinutes int `json:"consolation_delta_session_length_minutes"` ConsolationDeltaSessionLaps int `json:"consolation_delta_session_laps"` ConsolationNumPositionToInvert int `json:"consolation_num_position_to_invert"` ConsolationScoresChampPoints bool `json:"consolation_scores_champ_points"` ConsolationRunAlways bool `json:"consolation_run_always"` PreMainPracticeLengthMinutes int `json:"pre_main_practice_length_minutes"` MainLengthMinutes int `json:"main_length_minutes"` MainLaps int `json:"main_laps"` MainMaxFieldSize int `json:"main_max_field_size"` MainNumPositionToInvert int `json:"main_num_position_to_invert"` HeatSessionMinutesEstimate int `json:"heat_session_minutes_estimate"` }
type SessionLicenseGroupType ¶
type SessionLicenseGroupType struct {
LicenseGroupType int `json:"license_group_type"`
}
type SessionServerFarm ¶
type SessionTrack ¶
type SessionTrackState ¶
type SessionTrackState struct { LeaveMarbles bool `json:"leave_marbles"` PracticeRubber int `json:"practice_rubber"` QualifyRubber int `json:"qualify_rubber"` WarmupRubber int `json:"warmup_rubber"` RaceRubber int `json:"race_rubber"` PracticeGripCompound int `json:"practice_grip_compound"` QualifyGripCompound int `json:"qualify_grip_compound"` WarmupGripCompound int `json:"warmup_grip_compound"` RaceGripCompound int `json:"race_grip_compound"` }
type SessionType ¶
type SessionType struct {
SessionType int `json:"session_type"`
}
type SessionWeather ¶
type SessionWeather struct { Version int `json:"version"` Type int `json:"type"` TempUnits int `json:"temp_units"` TempValue int `json:"temp_value"` RelHumidity int `json:"rel_humidity"` Fog int `json:"fog"` WindDir int `json:"wind_dir"` WindUnits int `json:"wind_units"` WindValue int `json:"wind_value"` Skies int `json:"skies"` WeatherVarInitial int `json:"weather_var_initial"` WeatherVarOngoing int `json:"weather_var_ongoing"` TimeOfDay int `json:"time_of_day"` SimulatedStartTime string `json:"simulated_start_time"` SimulatedTimeOffsets []int `json:"simulated_time_offsets"` SimulatedTimeMultiplier int `json:"simulated_time_multiplier"` }
type SpectatorSubSessionIDs ¶ added in v0.1.6
type SpectatorSubSessionIDsDetail ¶ added in v0.3.3
type SpectatorSubSessionIDsDetail struct { Success bool `json:"success"` EventTypes []int `json:"event_types"` SeasonIDs []int `json:"season_ids"` Subsessions []SpectatorSubSessionIDsDetailSubsession `json:"subsessions"` }
type SpectatorSubSessionIDsDetailSubsession ¶ added in v0.3.3
type SpectatorSubSessionIDsOption ¶ added in v0.1.6
type Track ¶
type Track struct { AiEnabled bool `json:"ai_enabled"` AllowPitlaneCollisions bool `json:"allow_pitlane_collisions"` AllowRollingStart bool `json:"allow_rolling_start"` AllowStandingStart bool `json:"allow_standing_start"` AwardExempt bool `json:"award_exempt"` Category string `json:"category"` CategoryID int `json:"category_id"` Closes string `json:"closes"` ConfigName string `json:"config_name,omitempty"` CornersPerLap int `json:"corners_per_lap"` Created time.Time `json:"created"` FirstSale time.Time `json:"first_sale"` FreeWithSubscription bool `json:"free_with_subscription"` FullyLit bool `json:"fully_lit"` GridStalls int `json:"grid_stalls"` HasOptPath bool `json:"has_opt_path"` HasShortParadeLap bool `json:"has_short_parade_lap"` HasStartZone bool `json:"has_start_zone"` HasSvgMap bool `json:"has_svg_map"` IsDirt bool `json:"is_dirt"` IsOval bool `json:"is_oval"` IsPsPurchasable bool `json:"is_ps_purchasable"` LapScoring int `json:"lap_scoring"` Latitude float64 `json:"latitude"` Location string `json:"location"` Longitude float64 `json:"longitude"` MaxCars int `json:"max_cars"` NightLighting bool `json:"night_lighting"` NominalLapTime float64 `json:"nominal_lap_time"` NumberPitStalls int `json:"number_pitstalls"` Opens string `json:"opens"` PackageID int `json:"package_id"` PitRoadSpeedLimit int `json:"pit_road_speed_limit,omitempty"` Price float64 `json:"price"` PriceDisplay string `json:"price_display,omitempty"` Priority int `json:"priority"` Purchasable bool `json:"purchasable"` QualifyLaps int `json:"qualify_laps"` RestartOnLeft bool `json:"restart_on_left"` Retired bool `json:"retired"` SearchFilters string `json:"search_filters"` SiteURL string `json:"site_url,omitempty"` Sku int `json:"sku"` SoloLaps int `json:"solo_laps"` StartOnLeft bool `json:"start_on_left"` SupportsGripCompound bool `json:"supports_grip_compound"` TechTrack bool `json:"tech_track"` TimeZone string `json:"time_zone"` TrackConfigLength float64 `json:"track_config_length"` TrackDirPath string `json:"track_dirpath"` TrackID int `json:"track_id"` TrackName string `json:"track_name"` TrackTypes []TrackType `json:"track_types"` Banking string `json:"banking,omitempty"` }
type TrackAssets ¶ added in v0.1.13
type TrackAssets struct { Coordinates string `json:"coordinates"` Detail *string `json:"detail_copy"` DetailTechSpecs *string `json:"detail_tech_specs_copy"` DetailVideo *string `json:"detail_video"` Folder string `json:"folder"` GalleryImages string `json:"gallery_images"` GalleryPrefix string `json:"gallery_prefix"` LargeImage string `json:"large_image"` SmallImage string `json:"small_image"` Logo string `json:"logo"` North string `json:"north"` NumSvgImages int `json:"num_svg_images"` TrackID int `json:"track_id"` TrackMap string `json:"track_map"` TrackMapLayers map[string]string `json:"track_map_layers"` }
type TrackState ¶ added in v0.1.7
type TrackState struct {
LeaveMarbles bool `json:"leave_marbles"`
}
type Weather ¶ added in v0.1.7
type Weather struct { AllowFog bool `json:"allow_fog"` Fog int `json:"fog"` ForecastOptions ForecastOptions `json:"forecast_options"` PrecipOption int `json:"precip_option"` RelHumidity int `json:"rel_humidity"` SimulatedStartTime string `json:"simulated_start_time"` SimulatedStartUtcTime time.Time `json:"simulated_start_utc_time"` SimulatedTimeMultiplier int `json:"simulated_time_multiplier"` SimulatedTimeOffsets []int `json:"simulated_time_offsets"` Skies int `json:"skies"` TempUnits int `json:"temp_units"` TempValue int `json:"temp_value"` TimeOfDay int `json:"time_of_day"` Type int `json:"type"` Version int `json:"version"` WeatherSummary WeatherSummary `json:"weather_summary"` WeatherURL string `json:"weather_url"` WeatherVarInitial int `json:"weather_var_initial"` WeatherVarOngoing int `json:"weather_var_ongoing"` WindDir int `json:"wind_dir"` WindUnits int `json:"wind_units"` WindValue int `json:"wind_value"` }
type WeatherSummary ¶ added in v0.1.7
type WeatherSummary struct { MaxPrecipRate float64 `json:"max_precip_rate"` MaxPrecipRateDesc string `json:"max_precip_rate_desc"` PrecipChance float64 `json:"precip_chance"` SkiesHigh int `json:"skies_high"` SkiesLow int `json:"skies_low"` TempHigh float64 `json:"temp_high"` TempLow float64 `json:"temp_low"` TempUnits int `json:"temp_units"` WindHigh float64 `json:"wind_high"` WindLow float64 `json:"wind_low"` WindUnits int `json:"wind_units"` }
Source Files
¶
- auth.go
- authenticator.go
- authenticator_redis.go
- car.go
- car_class.go
- car_class_data.go
- car_data.go
- constant.go
- constant_data.go
- data.go
- driver.go
- err.go
- hosted.go
- hosted_data.go
- league.go
- league_data.go
- link.go
- logger.go
- options.go
- ratelimit.go
- results.go
- results_data.go
- season.go
- season_data.go
- series.go
- series_data.go
- session_data.go
- track.go
- track_data.go
Click to show internal directories.
Click to hide internal directories.