packaging: also support rpmbuild from Tizen:2.3
[contrib/mraa.git] / include / mraa_internal.h
index def678b..428876d 100644 (file)
@@ -29,13 +29,14 @@ extern "C" {
 #endif
 
 #include <syslog.h>
+#include <fnmatch.h>
 
 #include "common.h"
 #include "mraa_internal_types.h"
 #include "mraa_adv_func.h"
 
-extern mraa_adv_func_t* advance_func;
 extern mraa_board_t* plat;
+extern mraa_iio_info_t* plat_iio;
 
 /**
  * Takes in pin information and sets up the multiplexors.
@@ -60,6 +61,20 @@ mraa_platform_t mraa_x86_platform();
 mraa_platform_t mraa_arm_platform();
 
 /**
+ * runtime detect running usb platform extender
+ *
+ * @return mraa_platform_t of the detected platform extender
+ */
+mraa_platform_t mraa_usb_platform_extender(mraa_board_t* board);
+
+/**
+ * runtime detect iio subsystem
+ *
+ * @return mraa_result_t indicating success of iio detection
+ */
+mraa_result_t mraa_iio_detect();
+
+/**
  * helper function to check if file exists
  *
  * @param filename to check
@@ -77,6 +92,25 @@ mraa_boolean_t mraa_file_exist(const char* filename);
 char* mraa_file_unglob(const char* filename);
 
 /**
+ * helper function to check if file contains a given text
+ *
+ * @param filename to check
+ * @param content to check in file
+ * @return mraa_boolean_t boolean result.
+ */
+mraa_boolean_t mraa_file_contains(const char* filename, const char* content);
+
+/**
+ * helper function to check if file contains a given text
+ *
+ * @param filename to check
+ * @param content to check in file
+ * @param content2 to check in same line of file
+ * @return mraa_boolean_t boolean result.
+ */
+mraa_boolean_t mraa_file_contains_both(const char* filename, const char* content, const char* content2);
+
+/**
  * helper function to find out if file that is targeted by a softlink
  * (partially) matches the given name
  *
@@ -86,6 +120,16 @@ char* mraa_file_unglob(const char* filename);
  */
 mraa_boolean_t mraa_link_targets(const char* filename, const char* targetname);
 
+/**
+ * helper function to find the first i2c bus containing devname starting from
+ * i2c-n where n is startfrom
+ *
+ * @param device name to match
+ * @param i2c-dev number to start search from
+ * @return the matching i2c-dev bus id or -1
+ */
+int mraa_find_i2c_bus(const char* devname, int startfrom);
+
 #ifdef __cplusplus
 }
 #endif