Lines Matching full:writer
931 * Sequence Writer implementation *
934 /* Initialize sequence writer: */
936 cvStartAppendToSeq( CvSeq *seq, CvSeqWriter * writer )
942 if( !seq || !writer )
945 memset( writer, 0, sizeof( *writer ));
946 writer->header_size = sizeof( CvSeqWriter );
948 writer->seq = seq;
949 writer->block = seq->first ? seq->first->prev : 0;
950 writer->ptr = seq->ptr;
951 writer->block_max = seq->block_max;
957 /* Initialize sequence writer: */
960 int elem_size, CvMemStorage * storage, CvSeqWriter * writer )
968 if( !storage || !writer )
972 cvStartAppendToSeq( seq, writer );
980 cvFlushSeqWriter( CvSeqWriter * writer )
988 if( !writer )
991 seq = writer->seq;
992 seq->ptr = writer->ptr;
994 if( writer->block )
997 CvSeqBlock *first_block = writer->seq->first;
1000 writer->block->count = (int)((writer->ptr - writer->block->data) / seq->elem_size);
1001 assert( writer->block->count > 0 );
1010 writer->seq->total = total;
1019 cvEndWriteSeq( CvSeqWriter * writer )
1027 if( !writer )
1030 CV_CALL( cvFlushSeqWriter( writer ));
1031 seq = writer->seq;
1034 if( writer->block && writer->seq->storage )
1039 assert( writer->block->count > 0 );
1049 writer->ptr = 0;
1059 cvCreateSeqBlock( CvSeqWriter * writer )
1067 if( !writer || !writer->seq )
1070 seq = writer->seq;
1072 cvFlushSeqWriter( writer );
1076 writer->block = seq->first->prev;
1077 writer->ptr = seq->ptr;
1078 writer->block_max = seq->block_max;
2610 CvSeqWriter writer;
2635 memset( &writer, 0, sizeof(writer));
2636 cvStartAppendToSeq( nodes, &writer );
2644 CV_WRITE_SEQ_ELEM( node, writer );
2648 cvEndWriteSeq( &writer );
2721 cvStartAppendToSeq( result, &writer );
2738 CV_WRITE_SEQ_ELEM( idx, writer );
2741 cvEndWriteSeq( &writer );