Hurricane VLSI Database


Intervals.h
1 // ****************************************************************************************************
2 // File: ./hurricane/Intervals.h
3 // Authors: R. Escassut
4 // Copyright (c) BULL S.A. 2000-2018, All Rights Reserved
5 //
6 // This file is part of Hurricane.
7 //
8 // Hurricane is free software: you can redistribute it and/or modify it under the terms of the GNU
9 // Lesser General Public License as published by the Free Software Foundation, either version 3 of the
10 // License, or (at your option) any later version.
11 //
12 // Hurricane is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
13 // the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the Lesser GNU
14 // General Public License for more details.
15 //
16 // You should have received a copy of the Lesser GNU General Public License along with Hurricane. If
17 // not, see <http://www.gnu.org/licenses/>.
18 // ****************************************************************************************************
19 
20 #ifndef HURRICANE_INTERVALS
21 #define HURRICANE_INTERVALS
22 
23 #include "hurricane/Collection.h"
24 #include "hurricane/Interval.h"
25 
26 namespace Hurricane {
27 
28 
29 
30 // ****************************************************************************************************
31 // Intervals declaration
32 // ****************************************************************************************************
33 
34 typedef GenericCollection<Interval> Intervals;
35 
36 
37 
38 // ****************************************************************************************************
39 // IntervalLocator declaration
40 // ****************************************************************************************************
41 
42 typedef GenericLocator<Interval> IntervalLocator;
43 
44 
45 
46 // ****************************************************************************************************
47 // IntervalFilter declaration
48 // ****************************************************************************************************
49 
50 typedef GenericFilter<Interval> IntervalFilter;
51 
52 
53 
54 // ****************************************************************************************************
55 // for_each_interval declaration
56 // ****************************************************************************************************
57 
58 #define for_each_interval(interval, intervals)\
59 /*********************************************/\
60 {\
61  IntervalLocator _locator = intervals.getLocator();\
62  while (_locator.isValid()) {\
63  Interval interval = _locator.getElement();\
64  _locator.progress();
65 
66 
67 
68 } // End of Hurricane namespace.
69 
70 #endif // HURRICANE_INTERVALS
71 
72 
73 // ****************************************************************************************************
74 // Copyright (c) BULL S.A. 2000-2018, All Rights Reserved
75 // ****************************************************************************************************
Contains Almost Everything.
Definition: BasicLayer.h:39


Generated by doxygen 1.9.1 on Wed Nov 20 2024 Return to top of page
Hurricane VLSI Database Copyright © 2000-2020 Bull S.A. All rights reserved