- Main Page
- Namespaces
- Classes
- Files
- Related Pages

# /Users/fpy/titan-1-5-MBARI/Mers/Utils/Io/Xml/Stream/XmlStreamObjectFactory.h

    00001
    00002 //
    00003 // Copyright (c) 2004           Model-based Embedded and Robotic Systems Group
    00004 // All Rights Reserved          Massachusetts Institute of Technology
    00005 //
    00006 // This software is provided as is. Model-based Embedded and Robotic Systems
    00007 // (MERS) group does not assume any responsibility.
    00008 //
    00009 // Organization:        Model-based Embedded and Robotic Systems Group
    00010 //                                      Massachusetts Institute of Technology
    00011 //
    00013
    00014 #ifndef XML_STREAM_OBJECT_FACTORY_H
    00015 #define XML_STREAM_OBJECT_FACTORY_H
    00016
    00017 #include "XmlStreamReader.h"
    00018 #include <Mers/Utils/Patterns/Factory.h>
    00019
    00020 namespace Mers {
    00021         namespace Utils {
    00022                 namespace Io {
    00023                         namespace Xml {
    00024                                 namespace Stream {
    00025
    00046                                         class XmlStreamObjectFactory : public Mers::Utils::Patterns::Factory
    00047                                         {
    00048                                         public:
    00052                                                 XmlStreamObjectFactory(XmlStreamReader& reader);
    00053
    00054                                         protected:
    00064                                                 bool checkStart(const std::string& tag);
    00065
    00075                                                 void checkEnd(bool advance = false);
    00076
    00088                                                 void checkNotNull(void* object, const char* message = NULL);
    00089
    00093                                                 XmlStreamReader& reader;
    00094                                         };
    00095                                 }
    00096                         }
    00097                 }
    00098         }
    00099 }
    00100
    00101 #endif