void GeneratorTag :: Generate( Model * model ) { std::ostream & os = FileManager::Instance().GetStream( mOutFile ); int nrows = mCount < 0 ? GetSize() : mCount; bool debug = false; // model->Debug() || Debug(); if ( debug ) { std::cerr << "----- begin " << Name() << "\n"; } if ( mFields.Size() ) { Row r; for ( unsigned int i = 0; i < mFields.Size(); i++ ) { r.AppendValue( mFields.At( i ) ); } if ( debug ) { DebugRow( r, std::cerr ); } os << r.AsCSV() << "\n"; } while( nrows-- ) { Row r = Get(); if ( debug ) { DebugRow( r, std::cerr ); } if ( ! HasGroup() ) { os << r.AsCSV() << "\n"; } AddRow( r ); } if ( HasGroup() ) { DoGroup(); for ( int i = 0; i < Size(); i++ ) { os << RowAt(i).AsCSV() << "\n"; } } if ( debug ) { std::cerr << "----- end " << Name() << "\n"; } }