Exemple #1
0
/* getrd

   get raw data
*/
int getrd (unsigned char *data, int *mdat, struct cmd *pcmd) {
    int err;

    if ( pcmd->netflg == 0 ) /* read serial interface */ {
	  if ( ( err = getsrd(data, mdat, pcmd)) == -1)
		return(-1);
    }
    else if (pcmd->netflg == 1 ) /* read network interface */ {
	  if ( ( err = getnrd(data, mdat, pcmd)) == -1)
		return(-1);
    }
    return(0);
}
Exemple #2
0
/* getrd

   get raw data
*/
int getrd (char *data, int *mdat, struct cmd *pcmd) {
    int err;

    /* read answer of weather station from serial port */
    if ( pcmd->netflg == 0 ) {
	  if ( ( err = getsrd(data, mdat, pcmd)) == -1)
		return(-1);
    }
    else if (pcmd->netflg == 1 ) {
	  if ( ( err = getnrd(data, mdat, pcmd)) == -1)
		return(-1);
    }
    return(0);
}
Exemple #3
0
short xOPNNRD(char *module,char *name,int line,char *program)
{
	short x,nrdno;
	NRDbuffer *NRDtmp;
#ifdef INFORMIX_ISAM
	short a=0;
#endif

#ifdef USE_RDA_DIAGNOSTICS
	if(diagnrd || diagnrd_field) { prterr("DIAG OPNNRD Opening File Definition [%s] [%s] at line [%d] program [%s].",module,name,line,program); }
#endif /* USE_RDA_DIAGNOSTICS */
	x=getnrd(module,name);
	if(x<0)
	{
		prterr("Error can't read File Definition [%s] [%s] from Binary Library [%s.FIL] at line [%d] program [%s].",module,name,module,line,program);
		return(-1);
	}
	NRDtmp=NRDbuf+x;
	nrdno=x;
	switch(NRDtmp->db_engine)
	{
		case NRDRdaEngine:
			NRDtmp->dtanum=OPNNRDrda(NRDtmp);
			if(NRDtmp->dtanum==NULL)
			{
				freenrd(NRDtmp);
				prterr("Error couldn't open Actual RDA Database File [%s] [%s] at line [%d] program [%s].  Verify the Data File [%s.dat] and Index File [%s.idx] are available.",module,name,line,program,name,name);
				return(-1); 
			}
			break;
#ifdef INFORMIX_ISAM
		case NRDInformixIsamEngine:
			a=OPNNRDisam(NRDtmp);
			if(a==(-1))
			{
				freenrd(NRDtmp);
				prterr("Error couldn't open Actual Informix-OnLine Database File [%s] [%s] at line [%d] program [%s].  Verify the Data File [%s.dat] and Index File [%s.idx] are available.",module,name,line,program,name,name);
				return(-1);
			}
			break;
#endif
#ifdef USE_MYISAM
		case NRDMyIsamEngine:
			if(OPNNRDmyisam(NRDtmp))
			{
				freenrd(NRDtmp);
				prterr("Error couldn't open Actual MYSQL Embedded Database Table [%s] [%s] at line [%d] program [%s].  Verify the Data File [%s.MYD] is available.",module,name,line,program,name);
				return(-1);
			}
			break;
#endif
#ifdef USE_MYSQL
		case NRDMySQLXpertEngine:
			if(!OPNNRDmysqlxpert(NRDtmp))
			{
				freenrd(NRDtmp);
				prterr("Error couldn't open Actual MYSQL Server Database Table [%s] [%s] at line [%d] program [%s].  Verify the Data File [%s.MYD] is available.",module,name,line,program,name);
				return(-1);
			}
			break;
		case NRDMySQLEngine:
		case NRDMySQLAutoEngine:
			if(!OPNNRDmysql(NRDtmp))
			{
				freenrd(NRDtmp);
				prterr("Error couldn't open Actual MYSQL Server Database Table [%s] [%s] at line [%d] program [%s].  Verify the Data File [%s.MYD] is available.",module,name,line,program,name);
				return(-1);
			}
			break;
#endif
#ifdef USE_BERKELEY_BTREE
		case NRDBerkeleyBtree:
			NRDtmp->dbp=OPNNRDberkeley(NRDtmp);
			if(NRDtmp->dbp==NULL)
			{
				freenrd(NRDtmp);
				prterr("Error couldn't open Actual Berkeley Btree Database File [%s] [%s] at line [%d] program [%s].  Verify the Data File [%s.dat] and Index File [%s.idx] are available.",module,name,line,program,name,name);
				return(-1);
			}
			NRDtmp->varfile=VARRECORDS(nrdno);
			break;
#endif
#ifdef USE_CTREE
		case NRDCtreeEngine:
		case NRDLocalCtreeEngine:
			NRDtmp->filenum=OPNNRDctree(NRDtmp,FALSE);
			if(NRDtmp->filenum==(-1))
			{
				freenrd(NRDtmp);
				prterr("Error couldn't open Actual C-tree Database File [%s] [%s] at line [%d] program [%s].  Verify the Data File [%s.dat] and Index File [%s.idx] are available.",module,name,line,program,name,name);
				return(-1);
			}
			NRDtmp->varfile=VARRECORDS(nrdno);
			break;
#endif
		default:
			prterr("Error Unknown Database Engine [%d] for File Definition [%s] [%s] at line [%d] program [%s].",NRDtmp->db_engine,module,name,line,program);
			return(-1);
	}
	return nrdno;
}