# Syntax Coloring Map For SimRacingController

# Classes & Structs (KEYWORD1)
SimRacingController	KEYWORD1
ControllerError	KEYWORD1
MatrixConfig	KEYWORD1
McpConfig	KEYWORD1
EncoderConfig	KEYWORD1

# Methods & Functions (KEYWORD2)
begin	KEYWORD2
update	KEYWORD2
tryUpdate	KEYWORD2
waitForUpdate	KEYWORD2
setMatrix	KEYWORD2
setGpio	KEYWORD2
setEncoders	KEYWORD2
setMcpDevices	KEYWORD2
setProfiles	KEYWORD2
setDebounceTime	KEYWORD2
setPowerSaveTimeout	KEYWORD2
enablePowerSave	KEYWORD2
disablePowerSave	KEYWORD2
isPowerSaveEnabled	KEYWORD2
setEncoderDivisor	KEYWORD2
setEncoderPosition	KEYWORD2
setProfile	KEYWORD2
setMatrixCallback	KEYWORD2
setGpioCallback	KEYWORD2
setEncoderCallback	KEYWORD2
setEncoderButtonCallback	KEYWORD2
setMcpCallback	KEYWORD2
setErrorCallback	KEYWORD2
getProfile	KEYWORD2
getEncoderPosition	KEYWORD2
getEncoderDirection	KEYWORD2
getEncoderSpeed	KEYWORD2
getMatrixState	KEYWORD2
getGpioState	KEYWORD2
getMcpState	KEYWORD2
isEncoderValid	KEYWORD2
getEncoderButtonState	KEYWORD2
isInPowerSave	KEYWORD2
isUpdateInProgress	KEYWORD2
getLastError	KEYWORD2
clearError	KEYWORD2
sleep	KEYWORD2
wake	KEYWORD2
validateConfiguration	KEYWORD2
validatePins	KEYWORD2

# Constants (LITERAL1)
MAX_MCP_DEVICES	LITERAL1
I2C_TIMEOUT_MS	LITERAL1
MIN_POWER_SAVE_MS	LITERAL1
MAX_POWER_SAVE_MS	LITERAL1
MAX_ERROR_COUNT	LITERAL1

# MCP23017 Registers (LITERAL1)
MCP23017_IODIRA	LITERAL1
MCP23017_IODIRB	LITERAL1
MCP23017_IPOLA	LITERAL1
MCP23017_IPOLB	LITERAL1
MCP23017_GPINTENA	LITERAL1
MCP23017_GPINTENB	LITERAL1
MCP23017_DEFVALA	LITERAL1
MCP23017_DEFVALB	LITERAL1
MCP23017_INTCONA	LITERAL1
MCP23017_INTCONB	LITERAL1
MCP23017_IOCONA	LITERAL1
MCP23017_IOCONB	LITERAL1
MCP23017_GPPUA	LITERAL1
MCP23017_GPPUB	LITERAL1
MCP23017_INTFA	LITERAL1
MCP23017_INTFB	LITERAL1
MCP23017_INTCAPA	LITERAL1
MCP23017_INTCAPB	LITERAL1
MCP23017_GPIOA	LITERAL1
MCP23017_GPIOB	LITERAL1

# Error Codes (LITERAL1)
NO_ERROR	LITERAL1
INVALID_PIN	LITERAL1
PIN_CONFLICT	LITERAL1
INVALID_CONFIG	LITERAL1
ENCODER_MALFUNCTION	LITERAL1
MCP_ERROR	LITERAL1
I2C_ERROR	LITERAL1
TIMEOUT_ERROR	LITERAL1

# Callback Types (KEYWORD1)
MatrixCallback	KEYWORD1
GpioCallback	KEYWORD1
EncoderCallback	KEYWORD1
EncoderButtonCallback	KEYWORD1
McpCallback	KEYWORD1
