# Astruino syntax coloring

# Controller and core types
Astruino	KEYWORD1
AstroObject	KEYWORD1
AstroSubObject	KEYWORD1
AstroIdentity	KEYWORD1
AstroObjectData	KEYWORD1
AstroObjectLink	KEYWORD1
AstroFactory	KEYWORD1
AstroScheduler	KEYWORD1
AstroLogger	KEYWORD1
AstroPublisher	KEYWORD1

# Coordinates and astronomy data
AstroEquatorialCoordinates	KEYWORD1
AstroHorizontalCoordinates	KEYWORD1
AstroObserver	KEYWORD1
AstroTargetData	KEYWORD1
AstroTargetsLibraryBook	KEYWORD1
AstroTargetsLibrary	KEYWORD1
AstroAxisState	KEYWORD1

# Activations and attachments
AstroActivation	KEYWORD1
AstroActivationHandle	KEYWORD1
AstroAttachment	KEYWORD1
AstroActuatorAttachment	KEYWORD1
AstroSensorAttachment	KEYWORD1
AstroAxisDriverAttachment	KEYWORD1
AstroMountAttachment	KEYWORD1
AstroRailAttachment	KEYWORD1
AstroTriggerAttachment	KEYWORD1
AstroObservationDeviceAttachment	KEYWORD1

# Measurements and pins
AstroMeasurement	KEYWORD1
AstroSingleMeasurement	KEYWORD1
AstroBinaryMeasurement	KEYWORD1
AstroDoubleMeasurement	KEYWORD1
AstroTripleMeasurement	KEYWORD1
AstroMeasurementData	KEYWORD1
AstroPin	KEYWORD1
AstroDigitalPin	KEYWORD1
AstroAnalogPin	KEYWORD1
AstroPinData	KEYWORD1
AstroPinMuxer	KEYWORD1

# Drivers, actuators, and sensors
AstroAxisDriver	KEYWORD1
AstroCallbackAxisDriver	KEYWORD1
AstroServoAxisDriver	KEYWORD1
AstroActuator	KEYWORD1
AstroCallbackActuator	KEYWORD1
AstroDigitalActuator	KEYWORD1
AstroAnalogActuator	KEYWORD1
AstroFocuser	KEYWORD1
AstroSensor	KEYWORD1
AstroValueSensor	KEYWORD1
AstroCallbackSensor	KEYWORD1
AstroDigitalSensor	KEYWORD1
AstroAnalogSensor	KEYWORD1

# Mount, cover, camera, thermal, and rails
AstroMount	KEYWORD1
AstroCover	KEYWORD1
AstroObservationDevice	KEYWORD1
AstroCameraTrigger	KEYWORD1
AstroThermalReadings	KEYWORD1
AstroThermalOutputs	KEYWORD1
AstroThermalBalancer	KEYWORD1
AstroRail	KEYWORD1

# Triggers and modules
AstroTrigger	KEYWORD1
AstroThresholdTrigger	KEYWORD1
AstroRangeTrigger	KEYWORD1
AstroModule	KEYWORD1
AstroTimeProvider	KEYWORD1
AstroLocationProvider	KEYWORD1
AstroManualTimeProvider	KEYWORD1
AstroFixedLocationProvider	KEYWORD1
AstroCallbackTimeProvider	KEYWORD1
AstroCallbackLocationProvider	KEYWORD1

# Scheduler, logger, and publisher data
AstroSchedulerConfig	KEYWORD1
AstroSchedulerSubData	KEYWORD1
AstroLogEvent	KEYWORD1
AstroLoggerSubData	KEYWORD1
AstroDataColumn	KEYWORD1
AstroPublisherSubData	KEYWORD1

# Public enum types
Astro_SystemMode	KEYWORD1
Astro_MeasurementMode	KEYWORD1
Astro_DirectionMode	KEYWORD1
Astro_EnableMode	KEYWORD1
Astro_ActuatorType	KEYWORD1
Astro_SensorType	KEYWORD1
Astro_MountType	KEYWORD1
Astro_RailType	KEYWORD1
Astro_PinMode	KEYWORD1
Astro_UnitsCategory	KEYWORD1
Astro_UnitsType	KEYWORD1
Astro_TargetId	KEYWORD1
Astro_TargetClass	KEYWORD1
Astro_ThermalMode	KEYWORD1
Astro_SchedulerStage	KEYWORD1
Astro_LogLevel	KEYWORD1
Astro_ActivationFlags	KEYWORD1

# Astronomy and conversion helpers
astroJulianDate	KEYWORD2
astroGreenwichSiderealDegrees	KEYWORD2
astroLocalSiderealDegrees	KEYWORD2
astroPrecessJ2000	KEYWORD2
astroEquatorialToHorizontal	KEYWORD2
astroNormalizeDegrees	KEYWORD2
astroNormalizeSignedDegrees	KEYWORD2
astroTargetIdToString	KEYWORD2
astroTargetIdFromString	KEYWORD2
astroLib	KEYWORD2

# Build flags and common constants
ASTRO_DISABLE_MULTITASKING	LITERAL1
ASTRO_DISABLE_GUI	LITERAL1
ASTRO_ENABLE_WIFI	LITERAL1
ASTRO_ENABLE_AT_WIFI	LITERAL1
ASTRO_ENABLE_ETHERNET	LITERAL1
ASTRO_ENABLE_MQTT	LITERAL1
ASTRO_ENABLE_GPS	LITERAL1
ASTRO_DISABLE_BUILTIN_DATA	LITERAL1
ASTRO_ENABLE_DEBUG_OUTPUT	LITERAL1
ASTRO_ENABLE_VERBOSE_DEBUG	LITERAL1
ASTRO_ENABLE_DEBUG_ASSERTIONS	LITERAL1
ASTRO_POS_SEARCH_FROMBEG	LITERAL1
ASTRO_POS_SEARCH_FROMEND	LITERAL1
