Hurricane VLSI Database


Verticals.h
1 // ****************************************************************************************************
2 // File: ./hurricane/Verticals.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_VERTICALS
21 #define HURRICANE_VERTICALS
22 
23 #include "hurricane/Collection.h"
24 
25 namespace Hurricane {
26 
27 class Vertical;
28 
29 
30 
31 // ****************************************************************************************************
32 // Verticals declaration
33 // ****************************************************************************************************
34 
36 
37 
38 
39 // ****************************************************************************************************
40 // VerticalLocator declaration
41 // ****************************************************************************************************
42 
44 
45 
46 
47 // ****************************************************************************************************
48 // VerticalFilter declaration
49 // ****************************************************************************************************
50 
52 
53 
54 
55 // ****************************************************************************************************
56 // for_each_vertical declaration
57 // ****************************************************************************************************
58 
59 #define for_each_vertical(vertical, verticals)\
60 /*********************************************/\
61 {\
62  VerticalLocator _locator = verticals.getLocator();\
63  while (_locator.isValid()) {\
64  Vertical* vertical = _locator.getElement();\
65  _locator.progress();
66 
67 
68 
69 } // End of Hurricane namespace.
70 
71 #endif // HURRICANE_VERTICALS
72 
73 
74 // ****************************************************************************************************
75 // Copyright (c) BULL S.A. 2000-2018, All Rights Reserved
76 // ****************************************************************************************************
Generic Collection auto-pointer.
Definition: Collection.h:235
Generic Filter auto-pointer.
Definition: Filter.h:86
Generic Locator auto-pointer.
Definition: Locator.h:113
Contains Almost Everything.
Definition: BasicLayer.h:39
GenericLocator< Vertical * > VerticalLocator
Definition: Verticals.h:43
GenericCollection< Vertical * > Verticals
Definition: Verticals.h:27
GenericFilter< Vertical * > VerticalFilter
Definition: Verticals.h:51


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