#######################################
# Syntax Coloring Map For Zigbee
#######################################

#######################################
# Datatypes (KEYWORD1)
#######################################

# Base Classes
ZigbeeCore	KEYWORD1
Zigbee	KEYWORD1
ZigbeeEP	KEYWORD1

# Endpoint Classes
ZigbeeAnalog	KEYWORD1
ZigbeeBinary	KEYWORD1
ZigbeeCarbonDioxideSensor	KEYWORD1
ZigbeeColorDimmableLight	KEYWORD1
ZigbeeColorDimmerSwitch	KEYWORD1
ZigbeeContactSwitch	KEYWORD1
ZigbeeDimableLight	KEYWORD1
ZigbeeDoorWindowHandle	KEYWORD1
ZigbeeElectricalMeasurement	KEYWORD1
ZigbeeFanControl	KEYWORD1
ZigbeeFlowSensor	KEYWORD1
ZigbeeGateway	KEYWORD1
ZigbeeIlluminanceSensor	KEYWORD1
ZigbeeLight	KEYWORD1
ZigbeeMultistate	KEYWORD1
ZigbeeOccupancySensor	KEYWORD1
ZigbeePM25Sensor	KEYWORD1
ZigbeePowerOutlet	KEYWORD1
ZigbeePressureSensor	KEYWORD1
ZigbeeRangeExtender	KEYWORD1
ZigbeeSwitch	KEYWORD1
ZigbeeTempSensor	KEYWORD1
ZigbeeThermostat	KEYWORD1
ZigbeeVibrationSensor	KEYWORD1
ZigbeeWindowCovering	KEYWORD1
ZigbeeWindSpeedSensor	KEYWORD1

# Other
zigbee_role_t	KEYWORD1
zbstring_t	KEYWORD1
zb_device_params_t	KEYWORD1
zigbee_scan_result_t	KEYWORD1
zb_power_source_t	KEYWORD1
ZigbeeWindowCoveringType	KEYWORD1
ZigbeeFanMode	KEYWORD1
ZigbeeFanModeSequence	KEYWORD1
zb_cmd_type_t	KEYWORD1
ZigbeeColorMode	KEYWORD1

#######################################
# Methods and Functions (KEYWORD2)
#######################################

# ZigbeeCore
begin	KEYWORD2
start	KEYWORD2
stop	KEYWORD2
started	KEYWORD2
connected	KEYWORD2
getRole	KEYWORD2
addEndpoint	KEYWORD2
setRadioConfig	KEYWORD2
getRadioConfig	KEYWORD2
setHostConfig	KEYWORD2
getHostConfig	KEYWORD2
setPrimaryChannelMask	KEYWORD2
setScanDuration	KEYWORD2
getScanDuration	KEYWORD2
setRebootOpenNetwork	KEYWORD2
openNetwork	KEYWORD2
scanNetworks	KEYWORD2
scanComplete	KEYWORD2
getScanResult	KEYWORD2
scanDelete	KEYWORD2
factoryReset	KEYWORD2
allowMultiEndpointBinding	KEYWORD2

# Common ZigbeeEP
setEpConfig	KEYWORD2
setVersion	KEYWORD2
getEndpoint	KEYWORD2
printBoundDevices	KEYWORD2
getBoundDevices	KEYWORD2
bound	KEYWORD2
allowMultipleBinding	KEYWORD2
setManualBinding	KEYWORD2
setManufacturerAndModel	KEYWORD2
setPowerSource	KEYWORD2
setBatteryPercentage	KEYWORD2
reportBatteryPercentage	KEYWORD2
readManufacturer	KEYWORD2
readModel	KEYWORD2
onIdentify	KEYWORD2
addTimeCluster	KEYWORD2
setTime	KEYWORD2
setTimezone	KEYWORD2
getTime	KEYWORD2
getTimezone	KEYWORD2
addOTAClient	KEYWORD2
clearBoundDevices	KEYWORD2
onDefaultResponse	KEYWORD2

