Skip to content
Snippets Groups Projects
Commit f623452e authored by James Batch's avatar James Batch
Browse files

Included __APPLE__ with __linux__ in ifdef'd sections for network byte translation

git-svn-id: https://redoubt.ligo-wa.caltech.edu/svn/advLigoRTS/trunk@2780 6dcd42c9-f523-4c6d-aada-af552506706e
parent 23914ed9
No related branches found
No related tags found
No related merge requests found
......@@ -5,18 +5,19 @@
/*----------------------------------------------------------------------*/
#include <string.h> /* declarations of strcpy and others.*/
#include "datasrv.h"
#include "UTC_GPS/leapsecs.h"
#include "UTC_GPS/tai.h"
#include "UTC_GPS/caltime.h"
#include "math.h"
#include <string.h> /* Pick up declarations of strcat, strcpy */
struct caltime ctin;
struct caltime ctout;
struct gps gpsTime;
struct gps gps;
static int debug = 0 ; /* For debugging - JCB */
#define COMMANDSIZE 2048
......@@ -37,21 +38,28 @@ daq_channel_t channelAll[MAX_CHANNELS];
short Fast = 1; /* 1 or 16 */
/* Debug fprintf(). */
void dfprintf(FILE *file, ...) {}
int DataConnect(char* serverName, int serverPort, int lPort, void* read_data())
/* int DataConnect(char* serverName, int serverPort, int lPort, void* read_data()) */ /* JCB */
int DataConnect(char* serverName, int serverPort, int lPort, void* (*read_data)())
{
int j;
int j;
if (debug != 0) fprintf(stderr, "DataConnect()\n") ; /* JCB */
listenerPort = lPort;
if (debug != 0) fprintf(stderr, "DataConnect() - calling daq_initialize()\n") ; /* JCB */
if (0 == daq_initialize(&DataDaq, &listenerPort, read_data)) {
perror("Couldn't initialize DAQ threads");
return 1;
}
if (debug != 0) fprintf(stderr, "DataConnect() - calling daq_connect()\n") ; /* JCB */
if ( daq_connect(&DataDaq, serverName, serverPort) ) {
//perror( "ERROR: Couldn't connect to the NDS server" );
return 1;
}
if (debug != 0) fprintf(stderr, "DataConnect() - calling daq_recv_channels()\n") ; /* JCB */
if ( daq_recv_channels(&DataDaq, channelAll, MAX_CHANNELS, &NchannelAll) ) {
//perror( "ERROR: Failed to receive channel information" );
return 1;
......@@ -64,12 +72,15 @@ int j;
/*for ( j = 0; j<NchannelAll; j++ )
fprintf ( stderr, "%s\t%d\n", channelAll[j].name, channelAll[j].rate );*/
if (debug != 0) fprintf(stderr, " protocol revision = %d\n", DataDaq.rev) ; /* JCB */
if (debug != 0) fprintf(stderr, "DataConnect() - returning\n") ; /* JCB */
return 0;
}
int DataSimpleConnect(char* serverName, int serverPort)
{
int j;
int j;
if ( daq_connect(&DataDaq, serverName, serverPort) ) {
//perror( "ERROR: Couldn't connect to the NDS server" );
......@@ -87,7 +98,7 @@ int j;
int DataReConnect(char* serverName, int serverPort)
{
int j;
int j;
daq_disconnect(&DataDaq);
//sleep(1);
......@@ -122,7 +133,7 @@ void DataQuit()
/* returns total channel number in the list */
int DataChanAdd(const char* chName, int dataRate)
{
int index, j;
int index, j;
if ( all == 1 )
return NchannelAll;
......@@ -179,7 +190,7 @@ int index, j;
/* returns total channel number in the list */
int DataChanDelete(const char* chName)
{
int j, pos=-1;
int j, pos=-1;
if ( strcmp(chName, "all") == 0 ) {
NchanList = 0;
......@@ -209,10 +220,10 @@ int j, pos=-1;
unsigned long DataWriteRealtime()
{
unsigned long ID;
int j;
char temp[COMMANDSIZE];
int isend;
unsigned long ID;
int j;
char temp[COMMANDSIZE];
int isend;
if ( all < 0 ) {
perror( "datasrv: DataChanSet failed: no channel selected" );
......@@ -262,10 +273,10 @@ int isend;
unsigned long DataWriteRealtimeFast()
{
unsigned long ID;
int j;
char temp[COMMANDSIZE];
int isend;
unsigned long ID;
int j;
char temp[COMMANDSIZE];
int isend;
if ( all < 0 ) {
perror( "datasrv: DataChanSet failed: no channel selected" );
......@@ -315,13 +326,13 @@ int isend;
unsigned long DataWrite(char* starttime, int duration, int isgps)
{
unsigned long ID;
int j;
char temp[COMMANDSIZE];
unsigned long ID;
int j;
char temp[COMMANDSIZE];
long starttimeInsec, mjd;
int yr,mo,da,hr,mn,sc;
int isend;
long starttimeInsec, mjd;
int yr,mo,da,hr,mn,sc;
int isend;
if ( isgps == 0 ) { /* UTC time */
sscanf (starttime, "%d-%d-%d-%d-%d-%d", &yr,&mo,&da,&hr,&mn,&sc );
......@@ -392,10 +403,10 @@ int isend;
unsigned long DataWriteTrendRealtime()
{
unsigned long ID;
int j;
char temp[COMMANDSIZE];
int isend;
unsigned long ID;
int j;
char temp[COMMANDSIZE];
int isend;
if ( all < 0 ) {
perror( "datasrv: DataChanSet failed: no channel selected" );
......@@ -439,14 +450,15 @@ int isend;
unsigned long DataWriteTrend(char* starttime, int duration, int trendlength, int isgps)
{
unsigned long ID;
int j;
char temp[COMMANDSIZE];
unsigned long ID;
int j;
char temp[COMMANDSIZE];
long starttimeInsec, mjd;
int yr,mo,da,hr,mn,sc;
int isend=0;
long starttimeInsec, mjd;
int yr,mo,da,hr,mn,sc;
int isend=0;
if (debug != 0) fprintf(stderr, "DataWriteTrend()\n") ; /* JCB */
if ( all < 0 ) {
perror( "datasrv: DataChanSet failed: no channel selected" );
return -1;
......@@ -503,6 +515,11 @@ int isend=0;
}
strcat(configure, ";");
dfprintf ( stderr,"datasrv: configure chan = %s\n", configure );
if (debug != 0)
{
fprintf(stderr, "DataWriteTrend() - command string = %s\n", configure) ; /* JCB */
fprintf(stderr, "DataWriteTrend() - Calling daq_send() \n") ; /* JCB */
}
isend = daq_send(&DataDaq, configure);
if ( isend )
fprintf ( stderr, "datasrv: DataWriteTrend failed in daq_send().\n" );
......@@ -514,10 +531,13 @@ int isend=0;
return -2;
}
else if ( isend ) {
fprintf( stderr, "unknown error returned from daq_send()") ; /* JCB */
return -2;
}
if (debug != 0) fprintf(stderr, "DataWriteTrend() - calling daq_recv_id()\n") ; /* JCB */
ID = daq_recv_id (&DataDaq);
if (debug != 0) fprintf(stderr, "DataWriteTrend() - daq_recv_id() returned %lu\n", ID) ; /* JCB */
dfprintf ( stderr,"\n" );
dfprintf ( stderr,"DataWriteTrend ID=%d starttime=%s(%d) duration=%d\n", ID, starttime,starttimeInsec, duration );
return ID;
......@@ -526,10 +546,10 @@ int isend=0;
void DataWriteStop(unsigned long processID)
{
char tempstring[COMMANDSIZE];
int isend;
char tempstring[COMMANDSIZE];
int isend;
sprintf( tempstring, "kill net-writer %lu;", processID );
sprintf( tempstring, "kill net-writer %ld;", processID );
dfprintf ( stderr,"kill net-writer %d;\n", processID );
isend = daq_send(&DataDaq, tempstring);
#if 0
......@@ -544,7 +564,7 @@ int isend;
void DataReadStart()
{
unsigned long blocknum;
unsigned long blocknum;
if ( !(blocknum = daq_recv_block_num(&DataDaq)) ) {
dfprintf ( stderr, "receiving data on-line %d \n", blocknum );
......@@ -788,7 +808,7 @@ int seconds, secrate;
max = *((float *)( DataDaq.tb->data + pos + sizeof(float)*secrate + j*sizeof(float) ));
*((unsigned int *)&max) = ntohl(*((unsigned int *)&max));
mean = *((double *)( DataDaq.tb->data + pos + 2*sizeof(float)*secrate + j*2*sizeof(float) ));
#ifdef __linux__
#if defined __linux__ || defined __APPLE__
mean1 = ntohd(mean);
#else
mean1 = mean;
......@@ -837,7 +857,7 @@ int seconds, secrate;
ntohl(*((unsigned int *)( DataDaq.tb->data + pos + sizeof(float)*secrate + j*sizeof(float) )));
(trend+j)->max = max;
mean = *((double *)( DataDaq.tb->data + pos + 2*sizeof(float)*secrate + j*2*sizeof(float) ));
#ifdef __linux__
#if defined __linux__ || defined __APPLE__
mean1 = ntohd(mean);
#else
mean1 = mean;
......@@ -864,7 +884,7 @@ int seconds, secrate;
(trend+j)->max = max1;
}
mean = *((double *)( DataDaq.tb->data + pos + 2*sizeof(int)*secrate + j*2*sizeof(int) ));
#ifdef __linux__
#if defined __linux__ || defined __APPLE__
((unsigned long *)&mean1)[1] = ntohl(((unsigned long *)&mean)[0]);
((unsigned long *)&mean1)[0] = ntohl(((unsigned long *)&mean)[1]);
#else
......@@ -1044,6 +1064,7 @@ long DataUTCtoGPS(char* utctime)
long mjd;
int yr,mo,da,hr,mn,sc;
if (debug != 0) fprintf(stderr, "DataUTCtoGPS() - utctime = %s\n", utctime) ; /* JCB */
sscanf (utctime, "%d-%d-%d-%d-%d-%d", &yr,&mo,&da,&hr,&mn,&sc );
/*----- enter time in UTC ------------*/
if ( yr == 98 || yr == 99 )
......@@ -1056,7 +1077,17 @@ int yr,mo,da,hr,mn,sc;
ctin.minute =mn; /* [0,59] */
ctin.second =sc; /* [0,60] */
ctin.offset =0; /* offset in minutes from UTC [-5999,5999] */
if (debug != 0)
{
fprintf(stderr, " ctin.date.month = %d\n", ctin.date.month) ; /* JCB */
fprintf(stderr, " ctin.date.day = %d\n", ctin.date.day) ; /* JCB */
fprintf(stderr, " ctin.hour = %d\n", ctin.hour) ; /* JCB */
fprintf(stderr, " ctin.minute = %d\n", ctin.minute) ; /* JCB */
fprintf(stderr, " ctin.second = %d\n", ctin.second) ; /* JCB */
fprintf(stderr, " ctin.offset = %ld\n", ctin.offset) ; /* JCB */
}
mjd=caldate_mjd(&ctin.date); /* modified Julian day */
fprintf(stderr, " mjd = %ld\n", mjd) ;
utc_to_gps(&ctin,&gps);
return gps.sec;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment