hueplusplus 1.2.0+ds-2build1
Loading...
Searching...
No Matches
hueplusplus Namespace Reference

Namespace for the hueplusplus library. More...

Namespaces

namespace  sensors
 Classes for specific sensor types.
namespace  gamut
 Predefined ColorGamuts for Hue API.
namespace  time
 Namespace for time/date related classes and functions.
namespace  utils
 Utility functions used in multiple places.

Classes

class  Action
 Action executed by the bridge, e.g. as a Schedule command. More...
class  APICache
 Caches API GET requests and refreshes regularly. More...
class  BaseDevice
 Base class for physical devices connected to the bridge (sensor or light). More...
class  BaseHttpHandler
 Base class for classes that handle http requests and multicast requests. More...
class  BridgeFinder
class  Bridge
 Bridge class for a bridge. More...
struct  Version
 API version consisting of major, minor and patch version. More...
struct  WhitelistedUser
 User that is whitelisted for Hue API usage. More...
class  BridgeConfig
 General bridge configuration properties. More...
class  BrightnessStrategy
 Virtual base class for all BrightnessStrategies. More...
class  ColorHueStrategy
 Virtual base class for all ColorHueStrategies. More...
class  ColorTemperatureStrategy
 Virtual base class for all ColorTemperatureStrategies. More...
struct  HueSaturation
 Color in hue and saturation. More...
struct  XY
 Color in CIE x and y coordinates. More...
struct  XYBrightness
 Color and brightness in CIE. More...
struct  ColorGamut
 Triangle of representable colors in CIE. More...
struct  RGB
 Color in RGB. More...
class  Condition
 Condition for a Rule. More...
class  EntertainmentMode
 Class for Hue Entertainment Mode. More...
class  ExtendedColorHueStrategy
class  ExtendedColorTemperatureStrategy
 Class implementing the functions of ColorTemperatureStrategy. More...
class  Group
 Class for Groups of lights. More...
class  CreateGroup
 Parameters necessary for creating a new Group. More...
class  HueCommandAPI
class  LightFactory
struct  FileInfo
 Contains information about error location, use CURRENT_FILE_INFO to create. More...
class  HueException
 Exception class with file information. Base class of all custom exception classes. More...
class  HueAPIResponseException
 Exception caused by a Hue API "error" response with additional information. More...
class  IHttpHandler
 Abstract class for classes that handle http requests and multicast requests. More...
class  Config
 Configurable delays. More...
class  Light
 Class for Hue Light fixtures. More...
class  LinHttpHandler
 Class to handle http requests and multicast requests on linux systems. More...
class  NewDeviceList
 List of new devices found during the last scan. More...
class  ResourceList
 Handles a list of a certain API resource. More...
class  SearchableResourceList
 Handles a ResourceList of physical devices which can be searched for. More...
class  CreateableResourceList
 Handles a ResourceList where Resources can be added by the user. More...
class  GroupResourceList
 Handles a group list with the special group 0. More...
class  Rule
 Rule stored in the bridge. More...
class  CreateRule
 Parameters for creating a new Rule. More...
class  LightState
 Immutable state of a light. More...
class  LightStateBuilder
 Builder to create LightState. More...
class  Scene
 Scene stored in the bridge. More...
class  CreateScene
 Parameters for creating a new Scene. More...
class  Schedule
 Schedule stored in the bridge. More...
class  CreateSchedule
 Parameters for creating a new Schedule. More...
class  Sensor
 Class for generic or unknown sensor types. More...
class  CreateSensor
 Parameters for creating a new Sensor. More...
class  SensorList
 Handles a list of Sensors with type specific getters. More...
class  SimpleBrightnessStrategy
 Class implementing the functions of BrightnessStrategy. More...
class  SimpleColorHueStrategy
class  SimpleColorTemperatureStrategy
 Class implementing the functions of ColorTemperatureStrategy. More...
class  StateTransaction
 Transaction class which can be used for either light or group state. More...
class  UPnP
 Class that looks for UPnP devices using an m-search package. More...
class  WinHttpHandler
 Class to handle http requests and multicast requests on windows systems. More...
struct  TLSContext
class  SocketCloser

Enumerations

enum class  ColorType {
  UNDEFINED , NONE , GAMUT_A , GAMUT_B ,
  GAMUT_C , TEMPERATURE , GAMUT_A_TEMPERATURE , GAMUT_B_TEMPERATURE ,
  GAMUT_C_TEMPERATURE , GAMUT_OTHER , GAMUT_OTHER_TEMPERATURE
}
 enum that specifies the color type of all HueLights More...
enum class  Alert { none , select , lselect }
 Specifies light alert modes. More...

Functions

unsigned int kelvinToMired (unsigned int kelvin)
 Const function that converts Kelvin to Mired.
unsigned int miredToKelvin (unsigned int mired)
 Const function that converts Mired to Kelvin.
std::string getPictureOfModel (const std::string &modelId)
 Get the picture name of a given model id.
std::string alertToString (Alert alert)
 Convert alert to string form.
Alert alertFromString (const std::string &s)
 Convert string to Alert enum.
std::vector< char > hexToBytes (const std::string &hex)

Variables

constexpr std::chrono::steady_clock::duration c_refreshNever = std::chrono::steady_clock::duration::max()
 Maximum duration, used to indicate that the cache should never be refreshed automatically.
constexpr uint8_t HUE_ENTERTAINMENT_HEADER_SIZE = 16
constexpr uint8_t HUE_ENTERTAINMENT_LIGHT_SIZE = 9

Detailed Description

Namespace for the hueplusplus library.

Enumeration Type Documentation

◆ Alert

enum class hueplusplus::Alert
strong

Specifies light alert modes.

Enumerator
none 

No alert.

select 

Select alert (breathe cycle).

lselect 

Long select alert (15s breathe).

◆ ColorType

enum class hueplusplus::ColorType
strong

enum that specifies the color type of all HueLights

Enumerator
UNDEFINED 

ColorType for this light is unknown or undefined.

NONE 

light has no specific ColorType

GAMUT_A 

light uses Gamut A

GAMUT_B 

light uses Gamut B

GAMUT_C 

light uses Gamut C

TEMPERATURE 

light has color temperature control

GAMUT_A_TEMPERATURE 

light uses Gamut A and has color temperature control

GAMUT_B_TEMPERATURE 

light uses Gamut B and has color temperature control

GAMUT_C_TEMPERATURE 

light uses Gamut C and has color temperature control

GAMUT_OTHER 

light uses capabilities to specify a different gamut

GAMUT_OTHER_TEMPERATURE 

light uses capabilities to specify a different gamut and has color temperature control

Function Documentation

◆ alertFromString()

Alert hueplusplus::alertFromString ( const std::string & s)

Convert string to Alert enum.

Parameters
sString representation
Returns
Alert::select or Alert::lselect when s matches, otherwise Alert::none

◆ alertToString()

std::string hueplusplus::alertToString ( Alert alert)

Convert alert to string form.

Parameters
alertEnum value
Returns
"none", "select" or "lselect"

◆ getPictureOfModel()

std::string hueplusplus::getPictureOfModel ( const std::string & modelId)

Get the picture name of a given model id.

Note
This function will only return the filename without extension, because Philips provides different file types.
Parameters
modelIdModel Id of a device to get the picture of
Returns
String that either contains the filename of the picture of the device or an empty string if it was not found.

◆ hexToBytes()

std::vector< char > hueplusplus::hexToBytes ( const std::string & hex)

◆ kelvinToMired()

unsigned int hueplusplus::kelvinToMired ( unsigned int kelvin)

Const function that converts Kelvin to Mired.

Parameters
kelvinUnsigned integer value in Kelvin
Returns
Unsigned integer value in Mired

◆ miredToKelvin()

unsigned int hueplusplus::miredToKelvin ( unsigned int mired)

Const function that converts Mired to Kelvin.

Parameters
miredUnsigned integer value in Mired
Returns
Unsigned integer value in Kelvin

Variable Documentation

◆ c_refreshNever

std::chrono::steady_clock::duration hueplusplus::c_refreshNever = std::chrono::steady_clock::duration::max()
constexpr

Maximum duration, used to indicate that the cache should never be refreshed automatically.

◆ HUE_ENTERTAINMENT_HEADER_SIZE

uint8_t hueplusplus::HUE_ENTERTAINMENT_HEADER_SIZE = 16
constexpr

◆ HUE_ENTERTAINMENT_LIGHT_SIZE

uint8_t hueplusplus::HUE_ENTERTAINMENT_LIGHT_SIZE = 9
constexpr