i2clcd: Reformat the lcd source code

Reformatted to prepare for improving the error handling. This reformatting
was done using clang-format.

Signed-off-by: Wouter van Verre <wouter.van.verre@intel.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This commit is contained in:
Wouter van Verre
2015-04-08 14:06:49 +01:00
committed by Mihai Tudor Panu
parent 3abd3a5ee9
commit bb59d5db7a
11 changed files with 663 additions and 619 deletions

View File

@ -28,9 +28,9 @@
#include "i2clcd.h"
#include "ssd.h"
namespace upm {
#define DISPLAY_CMD_SET_NORMAL_1308 0xA6
namespace upm
{
#define DISPLAY_CMD_SET_NORMAL_1308 0xA6
/**
* @library i2clcd
@ -42,7 +42,7 @@ namespace upm {
* @web http://garden.seeedstudio.com/images/4/46/SSD1308_1.0.pdf
* @web http://www.seeedstudio.com/wiki/Grove_-_OLED_Display_0.96%22
* @con i2c
*
*
* @brief C++ API for SSD1308 i2c controlled OLED displays
*
* The SSD1308 is a 128x64 Dot matrix OLED/PLED segment driver with
@ -52,59 +52,61 @@ namespace upm {
* @image html ssd1308.jpeg
* @snippet ssd1308-oled.cxx Interesting
*/
class SSD1308 : public I2CLcd {
public:
/**
* SSD1308 Constructor, calls libmraa initialisation functions
*
* @param bus i2c bus to use
* @param address the slave address the lcd is registered on
*/
SSD1308 (int bus, int address=0x3C);
/**
* SSD1308 Destructor
*/
~SSD1308 ();
/**
* Draw an image, see examples/python/make_oled_pic.py for an
* explanation on how the pixels are mapped to bytes
*
* @param data the buffer to read
* @param bytes the amount of bytes to read from the pointer
* @return Result of operation
*/
mraa_result_t draw(uint8_t *data, int bytes);
/**
* Write a string to LCD
*
* @param msg The std::string to write to display, note only ascii
* chars are supported
* @return Result of operation
*/
mraa_result_t write(std::string msg);
/**
* Set cursor to a coordinate
*
* @param row The row to set cursor to
* @param column The column to set cursor to
* @return Result of operation
*/
mraa_result_t setCursor(int row, int column);
/**
* Clear display from characters
*
* @return Result of operatio
*/
mraa_result_t clear();
/**
* Return to coordinate 0,0
*
* @return Result of operation
*/
mraa_result_t home();
private:
mraa_result_t writeChar (mraa_i2c_context ctx, uint8_t value);
mraa_result_t setNormalDisplay ();
mraa_result_t setAddressingMode (displayAddressingMode mode);
};
class SSD1308 : public I2CLcd
{
public:
/**
* SSD1308 Constructor, calls libmraa initialisation functions
*
* @param bus i2c bus to use
* @param address the slave address the lcd is registered on
*/
SSD1308(int bus, int address = 0x3C);
/**
* SSD1308 Destructor
*/
~SSD1308();
/**
* Draw an image, see examples/python/make_oled_pic.py for an
* explanation on how the pixels are mapped to bytes
*
* @param data the buffer to read
* @param bytes the amount of bytes to read from the pointer
* @return Result of operation
*/
mraa_result_t draw(uint8_t* data, int bytes);
/**
* Write a string to LCD
*
* @param msg The std::string to write to display, note only ascii
* chars are supported
* @return Result of operation
*/
mraa_result_t write(std::string msg);
/**
* Set cursor to a coordinate
*
* @param row The row to set cursor to
* @param column The column to set cursor to
* @return Result of operation
*/
mraa_result_t setCursor(int row, int column);
/**
* Clear display from characters
*
* @return Result of operatio
*/
mraa_result_t clear();
/**
* Return to coordinate 0,0
*
* @return Result of operation
*/
mraa_result_t home();
private:
mraa_result_t writeChar(mraa_i2c_context ctx, uint8_t value);
mraa_result_t setNormalDisplay();
mraa_result_t setAddressingMode(displayAddressingMode mode);
};
}