it_bus/any_simple_type.h

00001 #ifndef _IT_BUS_ANY_SIMPLE_TYPE_H_
00002 #define _IT_BUS_ANY_SIMPLE_TYPE_H_
00003 
00004 // @Copyright 2004 IONA Technologies, Plc. All Rights Reserved.
00005 //
00006 
00007 #include <it_bus/any_type.h>
00008 
00009 namespace IT_Bus
00010 {
00011     class AnySimpleTypeReader;
00012     class AnySimpleTypeWriter;
00013     
00018     class IT_AFC_API AnySimpleType : public virtual AnyType
00019     {
00020       public:
00021 
00025         AnySimpleType();
00026 
00030         virtual
00031         ~AnySimpleType();
00032 
00036         virtual void
00037         read(
00038             const QName& name,
00039             ComplexTypeReader& reader
00040         ) throw((IT_Bus::DeserializationException));        
00041         
00045         virtual void
00046         write(
00047             const QName& name,
00048             ComplexTypeWriter& writer
00049         ) const throw((IT_Bus::SerializationException));
00050                 
00055         virtual void
00056         write_value(
00057             AnySimpleTypeWriter & writer
00058         ) const throw((IT_Bus::SerializationException)) = 0;
00059 
00064         virtual void
00065         read_value(
00066             AnySimpleTypeReader & reader
00067         ) throw((IT_Bus::DeserializationException)) = 0;
00068 
00073         virtual AnyType::Kind
00074         get_kind() const;
00075 
00080         AnySimpleType &
00081         operator=(
00082             const AnySimpleType & rhs
00083         );
00084 
00085       private:
00086         // private and unimplemented to prevent copying
00087         AnySimpleType(const AnySimpleType&);
00088     };
00089 }
00090 
00091 #endif  

Generated on Tue Mar 20 15:27:40 2007 for Artix by  doxygen 1.5.1-p1