Пример #1
0
/**
Send an entire stread of data.

@param in	The stream of data to send.

@return Zero if successful, or a negative error value if failed.

@pre SendInitialise() must have been successful.
*/
int QymodemTx::SendAll(InStream& in)
        {
        BlockNumber = 1; // first block to send is number one
        size_t size;
        do
                {
                // get data from input stream...
                quint8 data[1024];
                int result = in.In(data,sizeof(data));
                emit Percent(in.percent);
                if(result<0)
                        return ErrorInputStreamError;

                // send data...

                size = result;
                result = SendData(data,size);
                if(result<0)
                        return result;
                }
        while(size); // end when no more data left
        return 0;
        }