Contains classes which are able to change the color of a LED
Color.h@3:3d0652023458, 2016-01-18 (annotated)
- Committer:
- arnedesmet
- Date:
- Mon Jan 18 20:48:22 2016 +0000
- Revision:
- 3:3d0652023458
- Parent:
- 0:8fd12f8121c1
Documented Color.h
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
arnedesmet | 0:8fd12f8121c1 | 1 | |
arnedesmet | 0:8fd12f8121c1 | 2 | #ifndef COLOR_H |
arnedesmet | 0:8fd12f8121c1 | 3 | #define COLOR_H |
arnedesmet | 0:8fd12f8121c1 | 4 | |
arnedesmet | 3:3d0652023458 | 5 | |
arnedesmet | 3:3d0652023458 | 6 | /** |
arnedesmet | 3:3d0652023458 | 7 | * Used to manage the colors, both the hardcoded ones and those that are not hardcoded. |
arnedesmet | 3:3d0652023458 | 8 | * The ones that are not hardcoded include making colors through assigning a number between 0 and 255 |
arnedesmet | 3:3d0652023458 | 9 | * for red, green and blue, and using a hexadecimal format of an integer: 0xRRGGBB |
arnedesmet | 3:3d0652023458 | 10 | */ |
arnedesmet | 3:3d0652023458 | 11 | |
arnedesmet | 3:3d0652023458 | 12 | |
arnedesmet | 0:8fd12f8121c1 | 13 | class Color{ |
arnedesmet | 0:8fd12f8121c1 | 14 | |
arnedesmet | 0:8fd12f8121c1 | 15 | |
arnedesmet | 0:8fd12f8121c1 | 16 | int red, green, blue; |
arnedesmet | 0:8fd12f8121c1 | 17 | |
arnedesmet | 0:8fd12f8121c1 | 18 | int floatToColorValue(float value); |
arnedesmet | 0:8fd12f8121c1 | 19 | |
arnedesmet | 0:8fd12f8121c1 | 20 | static const int MAX_COLOR_VALUE = 255; |
arnedesmet | 0:8fd12f8121c1 | 21 | |
arnedesmet | 0:8fd12f8121c1 | 22 | public: |
arnedesmet | 0:8fd12f8121c1 | 23 | |
arnedesmet | 3:3d0652023458 | 24 | /** Enum with a set of hardcoded colors */ |
arnedesmet | 3:3d0652023458 | 25 | |
arnedesmet | 0:8fd12f8121c1 | 26 | enum colors {RED = 0xFF0000, |
arnedesmet | 0:8fd12f8121c1 | 27 | GREEN = 0x00FF00, |
arnedesmet | 0:8fd12f8121c1 | 28 | BLUE = 0x0000FF, |
arnedesmet | 0:8fd12f8121c1 | 29 | CYAN = 0x00FFFF, |
arnedesmet | 0:8fd12f8121c1 | 30 | MAGENTA = 0xFF00FF, |
arnedesmet | 0:8fd12f8121c1 | 31 | YELLOW = 0xFFFF00, |
arnedesmet | 0:8fd12f8121c1 | 32 | WHITE = 0xFFFFFF}; |
arnedesmet | 0:8fd12f8121c1 | 33 | |
arnedesmet | 3:3d0652023458 | 34 | /** Create a color by giving in a value for red, green and blue |
arnedesmet | 3:3d0652023458 | 35 | * @param red A value between 0 and 255 is assigned to red |
arnedesmet | 3:3d0652023458 | 36 | * @param green A value between 0 and 255 is assigned to green |
arnedesmet | 3:3d0652023458 | 37 | * @param blue A value between 0 and 255 is assigned to blue |
arnedesmet | 3:3d0652023458 | 38 | */ |
arnedesmet | 3:3d0652023458 | 39 | |
arnedesmet | 0:8fd12f8121c1 | 40 | Color(int red, int green, int blue); |
arnedesmet | 3:3d0652023458 | 41 | |
arnedesmet | 3:3d0652023458 | 42 | /** Create a color by giving in a value for the color |
arnedesmet | 3:3d0652023458 | 43 | * This value is the integer value of the hexadecimal version: 0xRRGGBB |
arnedesmet | 3:3d0652023458 | 44 | */ |
arnedesmet | 3:3d0652023458 | 45 | |
arnedesmet | 0:8fd12f8121c1 | 46 | Color(int color); |
arnedesmet | 3:3d0652023458 | 47 | |
arnedesmet | 3:3d0652023458 | 48 | /** Create a color by giving in a value for red, green and blue |
arnedesmet | 3:3d0652023458 | 49 | * @param red A value between 0.0 and 1.0 is assigned to red |
arnedesmet | 3:3d0652023458 | 50 | * @param green A value between 0.0 and 1.0 is assigned to green |
arnedesmet | 3:3d0652023458 | 51 | * @param blue A value between 0.0 and 1.0 is assigned to blue |
arnedesmet | 3:3d0652023458 | 52 | */ |
arnedesmet | 3:3d0652023458 | 53 | |
arnedesmet | 0:8fd12f8121c1 | 54 | Color(float red, float green, float blue); |
arnedesmet | 0:8fd12f8121c1 | 55 | |
arnedesmet | 3:3d0652023458 | 56 | /** Get the hexadecimal value of the color |
arnedesmet | 3:3d0652023458 | 57 | * Get the hex value in this format: 0xRRGGBB |
arnedesmet | 3:3d0652023458 | 58 | */ |
arnedesmet | 3:3d0652023458 | 59 | |
arnedesmet | 0:8fd12f8121c1 | 60 | int getHex(); |
arnedesmet | 0:8fd12f8121c1 | 61 | |
arnedesmet | 3:3d0652023458 | 62 | /** Get the value for the red component (from 0 to 255) */ |
arnedesmet | 3:3d0652023458 | 63 | |
arnedesmet | 0:8fd12f8121c1 | 64 | int getRed(); |
arnedesmet | 3:3d0652023458 | 65 | |
arnedesmet | 3:3d0652023458 | 66 | /** Get the value for the green component (from 0 to 255) */ |
arnedesmet | 3:3d0652023458 | 67 | |
arnedesmet | 0:8fd12f8121c1 | 68 | int getGreen(); |
arnedesmet | 3:3d0652023458 | 69 | |
arnedesmet | 3:3d0652023458 | 70 | /** Get the value for the blue component (from 0 to 255) */ |
arnedesmet | 3:3d0652023458 | 71 | |
arnedesmet | 0:8fd12f8121c1 | 72 | int getBlue(); |
arnedesmet | 0:8fd12f8121c1 | 73 | |
arnedesmet | 0:8fd12f8121c1 | 74 | |
arnedesmet | 0:8fd12f8121c1 | 75 | }; |
arnedesmet | 0:8fd12f8121c1 | 76 | |
arnedesmet | 0:8fd12f8121c1 | 77 | #endif |