mirror of
				https://github.com/eclipse/upm.git
				synced 2025-11-04 17:14:54 +03:00 
			
		
		
		
	examples: Remove heap allocation from C++ examples
Cleanup of UPM C++ examples.  Switched from heap allocation to
stack allocation when possible.  This simplifies the samples since it
removes the need for explicit memory management.  A script was used to
identify and replace pointer use.  To simplify the replace script, I
re-formatted the C++ examples using the UPM .clang-format file.
Unfortuantely this changes the look of the UPM C++ examples to a large
degree.  However, examples will now have a standard look/feel and
uniform formatting.
    * Ran clang-format w/provided UPM .clang-format file
    * Removed new's/delete's whenever possible (left those in interface
      examples)
    * Added IIO sensor library implementation of callback void* arg
    * Converted all sleeps to upm defined delays (added header when
      necessary)
    * Scrubbed CXX example includes
Signed-off-by: Noel Eck <noel.eck@intel.com>
			
			
This commit is contained in:
		
				
					committed by
					
						
						Mihai Tudor Panu
					
				
			
			
				
	
			
			
			
						parent
						
							bd6e4ec786
						
					
				
				
					commit
					5cefe7f5f3
				
			@@ -22,38 +22,37 @@
 | 
			
		||||
 * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include <unistd.h>
 | 
			
		||||
#include <iostream>
 | 
			
		||||
#include <stdio.h>
 | 
			
		||||
 | 
			
		||||
#include "ds2413.hpp"
 | 
			
		||||
 | 
			
		||||
using namespace std;
 | 
			
		||||
using namespace upm;
 | 
			
		||||
 | 
			
		||||
int main(int argc, char **argv)
 | 
			
		||||
int
 | 
			
		||||
main(int argc, char** argv)
 | 
			
		||||
{
 | 
			
		||||
//! [Interesting]
 | 
			
		||||
  // Instantiate a DS2413 Module on a Dallas 1-wire bus connected to UART 0
 | 
			
		||||
  upm::DS2413* sensor = new upm::DS2413(0);
 | 
			
		||||
    //! [Interesting]
 | 
			
		||||
    // Instantiate a DS2413 Module on a Dallas 1-wire bus connected to UART 0
 | 
			
		||||
    upm::DS2413 sensor(0);
 | 
			
		||||
 | 
			
		||||
  // find all of the DS2413 devices present on the bus
 | 
			
		||||
  sensor->init();
 | 
			
		||||
    // find all of the DS2413 devices present on the bus
 | 
			
		||||
    sensor.init();
 | 
			
		||||
 | 
			
		||||
  // how many devices were found?
 | 
			
		||||
  cout << "Found "<< sensor->devicesFound() << " device(s)" << endl;
 | 
			
		||||
    // how many devices were found?
 | 
			
		||||
    cout << "Found " << sensor.devicesFound() << " device(s)" << endl;
 | 
			
		||||
 | 
			
		||||
  // read the gpio and latch values from the first device
 | 
			
		||||
  // the lower 4 bits are of the form:
 | 
			
		||||
  // <gpioB latch> <gpioB value> <gpioA latch> <gpioA value>
 | 
			
		||||
  cout << "GPIO device 0 values: " << sensor->readGpios(0) << endl;
 | 
			
		||||
    // read the gpio and latch values from the first device
 | 
			
		||||
    // the lower 4 bits are of the form:
 | 
			
		||||
    // <gpioB latch> <gpioB value> <gpioA latch> <gpioA value>
 | 
			
		||||
    cout << "GPIO device 0 values: " << sensor.readGpios(0) << endl;
 | 
			
		||||
 | 
			
		||||
  // set the gpio latch values of the first device
 | 
			
		||||
  cout << "Setting GPIO latches to on" << endl;
 | 
			
		||||
  sensor->writeGpios(0, 0x03);
 | 
			
		||||
    // set the gpio latch values of the first device
 | 
			
		||||
    cout << "Setting GPIO latches to on" << endl;
 | 
			
		||||
    sensor.writeGpios(0, 0x03);
 | 
			
		||||
 | 
			
		||||
  cout << "Exiting..." << endl;
 | 
			
		||||
    cout << "Exiting..." << endl;
 | 
			
		||||
 | 
			
		||||
  delete sensor;
 | 
			
		||||
//! [Interesting]
 | 
			
		||||
  return 0;
 | 
			
		||||
    //! [Interesting]
 | 
			
		||||
    return 0;
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user