Hurricane VLSI Database


Tabulation.h
1// ****************************************************************************************************
2// File: ./hurricane/Tabulation.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#pragma once
21#ifndef HURRICANE_COMMONS_H
22#error "Tabulation.h must be included through Commons.h"
23#endif
24
25namespace Hurricane {
26
27
28
29// ****************************************************************************************************
30// Tabulation declaration
31// ****************************************************************************************************
32
34// *************
35
36// Attributes
37// **********
38
39 private: string _s;
40 private: unsigned _n;
41
42// Constructors
43// ************
44
45 public: Tabulation(const string& s = " ");
46
47 public: Tabulation(const Tabulation& tabulation);
48
49// Destructor
50// **********
51
52 public: ~Tabulation();
53
54// Operators
55// *********
56
57 public: Tabulation& operator=(const Tabulation& tabulation);
58
60 public: Tabulation operator++(int);
62 public: Tabulation operator--(int);
63
64// Others
65// ******
66
67 public: unsigned getWidth() const { return _s.size()*_n; };
68 public: string _getTypeName() const { return _TName("Tabulation"); };
69 public: string _getString() const;
70 public: Record* _getRecord() const { return NULL; };
71 public: Slot* _getSlot() const { return NULL; };
72
73};
74
75
76
77// ****************************************************************************************************
78// Variables
79// ****************************************************************************************************
80
81extern Tabulation tab;
82
83
84
85} // End of Hurricane namespace.
86
87
88inline std::string getString ( Hurricane::Tabulation& data )
89{ return data._getString(); }
90
91inline std::string getString ( const Hurricane::Tabulation& data )
92{ return data._getString(); }
93
94inline std::string getString ( Hurricane::Tabulation* data )
95{ if (!data) return "NULL [Tabulation]"; return data->_getString(); }
96
97inline std::string getString ( const Hurricane::Tabulation* data )
98{ if (!data) return "NULL [const Tabulation]"; return data->_getString(); }
99
100inline std::ostream& operator<< ( std::ostream& o, Hurricane::Tabulation* d )
101{
102 if (!d) return o << "NULL [Tabulation]";
103 return o << "&" << d->_getString();
104}
105
106inline std::ostream& operator<< ( std::ostream& o, const Hurricane::Tabulation* d )
107{
108 if (!d) return o << "NULL [const Tabulation]";
109 return o << "&" << d->_getString();
110}
111
112inline std::ostream& operator<< ( std::ostream& o, Hurricane::Tabulation& d )
113{ return o << d._getString(); }
114
115inline std::ostream& operator<< ( std::ostream& o, const Hurricane::Tabulation& d )
116{ return o << d._getString(); }
117
118inline Hurricane::Record* getRecord ( Hurricane::Tabulation* data )
119{ if (!data) return NULL; return data->_getRecord(); }
120
121inline Hurricane::Record* getRecord ( const Hurricane::Tabulation* data )
122{ if (!data) return NULL; return data->_getRecord(); }
123
124
125
126//INSPECTOR_PR_SUPPORT(Hurricane::Tabulation);
127
128
129
130// ****************************************************************************************************
131// Generic functions
132// ****************************************************************************************************
133
134
135// ****************************************************************************************************
136// Copyright (c) BULL S.A. 2000-2018, All Rights Reserved
137// ****************************************************************************************************
Tabulation description (API).
Definition Tabulation.h:33
Tabulation & operator=(const Tabulation &tabulation)
Tabulation(const string &s=" ")
Tabulation(const Tabulation &tabulation)
Tabulation operator--(int)
Tabulation & operator++()
Tabulation operator++(int)
Tabulation & operator--()
Contains Almost Everything.
Definition BasicLayer.h:39


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