home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
High Voltage Shareware
/
high1.zip
/
high1
/
DIR9
/
WIZTOO.ZIP
/
CONSUMER.H
< prev
next >
Wrap
C/C++ Source or Header
|
1993-09-17
|
2KB
|
62 lines
#ifndef _consumer_h_
#define _consumer_h_
// Module: CONSUMER.H
// All of the consumers defined in this module use their constructors
// to connect to broadcast channels. They use there destructors to
// disconnect from the broadcast channels.
#include <string.h>
#include "BRDCASTR.H"
#include "CHNNLDEF.H"
class Airport : public WindData, public AirData, public TornadoWarning
{
char caName[80];
public:
Airport (const char *cpName)
{strcpy(caName,cpName);
oBroadcaster.Connect((WindData *)this);
oBroadcaster.Connect((AirData *)this);
oBroadcaster.Connect((TornadoWarning *)this);
}
~Airport (void) {oBroadcaster.Disconnect((WindData *)this);
oBroadcaster.Disconnect((AirData *)this);
oBroadcaster.Disconnect((TornadoWarning *)this);
}
void ReceiveWindData (int iSpeed, int iDirection);
void ReceiveAirData (int iTemperature,
int iBarometricPressure,
int iHumidity);
void ReceiveTornadoWarning (void);
};
class FireDepartment : public WindData, public AirData, public TornadoWarning
{
public:
FireDepartment (void) {oBroadcaster.Connect((WindData *)this);
oBroadcaster.Connect((AirData *)this);
oBroadcaster.Connect((TornadoWarning *)this);
}
~FireDepartment (void) {oBroadcaster.Disconnect((WindData *)this);
oBroadcaster.Disconnect((AirData *)this);
oBroadcaster.Disconnect((TornadoWarning *)this);
}
void ReceiveWindData (int iSpeed, int iDirection);
void ReceiveAirData (int iTemperature,
int iBarometricPressure,
int iHumidity);
void ReceiveTornadoWarning (void);
};
class School : public TornadoWarning
{
public:
School (void) {oBroadcaster.Connect((TornadoWarning *)this);}
~School (void) {oBroadcaster.Disconnect((TornadoWarning *)this);}
void ReceiveTornadoWarning (void);
};
#endif