# ZigbeeLight + ZigbeeColorDimmableLight
restoreLight	KEYWORD2
setLight	KEYWORD2
setLightState	KEYWORD2
setLightLevel	KEYWORD2
setLightColor	KEYWORD2
setLightColorTemperature	KEYWORD2
setLightColorCapabilities	KEYWORD2
setLightColorTemperatureRange	KEYWORD2
getLightState	KEYWORD2
getLightLevel	KEYWORD2
getLightRed	KEYWORD2
getLightGreen	KEYWORD2
getLightBlue	KEYWORD2
getLightColorTemperature	KEYWORD2
getLightColorMode	KEYWORD2
getLightColorHue	KEYWORD2
getLightColorSaturation	KEYWORD2
getLightColorCapabilities	KEYWORD2
onLightChange	KEYWORD2
onLightChangeRgb	KEYWORD2
onLightChangeHsv	KEYWORD2
onLightChangeTemp	KEYWORD2
onLightColorChangeWithSource	KEYWORD2
onLightLevelChange	KEYWORD2
onLightLevelChangeWithSource	KEYWORD2
onLightStateChange	KEYWORD2
onLightStateChangeWithSource	KEYWORD2

# ZigbeeSwitch + ZigbeeColorDimmerSwitch
lightToggle	KEYWORD2
lightOn	KEYWORD2
lightOff	KEYWORD2
lightOffWithEffect	KEYWORD2
lightOnWithTimedOff	KEYWORD2
lightOnWithSceneRecall	KEYWORD2
setLightLevel	KEYWORD2
setLightColor	KEYWORD2
getLightState	KEYWORD2
getLightLevel	KEYWORD2
getLightColor	KEYWORD2
onLightStateChange	KEYWORD2
onLightStateChangeWithSource	KEYWORD2
onLightLevelChange	KEYWORD2
onLightLevelChangeWithSource	KEYWORD2
onLightColorChange	KEYWORD2
onLightColorChangeWithSource	KEYWORD2

# ZigbeeThermostat
onTempRecieve	KEYWORD2
onTempReceiveWithSource	KEYWORD2
onTempConfigReceive	KEYWORD2
getTemperature	KEYWORD2
getTemperatureSettings	KEYWORD2
setTemperatureReporting	KEYWORD2
onHumidityReceive	KEYWORD2
onHumidityReceiveWithSource	KEYWORD2
onHumidityConfigReceive	KEYWORD2
getHumidity	KEYWORD2
getHumiditySettings	KEYWORD2
setHumidityReporting	KEYWORD2

# Common Zigbee Sensor
setMinMaxValue	KEYWORD2
setTolerance	KEYWORD2
setReporting	KEYWORD2
report	KEYWORD2

# ZigbeeTempSensor + humidity
setTemperature	KEYWORD2
reportTemperature	KEYWORD2
addHumiditySensor	KEYWORD2
setHumidity	KEYWORD2
setHumidityReporting	KEYWORD2
reportHumidity	KEYWORD2

# ZigbeeIlluminanceSensor
setIlluminance	KEYWORD2

# ZigbeeFlowSensor
setFlow	KEYWORD2

# ZigbeePressureSensor
setPressure	KEYWORD2

# ZigbeeOccupancySensor
setOccupancy	KEYWORD2
setSensorType	KEYWORD2

# ZigbeeCarbonDioxideSensor
setCarbonDioxide	KEYWORD2

# ZigbeeAnalog
addAnalogInput	KEYWORD2
addAnalogOutput	KEYWORD2
onAnalogOutputChange	KEYWORD2
setAnalogInput	KEYWORD2
setAnalogOutput	KEYWORD2
getAnalogOutput	KEYWORD2
reportAnalogInput	KEYWORD2
reportAnalogOutput	KEYWORD2
setAnalogInputReporting	KEYWORD2
setAnalogInputApplication	KEYWORD2
setAnalogInputDescription	KEYWORD2
setAnalogInputResolution	KEYWORD2
setAnalogOutputApplication	KEYWORD2
setAnalogOutputDescription	KEYWORD2
setAnalogOutputResolution	KEYWORD2

# ZigbeeCarbonDioxideSensor
setCarbonDioxide	KEYWORD2

# ZigbeeContactSwitch + ZigbeeDoorWindowHandle
setIASClientEndpoint	KEYWORD2
setClosed	KEYWORD2
setOpen	KEYWORD2
setTilted	KEYWORD2
requestIASZoneEnroll	KEYWORD2
restoreIASZoneEnroll	KEYWORD2
enrolled	KEYWORD2

# ZigbeeVibrationSensor
setVibration	KEYWORD2

# ZigbeeWindowCovering
onOpen	KEYWORD2
onClose	KEYWORD2
onGoToLiftPercentage	KEYWORD2
onGoToTiltPercentage	KEYWORD2
onStop	KEYWORD2
setLiftPosition	KEYWORD2
setLiftPercentage	KEYWORD2
setTiltPosition	KEYWORD2
setTiltPercentage	KEYWORD2
setCoveringType	KEYWORD2
setConfigStatus	KEYWORD2
setMode	KEYWORD2
setLimits	KEYWORD2

