hi. i'm new in doing this. i've written a set of codes in CodeWarrior using C++ intending to transmit data out from my PDA (PAlmIIIx) via serial communication but it doesn't work. What's wrong?
class dish
{
private:
string identity;
public:
dish(string orderId);
string getIdentity();
};
dish :: dish(string orderId)
{
identity = orderId;
}
string dish :: getIdentity()
{
return identity;
}
static Boolean MainFormHandleEvent(EventPtr eventP)
{
Boolean handled = false;
FormPtr frmP;
string tableNumber, toSend;
toSend[4] = '|';
switch (eventP->eType)
{
case frmOpenEvent:
frmP = FrmGetActiveForm();
MainFormInit (frmP);
FrmDrawForm (frmP);
handled = true;
tableNumber = "0001|";
case ctlSelectEvent:
switch (eventP->data.ctlSelect.controlID)
{
case MainChickenButton:
dish Chicken(ChickenId);
toSend = Chicken.getIdentity();
break;
case MainBeefButton:
dish Beef(BeefId);
toSend = Beef.getIdentity();
break;
case MainOkButton:
static Err OpenSerial(void);
static void WriteSerial(void);
static void CloseSerial(void);
FrmGotoForm (TQDialog);
handled = true;
break;
}
tableNumber += toSend;
case frmCloseEvent:
MainFormDeinit(FrmGetActiveForm());
break;
default:
break;
}
return handled;
}
/*Opening Serial Port*/
static Err OpenSerial (void)
{
#define serPortLocalHotSync 0x8000
UInt16 portID;
Err error;
Boolean serPortOpened = false;
//srmOpen(port identifier, baud rate, pointer to a variable to
//receiver portID)
error = SrmOpen(serPortLocalHotSync, 9600, &portID);
if (error)
{
//Displays error message if error occurs
ErrNonFatalDisplayIf(error == serErrBadPort, "serErrBadPort");
}
return serPortOpened;
}
/*Closing Serial Port*/
static void CloseSerial (void)
{
Err error;
#define portID 0x8000 //Defines portID as serPortLocalHotSync
0x8000
//Waits until all data in the transmit queue has been sent and then
// only exit the application.
error = SrmSendWait(portID);
SrmClose(portID);
if (error)
{
//Displays error message if error occurs.
ErrNonFatalDisplayIf(error == serErrBadPort, "srmClose :
BadPort");
}
}
/*Sending Data*/
static void WriteSerial (void)
{
string tableNumber, numSent;
Err error;
numSent = SrmSend(portID, &tableNumber, 256, &error);
}