git.ucc.asn.au
/
matches
/
MCTX3420.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Automatic commit of irc logs
[matches/MCTX3420.git]
/
server
/
sensor.h
diff --git
a/server/sensor.h
b/server/sensor.h
index
ae17ce3
..
8b20077
100644
(file)
--- a/
server/sensor.h
+++ b/
server/sensor.h
@@
-5,40
+5,39
@@
*/
*/
-
#ifndef _SENSOR_H
#define _SENSOR_H
#ifndef _SENSOR_H
#define _SENSOR_H
-#include "common.h"
-
/** Number of data points to keep in sensor buffers **/
#define SENSOR_DATABUFSIZ 10
/** Number of data points to keep in sensor buffers **/
#define SENSOR_DATABUFSIZ 10
+#define SENSOR_QUERYBUFSIZ 10
/** Number of sensors **/
/** Number of sensors **/
-#define NUMSENSORS 1
+#define NUMSENSORS 4
+
/** Structure to represent data recorded by a sensor at an instant in time **/
typedef struct
{
/** Time at which data was taken **/
/** Structure to represent data recorded by a sensor at an instant in time **/
typedef struct
{
/** Time at which data was taken **/
- float time;
+ double time_stamp;
/** Value of data **/
/** Value of data **/
-
float
value;
+
double
value;
} DataPoint;
/** Structure to represent a sensor **/
typedef struct
{
/** ID number of the sensor **/
} DataPoint;
/** Structure to represent a sensor **/
typedef struct
{
/** ID number of the sensor **/
- enum {
SENSOR_TEST0=0, SENSOR_TEST1=1
} id;
+ enum {
ANALOG_TEST0=2, ANALOG_TEST1=0, DIGITAL_TEST0=1, DIGITAL_TEST1=3
} id;
/** Buffer to store data from the sensor **/
DataPoint buffer[SENSOR_DATABUFSIZ];
/** Index of last point written in the data buffer **/
int write_index;
/** Buffer to store data from the sensor **/
DataPoint buffer[SENSOR_DATABUFSIZ];
/** Index of last point written in the data buffer **/
int write_index;
- /**
Offset position in binary file for query thread to read from
**/
-
int read_offset
;
- /**
F
ile to write data into when buffer is full **/
+ /**
Number of points read
**/
+
long points_read
;
+ /**
Binary f
ile to write data into when buffer is full **/
FILE * file;
/** Thread running the sensor **/
pthread_t thread;
FILE * file;
/** Thread running the sensor **/
pthread_t thread;
@@
-48,12
+47,17
@@
typedef struct
} Sensor;
} Sensor;
-/** Array of Sensors **/
-extern Sensor g_sensors[];
-extern void Sensor_Init(Sensor * s, int id); // Initialise sensor
+
+
+extern void Sensor_Spawn(); // Initialise sensor
+extern void Sensor_Join(); //Join sensor threads
extern void * Sensor_Main(void * args); // main loop for sensor thread; pass a Sensor* cast to void*
extern void * Sensor_Main(void * args); // main loop for sensor thread; pass a Sensor* cast to void*
+extern int Sensor_Query(Sensor * s, DataPoint * buffer, int bufsiz); // fill buffer with sensor data
+
+extern void Sensor_Handler(FCGIContext *context, char * params);
+
#endif //_SENSOR_H
#endif //_SENSOR_H
UCC
git Repository :: git.ucc.asn.au