it_bus/array_coordinate_impl.h

00001 #ifndef _IT_BUS_ARRAY_COORDINATE_IMPL_H_
00002 #define _IT_BUS_ARRAY_COORDINATE_IMPL_H_
00003 
00004 // @Copyright 2004 IONA Technologies, Plc. All Rights Reserved.
00005 //
00006 
00007 #include <it_bus/soap_enc_array.h> 
00008 
00009 namespace IT_Bus
00010 {
00011     class IT_AFC_API ArrayCoordinateImpl : public ArrayCoordinate
00012     {
00013       public:
00014 
00015         ArrayCoordinateImpl(
00016             const String & coords
00017         );
00018 
00019         ArrayCoordinateImpl(
00020             size_t number_dimensions
00021         );
00022 
00023         ArrayCoordinateImpl(
00024             const ArrayCoordinate & rhs
00025         );
00026 
00027         ArrayCoordinateImpl(
00028             const size_t coords[],
00029             const size_t dimensions
00030         );
00031 
00032         virtual ~ArrayCoordinateImpl();
00033 
00034         virtual const size_t
00035         get_number_dimensions() const;
00036 
00037         virtual const size_t &
00038         operator[] (
00039             size_t idx
00040         ) const;
00041 
00042         virtual size_t &
00043         operator[] (
00044             size_t idx
00045         );
00046 
00047         virtual bool
00048         increment(
00049             const ArrayCoordinate & extents
00050         );
00051 
00052         virtual
00053         ArrayCoordinateImpl &
00054         operator = (
00055             const ArrayCoordinate & rhs
00056         );
00057 
00058         virtual ArrayCoordinateImpl &
00059         operator = (
00060             const String & coords
00061         );
00062 
00063       protected:
00064         size_t  m_number_dimensions;
00065         size_t* m_coords;
00066     };
00067 }
00068 
00069 #endif  

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