# ZigbeeBinary
addBinaryInput	KEYWORD2
addBinaryOutput	KEYWORD2
onBinaryOutputChange	KEYWORD2
setBinaryInput	KEYWORD2
setBinaryOutput	KEYWORD2
getBinaryOutput	KEYWORD2
reportBinaryInput	KEYWORD2
reportBinaryOutput	KEYWORD2
setBinaryInputApplication	KEYWORD2
setBinaryInputDescription	KEYWORD2
setBinaryOutputApplication	KEYWORD2
setBinaryOutputDescription	KEYWORD2

# ZigbeeFanControl
setFanModeSequence	KEYWORD2
getFanMode	KEYWORD2
getFanModeSequence	KEYWORD2
onFanModeChange	KEYWORD2

# ZigbeeMultistate
addMultistateInput	KEYWORD2
addMultistateOutput	KEYWORD2
onMultistateOutputChange	KEYWORD2
setMultistateInput	KEYWORD2
getMultistateInput	KEYWORD2
setMultistateOutput	KEYWORD2
getMultistateOutput	KEYWORD2
reportMultistateInput	KEYWORD2
reportMultistateOutput	KEYWORD2
setMultistateInputApplication	KEYWORD2
setMultistateInputDescription	KEYWORD2
setMultistateInputStates	KEYWORD2
setMultistateOutputApplication	KEYWORD2
setMultistateOutputDescription	KEYWORD2
setMultistateOutputStates	KEYWORD2
#getMultistateInputStateNames	KEYWORD2
getMultistateInputStateNamesLength	KEYWORD2
#getMultistateOutputStateNames	KEYWORD2
getMultistateOutputStateNamesLength	KEYWORD2

#######################################
# Constants (LITERAL1)
#######################################

ZIGBEE_COORDINATOR	LITERAL1
ZIGBEE_ROUTER	LITERAL1
ZIGBEE_END_DEVICE	LITERAL1
ZIGBEE_DEFAULT_ED_CONFIG	LITERAL1
ZIGBEE_DEFAULT_ROUTER_CONFIG	LITERAL1
ZIGBEE_DEFAULT_COORDINATOR_CONFIG	LITERAL1
ZIGBEE_DEFAULT_RADIO_CONFIG	LITERAL1
ZIGBEE_DEFAULT_UART_RCP_RADIO_CONFIG	LITERAL1
ZIGBEE_DEFAULT_HOST_CONFIG	LITERAL1
ZB_ARRAY_LENGHT	LITERAL1

# ZigbeeMultistate
ZB_MULTISTATE_APPLICATION_TYPE_0_INDEX	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_0_NUM_STATES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_0_STATE_NAMES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_1_INDEX	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_1_NUM_STATES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_1_STATE_NAMES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_2_INDEX	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_2_NUM_STATES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_2_STATE_NAMES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_3_INDEX	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_3_NUM_STATES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_3_STATE_NAMES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_4_INDEX	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_4_NUM_STATES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_4_STATE_NAMES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_5_INDEX	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_5_NUM_STATES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_5_STATE_NAMES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_6_INDEX	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_6_NUM_STATES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_6_STATE_NAMES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_7_INDEX	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_7_NUM_STATES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_7_STATE_NAMES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_8_INDEX	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_8_NUM_STATES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_8_STATE_NAMES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_9_INDEX	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_9_NUM_STATES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_9_STATE_NAMES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_10_INDEX	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_10_NUM_STATES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_10_STATE_NAMES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_11_INDEX	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_11_NUM_STATES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_11_STATE_NAMES	LITERAL1
ZB_MULTISTATE_APPLICATION_TYPE_OTHER_INDEX	LITERAL1

#ZigbeeColorDimmableLight
ZIGBEE_COLOR_CAPABILITY_HUE_SATURATION	LITERAL1
ZIGBEE_COLOR_CAPABILITY_ENHANCED_HUE	LITERAL1
ZIGBEE_COLOR_CAPABILITY_COLOR_LOOP	LITERAL1
ZIGBEE_COLOR_CAPABILITY_X_Y	LITERAL1
ZIGBEE_COLOR_CAPABILITY_COLOR_TEMP	LITERAL1
ZIGBEE_COLOR_MODE_HUE_SATURATION	LITERAL1
ZIGBEE_COLOR_MODE_CURRENT_X_Y	LITERAL1
ZIGBEE_COLOR_MODE_TEMPERATURE	LITERAL1
