/** * \brief Analysis of buffer and keep results into parser * @return Number of bytes wos parsed from buffer */ int nmea_parser_push(nmeaPARSER *parser, const char *buff, int buff_sz) { int nparse, nparsed = 0; //int i=0; // printf("%d,%d",buff_sz,parser->buff_size); do { //printf("heh"); if(buff_sz > parser->buff_size) nparse = parser->buff_size; else nparse = buff_sz; nparsed += nmea_parser_real_push( parser, buff, nparse); buff_sz -= nparse; // if(i<10) // { // printf("%d ,%d,%d ,%d\n",buff_sz,nparse,parser->buff_size,nparsed); // i++; // } } while(buff_sz); //printf("heh"); return nparsed; }
/** * \brief Analysis of buffer and keep results into parser * @return Number of bytes wos parsed from buffer */ int nmea_parser_push(nmeaPARSER *parser, const char *buff, int buff_sz) { int nparse, nparsed = 0; do { if(buff_sz > parser->buff_size) nparse = parser->buff_size; else nparse = buff_sz; nparsed += nmea_parser_real_push( parser, buff, nparse); buff_sz -= nparse; } while(buff_sz); return nparsed; }