torc-master
Main Page
Related Pages
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
ObjectVisitor.hpp
Go to the documentation of this file.
1
// Torc - Copyright 2011-2013 University of Southern California. All Rights Reserved.
2
// $HeadURL$
3
// $Id$
4
5
// This program is free software: you can redistribute it and/or modify it under the terms of the
6
// GNU General Public License as published by the Free Software Foundation, either version 3 of the
7
// License, or (at your option) any later version.
8
//
9
// This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
10
// without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
11
// the GNU General Public License for more details.
12
//
13
// You should have received a copy of the GNU General Public License along with this program. If
14
// not, see <http://www.gnu.org/licenses/>.
15
16
#ifndef TORC_GENERIC_EDIF_OBJECTVISITOR_HPP
17
#define TORC_GENERIC_EDIF_OBJECTVISITOR_HPP
18
19
#include "
torc/generic/Root.hpp
"
20
#include "
torc/generic/Library.hpp
"
21
#include "
torc/generic/Cell.hpp
"
22
#include "
torc/generic/Design.hpp
"
23
#include "
torc/generic/View.hpp
"
24
#include "
torc/generic/ScalarPort.hpp
"
25
#include "
torc/generic/VectorPort.hpp
"
26
#include "
torc/generic/VectorPortBit.hpp
"
27
#include "
torc/generic/PortBundle.hpp
"
28
#include "
torc/generic/ScalarNet.hpp
"
29
#include "
torc/generic/VectorNet.hpp
"
30
#include "
torc/generic/VectorNetBit.hpp
"
31
#include "
torc/generic/NetBundle.hpp
"
32
#include "
torc/generic/SingleInstance.hpp
"
33
#include "
torc/generic/InstanceArray.hpp
"
34
#include "
torc/generic/InstanceArrayMember.hpp
"
35
#include "
torc/generic/SingleParameter.hpp
"
36
#include "
torc/generic/ParameterArray.hpp
"
37
#include "
torc/generic/ParameterArrayElement.hpp
"
38
#include "
torc/generic/Property.hpp
"
39
#include "
torc/generic/ScalarPortReference.hpp
"
40
#include "
torc/generic/VectorPortReference.hpp
"
41
#include "
torc/generic/VectorPortBitReference.hpp
"
42
#include "
torc/generic/PortBundleReference.hpp
"
43
#include "
torc/generic/PortList.hpp
"
44
#include "
torc/generic/PortListAlias.hpp
"
45
#include "
torc/generic/Status.hpp
"
46
#include "
torc/generic/Permutable.hpp
"
47
#include "
torc/generic/InterfaceJoinedInfo.hpp
"
48
#include "
torc/generic/SimulationInfo.hpp
"
49
#include "
torc/generic/Simulate.hpp
"
50
#include "
torc/generic/LogicalResponse.hpp
"
51
#include "
torc/generic/LogicValue.hpp
"
52
#include "
torc/generic/LogicElement.hpp
"
53
#include "
torc/generic/WaveValue.hpp
"
54
#include "
torc/generic/Apply.hpp
"
55
#include "
torc/generic/Timing.hpp
"
56
#include "
torc/generic/Event.hpp
"
57
#include "
torc/generic/ForbiddenEvent.hpp
"
58
59
namespace
torc {
60
namespace
generic {
61
62
/**
63
* A inoutVisitor that can visit all types of leaf type elements in the library. All visit methods
64
* will need to be overridden in the deriving class.
65
*/
66
class
ObjectVisitor
:
public
Root::Visitor
,
public
Library::Visitor
,
public
Cell::Visitor
,
67
public
Design::Visitor
,
public
View::Visitor
,
public
ScalarPort::Visitor
,
68
public
VectorPort::Visitor
,
public
VectorPortBit::Visitor
,
public
PortBundle::Visitor
,
69
public
ScalarNet::Visitor
,
public
VectorNet::Visitor
,
public
VectorNetBit::Visitor
,
70
public
NetBundle::Visitor
,
public
SingleInstance::Visitor
,
public
InstanceArray::Visitor
,
71
public
InstanceArrayMember::Visitor
,
public
Property::Visitor
,
public
SingleParameter::Visitor
,
72
public
ParameterArray::Visitor
,
public
ParameterArrayElement::Visitor
,
73
public
ScalarPortReference::Visitor
,
public
VectorPortReference::Visitor
,
74
public
VectorPortBitReference::Visitor
,
public
PortBundleReference::Visitor
,
75
public
PortList::Visitor
,
public
PortListAlias::Visitor
,
public
Status::Visitor
,
76
public
Permutable::Visitor
,
public
InterfaceJoinedInfo::Visitor
,
public
SimulationInfo::Visitor
,
77
public
Simulate::Visitor
,
public
LogicalResponse::Visitor
,
public
LogicValue::Visitor
,
78
public
LogicElement::Visitor
,
public
WaveValue::Visitor
,
public
Apply::Visitor
,
79
public
Timing::Visitor
,
public
Event::Visitor
,
public
ForbiddenEvent::Visitor
{
80
81
protected
:
82
ObjectVisitor
();
83
public
:
84
virtual
85
~ObjectVisitor
()
throw
();
86
};
87
88
}
// namespace generic
89
}
// namespace torc
90
91
#endif // TORC_GENERIC_EDIF_OBJECTVISITOR_HPP
InterfaceJoinedInfo.hpp
torc::generic::VisitorType
An acyclic inoutVisitor implementation.
Definition:
VisitorType.hpp:57
Apply.hpp
Permutable.hpp
SingleParameter.hpp
LogicalResponse.hpp
VectorPortBit.hpp
VectorPortReference.hpp
Timing.hpp
PortList.hpp
PortListAlias.hpp
Root.hpp
SingleInstance.hpp
PortBundle.hpp
SimulationInfo.hpp
ScalarPort.hpp
InstanceArrayMember.hpp
Property.hpp
ScalarNet.hpp
Design.hpp
Library.hpp
WaveValue.hpp
VectorNet.hpp
LogicElement.hpp
Status.hpp
Cell.hpp
LogicValue.hpp
ScalarPortReference.hpp
InstanceArray.hpp
Simulate.hpp
torc::generic::ObjectVisitor
Definition:
ObjectVisitor.hpp:66
torc::generic::ObjectVisitor::~ObjectVisitor
virtual ~ObjectVisitor()
Definition:
ObjectVisitor.cpp:66
ForbiddenEvent.hpp
ParameterArray.hpp
PortBundleReference.hpp
torc::generic::ObjectVisitor::ObjectVisitor
ObjectVisitor()
Definition:
ObjectVisitor.cpp:25
VectorPort.hpp
Event.hpp
NetBundle.hpp
VectorPortBitReference.hpp
ParameterArrayElement.hpp
View.hpp
VectorNetBit.hpp
src
torc
generic
edif
ObjectVisitor.hpp
Generated on Thu Dec 18 2014 16:30:37 for torc-master by
1.8.6