2 /**************************************************************************
3 ** (c) Copyright 2002, Andromeda Technology & Automation
4 ** This is free software; you can redistribute it and/or modify it under the
5 ** terms of the GNU General Public License, see the file COPYING.
6 ***************************************************************************
7 ** MODULE INFORMATION *
8 ***********************
9 ** FILE NAME : message_buffer.h
11 ** VERSION NUMBER : $Revision: 1.1 $
13 ** DESCRIPTION : Classes to for buffering the input stream
18 ***************************************************************************
19 ** ADMINISTRATIVE INFORMATION *
20 ********************************
21 ** ORIGINAL AUTHOR : Arjen Baart - arjen@andromeda.nl
22 ** CREATION DATE : Sep 16, 2002
23 ** LAST UPDATE : Aug 06, 2003
25 **************************************************************************/
27 /*****************************
28 $Log: message_buffer.h,v $
29 Revision 1.1 2003-12-04 10:38:09 arjen
30 Major redesign. All input is handled through XML. Raw input data is first
31 transformed into an XML document for further processing.
32 A collection of polymorphic classes handle the transformation of various
33 input formats into XML.
34 Classifying input data is done with a finite improbability calculation.
36 *****************************/
38 /* static const char *RCSID = "$Id: message_buffer.h,v 1.1 2003-12-04 10:38:09 arjen Exp $"; */
42 #include <AXE/String.h>
46 ///////////////////////////////////////////////////////////////////////////
47 // NAME : message_buffer
58 // LAST MODIFIED : Nov 04, 2002
59 ///////////////////////////////////////////////////////////////////////////
65 std::list<String> buffer;
67 std::list<String>::iterator next_line;
74 next_line = buffer.begin();
77 message_buffer(std::istream *in)
80 next_line = buffer.begin();
83 void from(std::istream *in)
88 friend bool operator >> (message_buffer &, String &);
92 next_line = buffer.begin();
97 if (next_line != buffer.end())
105 if (next_line != buffer.begin())