Documentation
¶
Index ¶
- Variables
- func EncodeSettingsINI(w io.Writer, v any) error
- func RegisterSink(o SinkOpener, scheme string, schemes ...string)
- func ResolveSessionCSV(opts ...ResolveSessionCSVOpt) (string, error)
- func ResolveSettingsINI(opts ...ResolveSettingsINIOpt) (string, error)
- type AudioSettings
- type EditorSettings
- type MiscSettings
- type NetworkSettings
- type ProfileControllerSettings
- type ProfileGameSettings
- type ProfileSettings
- type Race
- type ResolveSessionCSVOpt
- type ResolveSessionCSVOpts
- type ResolveSettingsINIOpt
- type ResolveSettingsINIOpts
- type Result
- type Score
- type ScoreSessionOpt
- type ScoreSessionOpts
- type Session
- type Settings
- type Sink
- type SinkOpener
- type UpdateSessionOpt
- type UpdateSessionOpts
- type VideoSettings
Constants ¶
This section is empty.
Variables ¶
View Source
var ( FlatpakPrefPath = func() string { home, err := os.UserHomeDir() if err != nil { panic(err) } return filepath.Join(home, ".var", "app", "org.rvgl.rvmm/data/rvmm/save") }() SystemPrefPath = func() string { home, err := os.UserHomeDir() if err != nil { panic(err) } return filepath.Join(home, ".local", "share", "RVGL") }() DefaultPrefPathList = func() string { return strings.Join([]string{SystemPrefPath, FlatpakPrefPath}, string(os.PathListSeparator)) }() )
Functions ¶
func RegisterSink ¶
func RegisterSink(o SinkOpener, scheme string, schemes ...string)
func ResolveSessionCSV ¶
func ResolveSessionCSV(opts ...ResolveSessionCSVOpt) (string, error)
func ResolveSettingsINI ¶ added in v0.5.0
func ResolveSettingsINI(opts ...ResolveSettingsINIOpt) (string, error)
Types ¶
type AudioSettings ¶ added in v0.5.0
type EditorSettings ¶ added in v0.5.0
type MiscSettings ¶ added in v0.5.0
type NetworkSettings ¶ added in v0.5.0
type ProfileControllerSettings ¶ added in v0.5.0
type ProfileControllerSettings struct {
Joystick int `toml:"Joystick" ini:"Joystick"`
ForceFeedback int `toml:"ForceFeedback" ini:"ForceFeedback"`
NonLinearSteering int `toml:"NonLinearSteering" ini:"NonLinearSteering"`
SteeringDeadzone int `toml:"SteeringDeadzone" ini:"SteeringDeadzone"`
SteeringRange int `toml:"SteeringRange" ini:"SteeringRange"`
ButtonOpacity int `toml:"ButtonOpacity" ini:"ButtonOpacity"`
KeyLeft uint32 `toml:"KeyLeft" ini:"KeyLeft"`
KeyRight uint32 `toml:"KeyRight" ini:"KeyRight"`
KeyFwd uint32 `toml:"KeyFwd" ini:"KeyFwd"`
KeyBack uint32 `toml:"KeyBack" ini:"KeyBack"`
KeyFire uint32 `toml:"KeyFire" ini:"KeyFire"`
KeyReset uint32 `toml:"KeyReset" ini:"KeyReset"`
KeyReposition uint32 `toml:"KeyReposition" ini:"KeyReposition"`
KeyHonka uint32 `toml:"KeyHonka" ini:"KeyHonka"`
KeyChangeCamera uint32 `toml:"KeyChangeCamera" ini:"KeyChangeCamera"`
KeyRearView uint32 `toml:"KeyRearView" ini:"KeyRearView"`
KeyPause uint32 `toml:"KeyPause" ini:"KeyPause"`
}
type ProfileGameSettings ¶ added in v0.5.0
type ProfileGameSettings struct {
Pickups int `toml:"Pickups" ini:"Pickups"`
NCars int `toml:"NCars" ini:"NCars"`
NLaps int `toml:"NLaps" ini:"NLaps"`
PlayMode int `toml:"PlayMode" ini:"PlayMode"`
Language string `toml:"Language" ini:"Language"`
LevelDir string `toml:"LevelDir" ini:"LevelDir"`
PlayerName1 string `toml:"PlayerName1" ini:"PlayerName1"`
CarDir1 string `toml:"CarDir1" ini:"CarDir1"`
PlayerName2 string `toml:"PlayerName2" ini:"PlayerName2"`
CarDir2 string `toml:"CarDir2" ini:"CarDir2"`
PlayerName3 string `toml:"PlayerName3" ini:"PlayerName3"`
CarDir3 string `toml:"CarDir3" ini:"CarDir3"`
PlayerName4 string `toml:"PlayerName4" ini:"PlayerName4"`
CarDir4 string `toml:"CarDir4" ini:"CarDir4"`
SpeedUnits int `toml:"SpeedUnits" ini:"SpeedUnits"`
LocalCamera int `toml:"LocalCamera" ini:"LocalCamera"`
DrawRearView int `toml:"DrawRearView" ini:"DrawRearView"`
AnimateRearView int `toml:"AnimateRearView" ini:"AnimateRearView"`
RearViewType int `toml:"RearViewType" ini:"RearViewType"`
GhostType int `toml:"GhostType" ini:"GhostType"`
ShowGhost int `toml:"ShowGhost" ini:"ShowGhost"`
CatchUp int `toml:"CatchUp" ini:"CatchUp"`
CupDC int `toml:"CupDC" ini:"CupDC"`
Difficulty int `toml:"Difficulty" ini:"Difficulty"`
BattleTagTime int `toml:"BattleTagTime" ini:"BattleTagTime"`
NumberOfPlayers int `toml:"NumberOfPlayers" ini:"NumberOfPlayers"`
MultiPlayerCPU int `toml:"MultiPlayerCPU" ini:"MultiPlayerCPU"`
FinalLapMsg int `toml:"FinalLapMsg" ini:"FinalLapMsg"`
FinalCam int `toml:"FinalCam" ini:"FinalCam"`
WeaponCam int `toml:"WeaponCam" ini:"WeaponCam"`
RandomSkins int `toml:"RandomSkins" ini:"RandomSkins"`
}
type ProfileSettings ¶ added in v0.5.0
type ProfileSettings struct {
Game ProfileGameSettings `toml:"Game" ini:"Game"`
Controller1 ProfileControllerSettings `toml:"Controller1" ini:"Controller1"`
Controller2 ProfileControllerSettings `toml:"Controller2" ini:"Controller2"`
Controller3 ProfileControllerSettings `toml:"Controller3" ini:"Controller3"`
Controller4 ProfileControllerSettings `toml:"Controller4" ini:"Controller4"`
}
func DecodeProfileSettingsINI ¶ added in v0.5.0
func DecodeProfileSettingsINI(r io.Reader) (*ProfileSettings, error)
type ResolveSessionCSVOpt ¶
type ResolveSessionCSVOpt interface {
Apply(*ResolveSessionCSVOpts)
}
type ResolveSessionCSVOpts ¶
func (*ResolveSessionCSVOpts) Apply ¶
func (o *ResolveSessionCSVOpts) Apply(opts *ResolveSessionCSVOpts)
type ResolveSettingsINIOpt ¶ added in v0.5.0
type ResolveSettingsINIOpt interface {
Apply(*ResolveSettingsINIOpts)
}
type ResolveSettingsINIOpts ¶ added in v0.5.0
func (*ResolveSettingsINIOpts) Apply ¶ added in v0.5.0
func (o *ResolveSettingsINIOpts) Apply(opts *ResolveSettingsINIOpts)
type Score ¶
func ScoreSession ¶
func ScoreSession(session *Session, opts ...ScoreSessionOpt) []Score
type ScoreSessionOpt ¶
type ScoreSessionOpt interface {
Apply(*ScoreSessionOpts)
}
type ScoreSessionOpts ¶
type ScoreSessionOpts struct {
IncludeAI bool
Interval int
ExtraPointsPerRace int
ExcludeRaces int
Handicap map[string]int
Multipliers map[string]float64
}
func (*ScoreSessionOpts) Apply ¶
func (o *ScoreSessionOpts) Apply(opts *ScoreSessionOpts)
type Session ¶
type Settings ¶ added in v0.5.0
type Settings struct {
Video VideoSettings `toml:"Video" ini:"Video"`
Audio AudioSettings `toml:"Audio" ini:"Audio"`
Network NetworkSettings `toml:"Network" ini:"Network"`
Editor EditorSettings `toml:"Editor" ini:"Editor"`
Misc MiscSettings `toml:"Misc" ini:"Misc"`
}
type Sink ¶
type Sink interface {
UpdateSession(context.Context, *Session, ...UpdateSessionOpt) error
}
type UpdateSessionOpt ¶ added in v0.2.0
type UpdateSessionOpt interface {
Apply(*UpdateSessionOpts)
}
type UpdateSessionOpts ¶ added in v0.2.0
type UpdateSessionOpts struct {
Final bool
ScoreSessionOpts *ScoreSessionOpts
}
func (*UpdateSessionOpts) Apply ¶ added in v0.2.0
func (o *UpdateSessionOpts) Apply(opts *UpdateSessionOpts)
type VideoSettings ¶ added in v0.5.0
type VideoSettings struct {
EnvLevel int `toml:"EnvLevel" ini:"EnvLevel"`
ParticleLevel int `toml:"ParticleLevel" ini:"ParticleLevel"`
MirrorFlag int `toml:"MirrorFlag" ini:"MirrorFlag"`
ShadowFlag int `toml:"ShadowFlag" ini:"ShadowFlag"`
LightFlag int `toml:"LightFlag" ini:"LightFlag"`
RippleFlag int `toml:"RippleFlag" ini:"RippleFlag"`
InstanceFlag int `toml:"InstanceFlag" ini:"InstanceFlag"`
SkidFlag int `toml:"SkidFlag" ini:"SkidFlag"`
EffectFlag int `toml:"EffectFlag" ini:"EffectFlag"`
ScreenWidth int `toml:"ScreenWidth" ini:"ScreenWidth"`
ScreenHeight int `toml:"ScreenHeight" ini:"ScreenHeight"`
ScreenBpp int `toml:"ScreenBpp" ini:"ScreenBpp"`
ScreenHz int `toml:"ScreenHz" ini:"ScreenHz"`
Orientation int `toml:"Orientation" ini:"Orientation"`
Brightness int `toml:"Brightness" ini:"Brightness"`
Contrast int `toml:"Contrast" ini:"Contrast"`
DrawDist int `toml:"DrawDist" ini:"DrawDist"`
Texture32 int `toml:"Texture32" ini:"Texture32"`
Vsync int `toml:"Vsync" ini:"Vsync"`
ShowFPS int `toml:"ShowFPS" ini:"ShowFPS"`
LimitFPS int `toml:"LimitFPS" ini:"LimitFPS"`
LimitLatency int `toml:"LimitLatency" ini:"LimitLatency"`
CenterHud int `toml:"CenterHud" ini:"CenterHud"`
SplitScreenMode int `toml:"SplitScreenMode" ini:"SplitScreenMode"`
MaintainAspect int `toml:"MaintainAspect" ini:"MaintainAspect"`
TextureFilter int `toml:"TextureFilter" ini:"TextureFilter"`
MipmapFilter int `toml:"MipmapFilter" ini:"MipmapFilter"`
Anisotropy int `toml:"Anisotropy" ini:"Anisotropy"`
Antialias int `toml:"Antialias" ini:"Antialias"`
GenerateMipmaps int `toml:"GenerateMipmaps" ini:"GenerateMipmaps"`
CompressTextures int `toml:"CompressTextures" ini:"CompressTextures"`
Threaded int `toml:"Threaded" ini:"Threaded"`
Profile int `toml:"Profile" ini:"Profile"`
Shaders int `toml:"Shaders" ini:"Shaders"`
ShaderLights int `toml:"ShaderLights" ini:"ShaderLights"`
ShaderShadows int `toml:"ShaderShadows" ini:"ShaderShadows"`
ShaderEffects int `toml:"ShaderEffects" ini:"ShaderEffects"`
EnableFBO int `toml:"EnableFBO" ini:"EnableFBO"`
EnableUBO int `toml:"EnableUBO" ini:"EnableUBO"`
EnableSSO int `toml:"EnableSSO" ini:"EnableSSO"`
SortLevel int `toml:"SortLevel" ini:"SortLevel"`
Compositor int `toml:"Compositor" ini:"Compositor"`
HighDPI int `toml:"HighDPI" ini:"HighDPI"`
}
Click to show internal directories.
Click to hide internal directories.
