//implemention of the class CByteComm
//construct & destruct
CByteComm::CByteComm(unsigned short usOperation,Byte bByte)
{ 
    m_bByte = bByte;
    m_usOperation = usOperation;
 }
 
CByteComm::~CByteComm()
{
 }                    
                                
//operation
BOOL CByteComm::Action()
{ 
    if( ISSEND == m_usOperation) {
 	   if (Send()) return TRUE;
 	   else {
 	   	   IfSendError();
 		   return FALSE;
 	   }
    } else {
        if(Receive()) return TRUE;
        else {
            IfReceiveError();
            return FALSE;
        }
 }        
         
 }

//implemention of the class CSectComm
//construct & destruct           
CByteComm::CSectComm()
{ 
 } 
 
CByteComm::~CSectComm()
{ 
    unsigned short usLen = m_Queue.GetSize();
    CByteComm *tmpObject;
    if (usLen == 0) return;
    while(unsigned short i=usLen-1; i>=0; i--) {
    	tmpObject = (CByteComm *)m_Queue[i];
    	m_Queue.RemoveAt[i];
    	delete tmpObject;
    }	
    ASSERT ( 0 == m_Queue.GetSize() );©
 }           
                
//operation                
BOOL CByteComm::IsFinished()
{ 
 
 }         
 
BOOL CByteComm::Action()
{ 
 if
 } 