[Armadeus-commitlog] armadeus branch, master, updated. release-3.4-108-gaecda18
Brought to you by:
sszy
|
From: jscheer <js...@us...> - 2011-05-03 12:48:23
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via aecda1819c08d547c292eabfe9dd33b4abf3e08b (commit)
from f73f2ee93f8ea1ca82586dfc0da4f8ec152221a4 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit aecda1819c08d547c292eabfe9dd33b4abf3e08b
Author: Jeremie Scheer <jer...@ar...>
Date: Tue May 3 14:47:51 2011 +0200
[BUILDROOT] [AS_DEVICES] Add device structure allocation test in C++ wrappers.
-----------------------------------------------------------------------
Summary of changes:
target/packages/as_devices/cpp/as_adc.cpp | 24 ++++++-
target/packages/as_devices/cpp/as_dac.cpp | 23 +++++-
target/packages/as_devices/cpp/as_gpio.cpp | 103 ++++++++++++++++++++++++---
target/packages/as_devices/cpp/as_i2c.cpp | 103 ++++++++++++++++++++++++---
target/packages/as_devices/cpp/as_spi.cpp | 100 ++++++++++++++++++++++++---
5 files changed, 311 insertions(+), 42 deletions(-)
diff --git a/target/packages/as_devices/cpp/as_adc.cpp b/target/packages/as_devices/cpp/as_adc.cpp
index bc23adc..68764ac 100644
--- a/target/packages/as_devices/cpp/as_adc.cpp
+++ b/target/packages/as_devices/cpp/as_adc.cpp
@@ -38,12 +38,20 @@ AsAdc::~AsAdc()
{
int ret;
- ret = as_adc_close(mDev);
- if (ret < 0)
+ if (mDev != NULL)
{
- std::cout<<"AsAdc destruction error"<<std::endl;
+ ret = as_adc_close(mDev);
+ if (ret < 0)
+ {
+ std::cout<<"AsAdc destruction error"<<std::endl;
+ }
+ }
+ else
+ {
+ std::cerr<<"AsAdc device structure not allocated"<<std::endl;
}
}
+
/** @brief get value in millivolts
*
@@ -53,5 +61,13 @@ AsAdc::~AsAdc()
*/
long AsAdc::getValueInMillivolts(int aChannel) const
{
- return as_adc_get_value_in_millivolts(mDev, aChannel);
+ if (mDev != NULL)
+ {
+ return as_adc_get_value_in_millivolts(mDev, aChannel);
+ }
+ else
+ {
+ std::cerr<<"AsAdc device structure not allocated"<<std::endl;
+ return -1;
+ }
}
diff --git a/target/packages/as_devices/cpp/as_dac.cpp b/target/packages/as_devices/cpp/as_dac.cpp
index 1bd5bab..c022e6d 100644
--- a/target/packages/as_devices/cpp/as_dac.cpp
+++ b/target/packages/as_devices/cpp/as_dac.cpp
@@ -40,10 +40,17 @@ AsDac::~AsDac()
{
int ret;
- ret = as_dac_close(mDev);
- if (ret < 0)
+ if (mDev != NULL)
{
- std::cout<<"AsDac destruction error"<<std::endl;
+ ret = as_dac_close(mDev);
+ if (ret < 0)
+ {
+ std::cout<<"AsDac destruction error"<<std::endl;
+ }
+ }
+ else
+ {
+ std::cerr<<"AsDac device structure not allocated"<<std::endl;
}
}
@@ -56,5 +63,13 @@ AsDac::~AsDac()
*/
long AsDac::setValueInMillivolts(int aChannel, int aValue)
{
- return as_dac_set_value_in_millivolts(mDev, aChannel, aValue);
+ if (mDev != NULL)
+ {
+ return as_dac_set_value_in_millivolts(mDev, aChannel, aValue);
+ }
+ else
+ {
+ std::cerr<<"AsDac device structure not allocated"<<std::endl;
+ return -1;
+ }
}
diff --git a/target/packages/as_devices/cpp/as_gpio.cpp b/target/packages/as_devices/cpp/as_gpio.cpp
index 4ca4b3a..e08d883 100644
--- a/target/packages/as_devices/cpp/as_gpio.cpp
+++ b/target/packages/as_devices/cpp/as_gpio.cpp
@@ -37,10 +37,17 @@ AsGpio::~AsGpio()
{
int ret;
- ret = as_gpio_close(mDev);
- if (ret < 0)
+ if (mDev != NULL)
{
- std::cout<<"AsGpio destruction error"<<std::endl;
+ ret = as_gpio_close(mDev);
+ if (ret < 0)
+ {
+ std::cout<<"AsGpio destruction error"<<std::endl;
+ }
+ }
+ else
+ {
+ std::cerr<<"AsGpio device structure not allocated"<<std::endl;
}
}
@@ -52,7 +59,15 @@ AsGpio::~AsGpio()
*/
long AsGpio::setPinDirection(int aDirection)
{
- return as_gpio_set_pin_direction(mDev, aDirection);
+ if (mDev != NULL)
+ {
+ return as_gpio_set_pin_direction(mDev, aDirection);
+ }
+ else
+ {
+ std::cerr<<"AsGpio device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Get pin direction
@@ -61,7 +76,15 @@ long AsGpio::setPinDirection(int aDirection)
*/
long AsGpio::getPinDirection() const
{
- return as_gpio_get_pin_direction(mDev);
+ if (mDev != NULL)
+ {
+ return as_gpio_get_pin_direction(mDev);
+ }
+ else
+ {
+ std::cerr<<"AsGpio device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Set pin value
@@ -72,7 +95,15 @@ long AsGpio::getPinDirection() const
*/
long AsGpio::setPinValue(int aValue)
{
- return as_gpio_set_pin_value(mDev, aValue);
+ if (mDev != NULL)
+ {
+ return as_gpio_set_pin_value(mDev, aValue);
+ }
+ else
+ {
+ std::cerr<<"AsGpio device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Get pin value
@@ -81,7 +112,15 @@ long AsGpio::setPinValue(int aValue)
*/
long AsGpio::getPinValue() const
{
- return as_gpio_get_pin_value(mDev);
+ if (mDev != NULL)
+ {
+ return as_gpio_get_pin_value(mDev);
+ }
+ else
+ {
+ std::cerr<<"AsGpio device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Get pin value, blocking until interrupt occur
@@ -93,7 +132,15 @@ long AsGpio::getPinValue() const
*/
long AsGpio::blockingGetPinValue(int aDelay_s, int aDelay_us) const
{
- return as_gpio_blocking_get_pin_value(mDev, aDelay_s, aDelay_us);
+ if (mDev != NULL)
+ {
+ return as_gpio_blocking_get_pin_value(mDev, aDelay_s, aDelay_us);
+ }
+ else
+ {
+ std::cerr<<"AsGpio device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Set pin irq mode
@@ -104,7 +151,15 @@ long AsGpio::blockingGetPinValue(int aDelay_s, int aDelay_us) const
*/
long AsGpio::setIrqMode(int aMode)
{
- return as_gpio_set_irq_mode(mDev, aMode);
+ if (mDev != NULL)
+ {
+ return as_gpio_set_irq_mode(mDev, aMode);
+ }
+ else
+ {
+ std::cerr<<"AsGpio device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Get pin irq mode value
@@ -113,7 +168,15 @@ long AsGpio::setIrqMode(int aMode)
*/
long AsGpio::getIrqMode() const
{
- return as_gpio_get_irq_mode(mDev);
+ if (mDev != NULL)
+ {
+ return as_gpio_get_irq_mode(mDev);
+ }
+ else
+ {
+ std::cerr<<"AsGpio device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Get pin number value
@@ -122,7 +185,15 @@ long AsGpio::getIrqMode() const
*/
long AsGpio::getPinNum() const
{
- return as_gpio_get_pin_num(mDev);
+ if (mDev != NULL)
+ {
+ return as_gpio_get_pin_num(mDev);
+ }
+ else
+ {
+ std::cerr<<"AsGpio device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Get port letter
@@ -131,5 +202,13 @@ long AsGpio::getPinNum() const
*/
long AsGpio::getPortLetter() const
{
- return as_gpio_get_port_letter(mDev);
+ if (mDev != NULL)
+ {
+ return as_gpio_get_port_letter(mDev);
+ }
+ else
+ {
+ std::cerr<<"AsGpio device structure not allocated"<<std::endl;
+ return -1;
+ }
}
diff --git a/target/packages/as_devices/cpp/as_i2c.cpp b/target/packages/as_devices/cpp/as_i2c.cpp
index af273c4..919fa8b 100644
--- a/target/packages/as_devices/cpp/as_i2c.cpp
+++ b/target/packages/as_devices/cpp/as_i2c.cpp
@@ -36,10 +36,17 @@ AsI2c::~AsI2c()
{
int ret;
- ret = as_i2c_close(mDev);
- if (ret < 0)
+ if (mDev != NULL)
{
- std::cout<<"AsI2c destruction error"<<std::endl;
+ ret = as_i2c_close(mDev);
+ if (ret < 0)
+ {
+ std::cout<<"AsI2c destruction error"<<std::endl;
+ }
+ }
+ else
+ {
+ std::cerr<<"AsI2c device structure not allocated"<<std::endl;
}
}
@@ -51,7 +58,15 @@ AsI2c::~AsI2c()
*/
long AsI2c::setSlaveAddr(unsigned char aAddr)
{
- return as_i2c_set_slave_addr(mDev, aAddr);
+ if (mDev != NULL)
+ {
+ return as_i2c_set_slave_addr(mDev, aAddr);
+ }
+ else
+ {
+ std::cerr<<"AsI2c device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Get chip's I2C slave address
@@ -60,7 +75,15 @@ long AsI2c::setSlaveAddr(unsigned char aAddr)
*/
long AsI2c::getSlaveAddr() const
{
- return as_i2c_get_slave_addr(mDev);
+ if (mDev != NULL)
+ {
+ return as_i2c_get_slave_addr(mDev);
+ }
+ else
+ {
+ std::cerr<<"AsI2c device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Read several bytes (ioctl() method) from given chip.
@@ -72,7 +95,15 @@ long AsI2c::getSlaveAddr() const
*/
long AsI2c::read(unsigned char *aData, size_t aSize) const
{
- return as_i2c_read(mDev, aData, aSize);
+ if (mDev != NULL)
+ {
+ return as_i2c_read(mDev, aData, aSize);
+ }
+ else
+ {
+ std::cerr<<"AsI2c device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Write several bytes (ioctl() method) to given chip.
@@ -84,7 +115,15 @@ long AsI2c::read(unsigned char *aData, size_t aSize) const
*/
long AsI2c::write(unsigned char *aData, size_t aSize)
{
- return as_i2c_write(mDev, aData, aSize);
+ if (mDev != NULL)
+ {
+ return as_i2c_write(mDev, aData, aSize);
+ }
+ else
+ {
+ std::cerr<<"AsI2c device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Read from given chip at a given register address (ioctl() method).
@@ -97,7 +136,15 @@ long AsI2c::write(unsigned char *aData, size_t aSize)
*/
long AsI2c::readReg(unsigned char aReg, unsigned char *aData, size_t aSize) const
{
- return as_i2c_read_reg(mDev, aReg, aData, aSize);
+ if (mDev != NULL)
+ {
+ return as_i2c_read_reg(mDev, aReg, aData, aSize);
+ }
+ else
+ {
+ std::cerr<<"AsI2c device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Write to given chip at a given register address (ioctl() method).
@@ -110,7 +157,15 @@ long AsI2c::readReg(unsigned char aReg, unsigned char *aData, size_t aSize) cons
*/
long AsI2c::writeReg(unsigned char aReg, unsigned char *aData, size_t aSize)
{
- return as_i2c_write_reg(mDev, aReg, aData, aSize);
+ if (mDev != NULL)
+ {
+ return as_i2c_write_reg(mDev, aReg, aData, aSize);
+ }
+ else
+ {
+ std::cerr<<"AsI2c device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief forge a read message like this:
@@ -125,7 +180,15 @@ long AsI2c::writeReg(unsigned char aReg, unsigned char *aData, size_t aSize)
*/
long AsI2c::readMsg(unsigned char *aWData, unsigned char aWriteSize, unsigned char *aRData, size_t aReadSize)
{
- return as_i2c_read_msg(mDev, aWData, aWriteSize, aRData, aReadSize);
+ if (mDev != NULL)
+ {
+ return as_i2c_read_msg(mDev, aWData, aWriteSize, aRData, aReadSize);
+ }
+ else
+ {
+ std::cerr<<"AsI2c device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Read a byte from the given register.
@@ -136,7 +199,15 @@ long AsI2c::readMsg(unsigned char *aWData, unsigned char aWriteSize, unsigned ch
*/
long AsI2c::readRegByte(unsigned char aReg) const
{
- return as_i2c_read_reg_byte(mDev, aReg);
+ if (mDev != NULL)
+ {
+ return as_i2c_read_reg_byte(mDev, aReg);
+ }
+ else
+ {
+ std::cerr<<"AsI2c device structure not allocated"<<std::endl;
+ return -1;
+ }
}
/** @brief Write a byte to the given register.
@@ -148,5 +219,13 @@ long AsI2c::readRegByte(unsigned char aReg) const
*/
long AsI2c::writeRegByte(unsigned char aReg, unsigned char aVal)
{
- return as_i2c_write_reg_byte(mDev, aReg, aVal);
+ if (mDev != NULL)
+ {
+ return as_i2c_write_reg_byte(mDev, aReg, aVal);
+ }
+ else
+ {
+ std::cerr<<"AsI2c device structure not allocated"<<std::endl;
+ return -1;
+ }
}
diff --git a/target/packages/as_devices/cpp/as_spi.cpp b/target/packages/as_devices/cpp/as_spi.cpp
index 27428b3..538ca5e 100644
--- a/target/packages/as_devices/cpp/as_spi.cpp
+++ b/target/packages/as_devices/cpp/as_spi.cpp
@@ -21,6 +21,7 @@
*/
#include "as_spi.hpp"
+#include <iostream>
/** @brief Constructor: Open a SPI bus.
*
@@ -33,7 +34,14 @@ AsSpi::AsSpi(const unsigned char *aSpidev_name)
AsSpi::~AsSpi()
{
- as_spi_close(mFd);
+ if (mFd != 0)
+ {
+ as_spi_close(mFd);
+ }
+ else
+ {
+ std::cerr<<"AsSpi file descriptor not initialized"<<std::endl;
+ }
}
/** @brief Set bits order
@@ -44,7 +52,15 @@ AsSpi::~AsSpi()
*/
int AsSpi::setLsb(unsigned char aLsb)
{
- return as_spi_set_lsb(mFd, aLsb);
+ if (mFd != 0)
+ {
+ return as_spi_set_lsb(mFd, aLsb);
+ }
+ else
+ {
+ std::cerr<<"AsSpi file descriptor not initialized"<<std::endl;
+ return -1;
+ }
}
/** @brief Get bits order
@@ -53,7 +69,15 @@ int AsSpi::setLsb(unsigned char aLsb)
*/
int AsSpi::getLsb() const
{
- return as_spi_get_lsb(mFd);
+ if (mFd != 0)
+ {
+ return as_spi_get_lsb(mFd);
+ }
+ else
+ {
+ std::cerr<<"AsSpi file descriptor not initialized"<<std::endl;
+ return -1;
+ }
}
/** @brief Set spi bus mode
@@ -64,7 +88,15 @@ int AsSpi::getLsb() const
*/
int AsSpi::setMode(unsigned char aMode)
{
- return as_spi_set_mode(mFd, aMode);
+ if (mFd != 0)
+ {
+ return as_spi_set_mode(mFd, aMode);
+ }
+ else
+ {
+ std::cerr<<"AsSpi file descriptor not initialized"<<std::endl;
+ return -1;
+ }
}
/** @brief Get spi bus mode
@@ -73,7 +105,15 @@ int AsSpi::setMode(unsigned char aMode)
*/
int AsSpi::getMode() const
{
- return as_spi_get_mode(mFd);
+ if (mFd != 0)
+ {
+ return as_spi_get_mode(mFd);
+ }
+ else
+ {
+ std::cerr<<"AsSpi file descriptor not initialized"<<std::endl;
+ return -1;
+ }
}
/** @brief Set clock bus speed
@@ -84,7 +124,15 @@ int AsSpi::getMode() const
*/
int AsSpi::setSpeed(unsigned char aSpeed)
{
- return as_spi_set_speed(mFd, aSpeed);
+ if (mFd != 0)
+ {
+ return as_spi_set_speed(mFd, aSpeed);
+ }
+ else
+ {
+ std::cerr<<"AsSpi file descriptor not initialized"<<std::endl;
+ return -1;
+ }
}
/** @brief Get clock bus speed
@@ -93,7 +141,15 @@ int AsSpi::setSpeed(unsigned char aSpeed)
*/
int AsSpi::getSpeed() const
{
- return as_spi_get_speed(mFd);
+ if (mFd != 0)
+ {
+ return as_spi_get_speed(mFd);
+ }
+ else
+ {
+ std::cerr<<"AsSpi file descriptor not initialized"<<std::endl;
+ return -1;
+ }
}
/** @brief Get bits per word
@@ -102,7 +158,15 @@ int AsSpi::getSpeed() const
*/
int AsSpi::getBitsPerWord() const
{
- return as_spi_get_bits_per_word(mFd);
+ if (mFd != 0)
+ {
+ return as_spi_get_bits_per_word(mFd);
+ }
+ else
+ {
+ std::cerr<<"AsSpi file descriptor not initialized"<<std::endl;
+ return -1;
+ }
}
/** @brief Set bits per word
@@ -113,7 +177,15 @@ int AsSpi::getBitsPerWord() const
*/
int AsSpi::setBitsPerWord(unsigned char aBits)
{
- return as_spi_set_bits_per_word(mFd, aBits);
+ if (mFd != 0)
+ {
+ return as_spi_set_bits_per_word(mFd, aBits);
+ }
+ else
+ {
+ std::cerr<<"AsSpi file descriptor not initialized"<<std::endl;
+ return -1;
+ }
}
/** @brief Forge arbitrary length message (31bits max) and send it
@@ -126,5 +198,13 @@ int AsSpi::setBitsPerWord(unsigned char aBits)
*/
unsigned long long AsSpi::msg(unsigned long long aMsg, size_t aLen, unsigned long aSpeed)
{
- return as_spi_msg(mFd, aMsg, aLen, aSpeed);
+ if (mFd != 0)
+ {
+ return as_spi_msg(mFd, aMsg, aLen, aSpeed);
+ }
+ else
+ {
+ std::cerr<<"AsSpi file descriptor not initialized"<<std::endl;
+ return -1;
+ }
}
hooks/post-receive
--
armadeus
|