FedRegion.hh

Go to the documentation of this file.
00001 // ----------------------------------------------------------------------------
00002 // CERTI - HLA RunTime Infrastructure
00003 // Copyright (C) 2002-2005  ONERA
00004 //
00005 // This file is part of CERTI-libCERTI
00006 //
00007 // CERTI-libCERTI is free software ; you can redistribute it and/or
00008 // modify it under the terms of the GNU Lesser General Public License
00009 // as published by the Free Software Foundation ; either version 2 of
00010 // the License, or (at your option) any later version.
00011 //
00012 // CERTI-libCERTI is distributed in the hope that it will be useful, but
00013 // WITHOUT ANY WARRANTY ; without even the implied warranty of
00014 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00015 // Lesser General Public License for more details.
00016 //
00017 // You should have received a copy of the GNU Lesser General Public
00018 // License along with this program ; if not, write to the Free Software
00019 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
00020 // USA
00021 //
00022 // $Id: FedRegion.hh,v 3.4 2008/12/07 20:16:13 gotthardp Exp $
00023 // ----------------------------------------------------------------------------
00024 
00025 #ifndef CERTI_FED_REGION_HH
00026 #define CERTI_FED_REGION_HH
00027 
00028 #include "certi.hh"
00029 #include "BaseRegion.hh"
00030 
00031 namespace certi {
00032 
00033 class RoutingSpace ;
00034 
00035 class CERTI_EXPORT FedRegion : public BaseRegion
00036 {
00037 public:
00038     FedRegion(RegionHandle, SpaceHandle, const std::vector<Extent> &);
00039     virtual ~FedRegion();
00040 
00041     virtual ULong getRangeLowerBound(ExtentIndex, DimensionHandle) const
00042         throw (ArrayIndexOutOfBounds);
00043 
00044     virtual ULong getRangeUpperBound(ExtentIndex, DimensionHandle) const
00045         throw (ArrayIndexOutOfBounds);
00046 
00047     virtual void setRangeLowerBound(ExtentIndex, DimensionHandle, ULong)
00048         throw (ArrayIndexOutOfBounds);
00049 
00050     virtual void setRangeUpperBound(ExtentIndex, DimensionHandle, ULong)
00051         throw (ArrayIndexOutOfBounds);
00052 
00053     virtual SpaceHandle getSpaceHandle() const
00054         throw ();
00055 
00056     virtual ULong getNumberOfExtents() const
00057         throw ();
00058 
00059     virtual ULong getRangeLowerBoundNotificationLimit(ExtentIndex,
00060                                                       DimensionHandle) const
00061         throw (ArrayIndexOutOfBounds);
00062 
00063     virtual ULong getRangeUpperBoundNotificationLimit(ExtentIndex,
00064                                                       DimensionHandle) const
00065         throw (ArrayIndexOutOfBounds);
00066 
00067     void commit();
00068 
00069 private:
00070     SpaceHandle space ;
00071     std::vector<Extent> coExtents ;
00072 };
00073 
00074 }
00075 
00076 #endif // CERTI_FED_REGION_HH
00077 
00078 // $Id: FedRegion.hh,v 3.4 2008/12/07 20:16:13 gotthardp Exp $

Generated on Thu Apr 30 15:53:49 2009 for CERTIDeveloperDocumentation by doxygen 1.5.5