Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

oagFpga::AiModGraph Class Reference

Object for manipulating graphs in the module domain view. More...

#include <oagFpgaAiModGraph.h>

List of all members.

Public Types

typedef set< AiModRefCut
typedef list< CutCutSet

Static Public Member Functions

Functional operations
AiModRef getNull (oa::oaModule *module)
bool isNull (AiModRef x)
 Returns a null reference inside the given module.
AiModRef constantOne (oa::oaModule *module)
 Tests a reference to see if it is null.
AiModRef constantZero (oa::oaModule *module)
 Returns a reference in the given module to the function that is always true.
AiModRef notOf (AiModRef x)
 Returns a reference in the given module to the function that is always false.
bool isInverted (AiModRef x)
 Returns the complement of a reference.
AiModRef getNonInverted (AiModRef x)
 Tests whether a reference that points to a node is inverted.
User-data
Returns a reference that is not inverted.

unsigned int getUserData (AiModRef x, unsigned int index)
void setUserData (AiModRef x, unsigned int index, unsigned int data)
 Returns the user data field on a node.
Graph modification
Sets the user data field on a node.

AiModRef newSequential (AiModRef nextState)
AiModRef newTerminal (AiModRef terminal)
 Creates a new SEQUENTIAL node.
AiModRef newAnd (AiModRef x, AiModRef y)
 Returns a new AND node.
AiModRef andOf (AiModRef x, AiModRef y)
 Returns the logic and of two functions.
void setTerminalDriver (AiModRef terminal, AiModRef driver)
 Sets the driver of a given terminal.
void setNextState (AiModRef sequential, AiModRef nextState)
 Sets the next state input of a given SEQUENTIAL node.
void setAndLeft (AiModRef x, AiModRef left)
 Sets the left operand of a given AND node.
void setAndRight (AiModRef x, AiModRef left)
 Sets the right operand of a given AND node.
void resubstitute (AiModRef original, AiModRef replacement)
 Resubstitutes one node for another.
void resubstitute (AiModRef original, AiModRef replacement, AiModRef target)
 Resubstitutes one node for another.
void detach (AiModRef x)
 Detaches a node from its fan-in and fan-out.
Intra-module incremental graph traversal
oagAi::Node::Type getNodeType (AiModRef x)
AiModRef getTerminalDriver (AiModRef terminal)
 Returns the type of the referenced graph node.
bool isTerminal (AiModRef x)
 Returns the driver of a TERMINAL node.
AiModRef getNextState (AiModRef sequential)
 Tests if a reference is to a TERMINAL node.
bool isSequential (AiModRef x)
 Returns the next state input of a SEQUENTIAL node.
oagAi::Node::SequentialData * getSequentialData (AiModRef sequential)
 Tests if a reference is to a SEQUENTIAL node.
bool isAnd (AiModRef x)
 Returns the sequential description of a SEQUENTIAL node.
AiModRef getAndLeft (AiModRef x)
 Tests if a reference is to an AND node.
AiModRef getAndRight (AiModRef x)
 Returns the left operand of an AND node.
list< AiModRefgetFanout (AiModRef x)
 Returns the fan-outs of a node that lie within the same module.
void getFanout (AiModRef x, list< AiModRef > &result)
 Returns the fan-outs of a node that lie within the same module.
bool hasFanout (AiModRef x)
Explicitly managing graph-to-net connections
Returns the fanout of a node.

AiModRef prepareNetToAiConnection (oa::oaModBitNet *net)
 Creates an terminal node to represent the function of a net.
oa::oaModBitNet * getNetToAiConnection (AiModRef ref)
 Returns the OpenAccess net connected to a given graph TERMINAL.
AiModRef getNetToAiConnection (oa::oaModBitNet *net)
 Returns the graph node connected to a given OpenAccess net.
void setNetToAiConnection (oa::oaModBitNet *net, AiModRef ref)
 Creates a logical connection between an OpenAccess net and a graph TERMINAL node.
void removeNetToAiConnection (oa::oaModBitNet *net)
 Destroys a logical connection between an OpenAccess net and a graph TERMINAL node.
oa::oaModBitNet * findDriverOfEquivalentNets (oa::oaModBitNet *net)
 Returns the equivalent net that is driving a net.
void connectEquivalentNetsInGraph (oa::oaModule *module)
 Connects the TERMINAL nodes of equivalent nets.
Advanced graph traversal
bool hasCombinationalCycle (oa::oaModule *module)
 Tests if there are any combinational cycles in a module's design.
CutSet enumerateKfeasibleCuts (AiModRef x, unsigned int maxCutSize, int maxCutCout=-1, int maxCutDepth=-1, bool includeConstantNode=true)
 Returns the list of cuts in the transitive fan-in of a given node up to a given size.
void clearKfeasibleCuts (oa::oaModule *module)
 Clears the cached sets of cuts in a given module.
void getTransitiveFanin (AiModRef x, list< AiModRef > &transitiveFanin, bool includeRoots=true, bool crossSequential=false)
 Returns a list of all nodes in the transitive fan-in of one node.
void getTransitiveFanin (AiModRef x, vector< AiModRef > &transitiveFanin, bool includeRoots=true, bool crossSequential=false)
 Returns a vector of all nodes in the transitive fan-in of one node.
void getTransitiveFanin (list< AiModRef > x, list< AiModRef > &transitiveFanin, bool includeRoots=true, bool crossSequential=false)
 Returns a list of all nodes in the transitive fan-in of several nodes.
void getTransitiveFanin (list< AiModRef > x, vector< AiModRef > &transitiveFanin, bool includeRoots=true, bool crossSequential=false)
 Returns a vector of all nodes in the transitive fan-in of several nodes.
void getTransitiveFanout (AiModRef x, list< AiModRef > &transitiveFanout, bool includeRoots=true, bool crossSequential=false)
 Returns a list of all nodes in the transitive fan-out of one node.
void getTransitiveFanout (AiModRef x, vector< AiModRef > &transitiveFanout, bool includeRoots=true, bool crossSequential=false)
 Returns a vector of all nodes in the transitive fan-out of one node.
void getTransitiveFanout (list< AiModRef > x, list< AiModRef > &transitiveFanout, bool includeRoots=true, bool crossSequential=false)
 Returns a list of all nodes in the transitive fan-out of several nodes.
void getTransitiveFanout (list< AiModRef > x, vector< AiModRef > &transitiveFanout, bool includeRoots=true, bool crossSequential=false)
 Returns a vector of all nodes in the transitive fan-out of several nodes.
void getFaninCone (AiModRef x, const list< AiModRef > &coneRoots, list< AiModRef > &transitiveFanin, bool includeRoots=true)
 Returns a list of the nodes between a specified cut and a node.
void getFanoutCone (AiModRef x, const list< AiModRef > &coneRoots, list< AiModRef > &transitiveFanout, bool includeRoots=true)
 Returns a list of the nodes between a node and a specified cut.
void getFaninRoots (AiModRef x, list< AiModRef > &faninRoots)
 Returns the roots of the transitive fan-in of a node.
void getFanoutRoots (AiModRef x, list< AiModRef > &fanoutRoots)
 Returns the roots of the transitive fan-out of a node.
Equivalence marking
bool testEquivalence (AiModRef x, AiModRef y)
 Tests if two references are explicitly marked as equivalent.
void setEquivalent (AiModRef x, AiModRef y)
 Marks two references as being functionally equivalent.
void getEquivalents (AiModRef x, list< AiModRef > &result)
 Returns all references that have been marked equivalent.
void removeEquivalences (AiModRef x)
void chooseEquivalent (AiModRef x)
 Removes any equivalences between this and other nodes.
void getFanoutOfEquivalentNodes (AiModRef x, list< AiModRef > &result)
 Returns the fan-out of a node and all of its equivalents.
Global graph queries
void print (oa::oaModule *module)
 Prints entire graph.
void getAllNodes (oa::oaModule *module, list< AiModRef > &result)
 Gets all nodes inside of a module.
void getInputs (oa::oaModule *module, list< AiModRef > &result)
 Gets all input terminals inside a module.
void getOutputs (oa::oaModule *module, list< AiModRef > &result)
 Gets all output terminals inside a module.
void getLocalStates (oa::oaModule *module, list< AiModRef > &result)
 Gets all state bits inside a module.
void getAllConnections (oa::oaModBitNet *net, set< oa::oaModBitNet * > &connectedNets, set< AiModRef > &connectedRefs, bool searchForwardThroughGraph=true, bool searchBackwardThroughGraph=true, bool searchThroughEquivNets=true, bool searchThroughEquivRefs=false, bool includeSelf=true)
 Returns the set of nets and refs that are logically connected.
void getAllConnections (AiModRef x, set< oa::oaModBitNet * > &connectedNets, set< AiModRef > &connectedRefs, bool searchForwardThroughGraph=true, bool searchBackwardThroughGraph=true, bool searchThroughEquivNets=true, bool searchThroughEquivRefs=false, bool includeSelf=true)
 Returns the set of nets and refs that are logically connected.
Memory management
void incrementExternalReferences (AiModRef x)
void decrementExternalReferences (AiModRef x)
 Increment the external reference count of a node.
void clearExternalReferences (AiModRef x)
 Decrement the external reference count of a node.

Static Protected Member Functions

oagAi::Graph * getGraph (oa::oaDesign *design)
 Clears the reference count of a particular node.
oagAi::Graph * getGraph (oa::oaModule *module)
 Returns the graph of a design.
oagAi::Graph * getGraph (const AiModRef &x)
 Returns the graph of a module's design.
void failIfInDifferentModules (oa::oaModule *x, oa::oaModule *y)
 Generates an error if the two modules are not identical.
void failIfInDifferentModules (AiModRef x, AiModRef y)
oa::oaModule * convertAiModRefListToRefList (const list< AiModRef > &source, list< oagAi::Ref > &result)
 Converts a list of AiModRefs in a given module into a list of Refs.
void convertRefListToAiModRefList (const list< oagAi::Ref > &source, oa::oaModule *module, list< AiModRef > &result)
 Converts a list of Refs in a given module into a list of AiModRefs.
void convertRefVectorToAiModRefVector (const vector< oagAi::Ref > &source, oa::oaModule *module, vector< AiModRef > &result)
 Converts a vector of Refs in a given module into a vector of AiModRefs.

Friends

class SimMod


Detailed Description

Object for manipulating graphs in the module domain view.

The AiModGraph class is not a data structure on its own, but instead provides an interface for manipulating functionality graphs in the folded module domain view. All methods in the AiModGraph class are static. The AiModRef structure provides the mechanism for referring to graph nodes within this view, and most AiModGraph methods operate on AiModRefs.

The module view is appropriate for making modifications to the local functional descriptions of design objects. The functional graphs describe the local behavior of each logical object (module), with every instantiation (occurrence) of a given object type (module) behaving identically. Every occurrence inherits its local functional behavior from the module type that it implements. This is analagous to the role that physical descriptions play in the block domain.

The module view is not appropriate for working with the global functionality of hierarchical designs. Two different instantiations (occurrences) may implement the same local behavior, but the global functions being implemented on each of their pins depends on their connectivity and context in the larger design. To manipulate global functionality, it does not suffice to traverse the folded (module) design view; the unfolded (occurrence) hierarchy is better suited. The OccGraph class provided the interface for manipulating graphs in this view.

Definition at line 48 of file oagFpgaAiModGraph.h.


Member Typedef Documentation

typedef set<AiModRef> oagFpga::AiModGraph::Cut
 

Definition at line 58 of file oagFpgaAiModGraph.h.

Referenced by enumerateKfeasibleCuts().

typedef list<Cut> oagFpga::AiModGraph::CutSet
 

Definition at line 59 of file oagFpgaAiModGraph.h.

Referenced by enumerateKfeasibleCuts().


Member Function Documentation

AiModRef oagFpga::AiModGraph::andOf AiModRef  x,
AiModRef  y
[static]
 

Returns the logic and of two functions.

A new node may or may not be created, depending on whether the resulting function can be trivially reduced (i.e. one of the operands is constant) or if the node is structurally isomorphic to an existing one and hashing is enabled.

Parameters:
x 
y 
Returns:
a reference to an AND node

Definition at line 129 of file oagFpgaAiModGraph.cpp.

References failIfInDifferentModules(), getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::chooseEquivalent AiModRef  x  )  [inline, static]
 

Removes any equivalences between this and other nodes.

Each of several nodes which are marked as equivalent may have fan-out. This function takes all of the references to the equivalent nodes and reconnects them to only one of the equivalent nodes.

Parameters:
x 

Definition at line 330 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::clearExternalReferences AiModRef  x  )  [inline, static]
 

Decrement the external reference count of a node.

Parameters:
x 

Definition at line 397 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::clearKfeasibleCuts oa::oaModule *  module  )  [static]
 

Clears the cached sets of cuts in a given module.

Parameters:
module 

Definition at line 345 of file oagFpgaAiModGraph.cpp.

References getGraph().

void oagFpga::AiModGraph::connectEquivalentNetsInGraph oa::oaModule *  module  )  [static]
 

Connects the TERMINAL nodes of equivalent nets.

Functionally identical nets can also be marked equivalent in the OpenAccess database itself. The semantics of this are unfortunately very unclear as to whether this means either (1) the two nets already both implement the same functionality or (2) the nets don't already implement the same functionality but they should (for example by physical connection).

For example, the verilog2oa imports continuous assignments by marking the nets as equivalent. In Verilog, this construct implies (2). In such cases, it may be convenient and/or necessary to reflect this functional dependency in the graph, this routine provides the means to do so.

For a group of nets that are marked equivalent, the one that is being driven (as an input or in the graph) is first discovered. The TERMINAL node of this net is then set as the driver as the TERMINAL nodes of the other nets.

If no driver is found, the nets are left as is.

If there are multiple equivalent nets that are being driven, the existing drivers will not be modified. This should only be the case if the equivalent nets feature in the OpenAccess database is being used in the manner of (1). Because only the undriven nets are modified, this should be compatible with such as use case as well.

Parameters:
module 

Definition at line 1179 of file oagFpgaAiModGraph.cpp.

References findDriverOfEquivalentNets(), getNetToAiConnection(), getTerminalDriver(), isNull(), oagFpga::AiModRef::printName(), setTerminalDriver(), and oagFpga::toBitNet().

AiModRef oagFpga::AiModGraph::constantOne oa::oaModule *  module  )  [inline, static]
 

Tests a reference to see if it is null.

Parameters:
module 
Returns:
a reference to a function that is always true

Definition at line 84 of file oagFpgaAiModGraph.h.

AiModRef oagFpga::AiModGraph::constantZero oa::oaModule *  module  )  [inline, static]
 

Returns a reference in the given module to the function that is always true.

Parameters:
module 
Returns:
a reference to a function that is always false

Definition at line 90 of file oagFpgaAiModGraph.h.

oa::oaModule * oagFpga::AiModGraph::convertAiModRefListToRefList const list< AiModRef > &  source,
list< oagAi::Ref > &  result
[static, protected]
 

Converts a list of AiModRefs in a given module into a list of Refs.

Parameters:
source the list of original Refs
result the list of resulting AiModRefs

Definition at line 59 of file oagFpgaAiModGraph.cpp.

Referenced by getFaninCone(), getFanoutCone(), getTransitiveFanin(), and getTransitiveFanout().

void oagFpga::AiModGraph::convertRefListToAiModRefList const list< oagAi::Ref > &  source,
oa::oaModule *  module,
list< AiModRef > &  result
[static, protected]
 

Converts a list of Refs in a given module into a list of AiModRefs.

Parameters:
source the list of original Refs
module the module
result the list of resulting AiModRefs

Definition at line 40 of file oagFpgaAiModGraph.cpp.

Referenced by getAllNodes(), getEquivalents(), getFaninCone(), getFaninRoots(), getFanout(), getFanoutCone(), getFanoutOfEquivalentNodes(), getFanoutRoots(), getLocalStates(), getTransitiveFanin(), and getTransitiveFanout().

void oagFpga::AiModGraph::convertRefVectorToAiModRefVector const vector< oagAi::Ref > &  source,
oa::oaModule *  module,
vector< AiModRef > &  result
[static, protected]
 

Converts a vector of Refs in a given module into a vector of AiModRefs.

Parameters:
source the vector of oagAI Refs
module the module
result the vector of resulting AiModRefs

Definition at line 82 of file oagFpgaAiModGraph.cpp.

Referenced by getTransitiveFanin(), and getTransitiveFanout().

void oagFpga::AiModGraph::decrementExternalReferences AiModRef  x  )  [inline, static]
 

Increment the external reference count of a node.

When the application is finished with a node, its external reference count can be decremented, such that if there exist no external references the node may be freed during the next garbage collection.

Parameters:
x 

Definition at line 387 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::detach AiModRef  x  )  [static]
 

Detaches a node from its fan-in and fan-out.

The inputs of this node are reset to null, its fan-outs are cleared, and all references to it are also reset to null.

Parameters:
x 

Definition at line 274 of file oagFpgaAiModGraph.cpp.

References getGraph(), and oagFpga::AiModRef::ref.

AiModGraph::CutSet oagFpga::AiModGraph::enumerateKfeasibleCuts AiModRef  x,
unsigned int  maxCutSize,
int  maxCutCount = -1,
int  maxCutDepth = -1,
bool  includeConstantNode = true
[static]
 

Returns the list of cuts in the transitive fan-in of a given node up to a given size.

Information about cut sets is cached between subsequent calls. This cache can be reset by clearKfeasibleCuts().

For further information, see oagAi::enumerateKfeasibleCuts()

Parameters:
x a graph node
maxCutSize the bound on the width of the cut
maxCutCount the maximum number of cuts to return
maxCutDepth the maximum levels backward to search
includeConstantNode should the constant node ever be included
Returns:
the set of K-feasible for the graph node

Definition at line 316 of file oagFpgaAiModGraph.cpp.

References Cut, CutSet, getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::failIfInDifferentModules AiModRef  x,
AiModRef  y
[inline, static, protected]
 

Parameters:
x 
y 

Definition at line 434 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::module.

void oagFpga::AiModGraph::failIfInDifferentModules oa::oaModule *  x,
oa::oaModule *  y
[inline, static, protected]
 

Generates an error if the two modules are not identical.

Parameters:
x 
y 

Definition at line 21 of file oagFpgaAiModGraph.cpp.

Referenced by andOf(), newAnd(), resubstitute(), setAndLeft(), setAndRight(), setEquivalent(), setNetToAiConnection(), setNextState(), setTerminalDriver(), and testEquivalence().

oa::oaModBitNet * oagFpga::AiModGraph::findDriverOfEquivalentNets oa::oaModBitNet *  net  )  [static]
 

Returns the equivalent net that is driving a net.

The driving net is the first equivalent net that satisfies one of these conditions: 1. connected to an input Term 2. connected to a TERMINAL node that is not driven by NULL

In the case where the given net is itself the driver for the group, NULL be returned.

Parameters:
net 
Returns:
driver driving net

Definition at line 1073 of file oagFpgaAiModGraph.cpp.

References DEBUG_PRINT, DEBUG_PRINTMORE, getNetToAiConnection(), getTerminalDriver(), isNull(), and isTerminal().

Referenced by connectEquivalentNetsInGraph().

void oagFpga::AiModGraph::getAllConnections AiModRef  x,
set< oa::oaModBitNet * > &  connectedNets,
set< AiModRef > &  connectedRefs,
bool  searchForwardThroughGraph = true,
bool  searchBackwardThroughGraph = true,
bool  searchThroughEquivNets = true,
bool  searchThroughEquivRefs = false,
bool  includeSelf = true
[static]
 

Returns the set of nets and refs that are logically connected.

Parameters:
net 
connectedNets the resulting list of connected nets
connectedRefs the resulting list of connected refs
searchForwardThroughGraph follow TERMINAL fan-out to functionally identical refs
searchBackwardThroughGraph follow TERMINAL drivers to functionally identical refs
searchThroughEquivNets search all nets that are marked equivalent in the database
searchThroughEquivRefs follow all Refs that are marked equivalent in the graph
includeSelf include the starting node

Definition at line 977 of file oagFpgaAiModGraph.cpp.

References getAllConnections(), getEquivalents(), getFanout(), getNetToAiConnection(), getTerminalDriver(), isInverted(), isNull(), isTerminal(), and notOf().

void oagFpga::AiModGraph::getAllConnections oa::oaModBitNet *  net,
set< oa::oaModBitNet * > &  connectedNets,
set< AiModRef > &  connectedRefs,
bool  searchForwardThroughGraph = true,
bool  searchBackwardThroughGraph = true,
bool  searchThroughEquivNets = true,
bool  searchThroughEquivRefs = false,
bool  includeSelf = true
[static]
 

Returns the set of nets and refs that are logically connected.

Parameters:
net 
connectedNets the resulting list of connected nets
connectedRefs the resulting list of connected refs
searchForwardThroughGraph follow TERMINAL fan-out to functionally identical refs
searchBackwardThroughGraph follow TERMINAL drivers to functionally identical refs
searchThroughEquivNets search all nets that are marked equivalent in the database
searchThroughEquivRefs follow all Refs that are marked equivalent in the graph
includeSelf include the starting node

Definition at line 919 of file oagFpgaAiModGraph.cpp.

References getNetToAiConnection().

Referenced by getAllConnections().

void oagFpga::AiModGraph::getAllNodes oa::oaModule *  module,
list< AiModRef > &  result
[static]
 

Gets all nodes inside of a module.

Parameters:
module 
result the list of all nodes inside the module

Definition at line 872 of file oagFpgaAiModGraph.cpp.

References convertRefListToAiModRefList(), and getGraph().

Referenced by print().

AiModRef oagFpga::AiModGraph::getAndLeft AiModRef  x  )  [inline, static]
 

Tests if a reference is to an AND node.

If the reference is not to an AND node, an error will be generated.

Parameters:
x 
Returns:
reference to left operand

Definition at line 234 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

AiModRef oagFpga::AiModGraph::getAndRight AiModRef  x  )  [inline, static]
 

Returns the left operand of an AND node.

If the reference is not to an AND node, an error will be generated.

Parameters:
x 
Returns:
reference to right operand

Definition at line 243 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::getEquivalents AiModRef  x,
list< AiModRef > &  result
[static]
 

Returns all references that have been marked equivalent.

The set of equivalent references will be appended to the provided list. The list will include the reference provided.

Parameters:
x 
result 

Definition at line 696 of file oagFpgaAiModGraph.cpp.

References convertRefListToAiModRefList(), getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

Referenced by getAllConnections().

void oagFpga::AiModGraph::getFaninCone AiModRef  x,
const list< AiModRef > &  coneRoots,
list< AiModRef > &  transitiveFanin,
bool  includeRoots = true
[static]
 

Returns a list of the nodes between a specified cut and a node.

The nodes in the transitive fan-in are appended to the provided list in forward topological order. The initial node is not included. All references will be non-inverted.

See oagAi::getFaninCone() for more details.

Parameters:
x 
coneRoots the backward boundary of the cone
transitiveFanin the resulting list of nodes in the transitive fan-in
includeRoots true, if cut and/or root SEQUENTIAL, TERMINAL, and CONSTANT nodes should be included

Definition at line 1354 of file oagFpgaAiModGraph.cpp.

References convertAiModRefListToRefList(), convertRefListToAiModRefList(), getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::getFaninRoots AiModRef  x,
list< AiModRef > &  faninRoots
[static]
 

Returns the roots of the transitive fan-in of a node.

Parameters:
x 
faninRoots the resulting list of roots of the transitive fan-in

Definition at line 624 of file oagFpgaAiModGraph.cpp.

References convertRefListToAiModRefList(), getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::getFanout AiModRef  x,
list< AiModRef > &  result
[static]
 

Returns the fan-outs of a node that lie within the same module.

An error is generated if fanout is not being maintained.

Parameters:
x 
result the resulting list of nodes in the fan-out

Definition at line 381 of file oagFpgaAiModGraph.cpp.

References convertRefListToAiModRefList(), getFanout(), getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

list< AiModRef > oagFpga::AiModGraph::getFanout AiModRef  x  )  [static]
 

Returns the fan-outs of a node that lie within the same module.

An error is generated if fanout is not being maintained.

Parameters:
x 
Returns:
the fanout list

Definition at line 362 of file oagFpgaAiModGraph.cpp.

References convertRefListToAiModRefList(), getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

Referenced by getAllConnections(), and getFanout().

void oagFpga::AiModGraph::getFanoutCone AiModRef  x,
const list< AiModRef > &  coneRoots,
list< AiModRef > &  transitiveFanout,
bool  includeRoots = true
[static]
 

Returns a list of the nodes between a node and a specified cut.

The nodes in the transitive fan-out are appended to the provided list in forward topological order. The initial node is not included. All references will be non-inverted.

See oagAi::getFanoutCone() for more details.

Parameters:
x 
coneRoots the forward boundary of the cone
transitiveFanout the resulting list of nodes in the transitive fan-out
includeRoots true, if cut and/or root SEQUENTIAL, TERMINAL, and CONSTANT nodes should be included

Definition at line 1384 of file oagFpgaAiModGraph.cpp.

References convertAiModRefListToRefList(), convertRefListToAiModRefList(), getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::getFanoutOfEquivalentNodes AiModRef  x,
list< AiModRef > &  result
[static]
 

Returns the fan-out of a node and all of its equivalents.

Parameters:
x 
result the fan-out of a node and all of its equivalents

Definition at line 714 of file oagFpgaAiModGraph.cpp.

References convertRefListToAiModRefList(), getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::getFanoutRoots AiModRef  x,
list< AiModRef > &  fanoutRoots
[static]
 

Returns the roots of the transitive fan-out of a node.

Parameters:
x 
fanoutRoots the resulting list of roots of the transitive fan-out

Definition at line 642 of file oagFpgaAiModGraph.cpp.

References convertRefListToAiModRefList(), getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

oagAi::Graph* oagFpga::AiModGraph::getGraph const AiModRef x  )  [inline, static, protected]
 

Returns the graph of a module's design.

Parameters:
x 

Definition at line 427 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::module.

oagAi::Graph* oagFpga::AiModGraph::getGraph oa::oaModule *  module  )  [inline, static, protected]
 

Returns the graph of a design.

This module's functional description will be contained within this graph, along with the functional descriptions of other modules in the same design.

Parameters:
module 
Returns:
the graph of a module's design

Definition at line 417 of file oagFpgaAiModGraph.h.

oagAi::Graph* oagFpga::AiModGraph::getGraph oa::oaDesign *  design  )  [inline, static, protected]
 

Clears the reference count of a particular node.

All design modules' functional descriptions will be contained within this graph.

Parameters:
design 
Returns:
the graph of a design

Definition at line 408 of file oagFpgaAiModGraph.h.

Referenced by andOf(), clearKfeasibleCuts(), detach(), enumerateKfeasibleCuts(), getAllNodes(), getEquivalents(), getFaninCone(), getFaninRoots(), getFanout(), getFanoutCone(), getFanoutOfEquivalentNodes(), getFanoutRoots(), getLocalStates(), getTransitiveFanin(), getTransitiveFanout(), hasCombinationalCycle(), newAnd(), resubstitute(), setAndLeft(), setAndRight(), setEquivalent(), setNextState(), setTerminalDriver(), and testEquivalence().

void oagFpga::AiModGraph::getInputs oa::oaModule *  module,
list< AiModRef > &  result
[static]
 

Gets all input terminals inside a module.

An input terminal is a TERMINAL node that is connected to an input oaModTerm.

If the bit net attached to the oaModTerm does not have a connection to the graph, one is created.

Parameters:
module 
result the list of all input terminals inside the module

Definition at line 850 of file oagFpgaAiModGraph.cpp.

References prepareNetToAiConnection(), and oagFpga::toBitNet().

void oagFpga::AiModGraph::getLocalStates oa::oaModule *  module,
list< AiModRef > &  result
[static]
 

Gets all state bits inside a module.

Parameters:
module 
result the list of all state bits inside the module

Definition at line 893 of file oagFpgaAiModGraph.cpp.

References convertRefListToAiModRefList(), and getGraph().

AiModRef oagFpga::AiModGraph::getNetToAiConnection oa::oaModBitNet *  net  )  [static]
 

Returns the graph node connected to a given OpenAccess net.

Parameters:
net 
Returns:
a reference to the connected graph TERMINAL node, or a null AiModRef if none exists

Definition at line 769 of file oagFpgaAiModGraph.cpp.

References oagFpga::Manager::getNetToAiConnection().

oa::oaModBitNet * oagFpga::AiModGraph::getNetToAiConnection AiModRef  x  )  [static]
 

Returns the OpenAccess net connected to a given graph TERMINAL.

Parameters:
x 
Returns:
the module net, or NULL if there is none

Definition at line 753 of file oagFpgaAiModGraph.cpp.

References oagFpga::Manager::getNetToAiConnection(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

Referenced by connectEquivalentNetsInGraph(), findDriverOfEquivalentNets(), and getAllConnections().

AiModRef oagFpga::AiModGraph::getNextState AiModRef  sequential  )  [inline, static]
 

Tests if a reference is to a TERMINAL node.

If the reference is not to a SEQUENTIAL node, an error will be generated.

Parameters:
sequential 
Returns:
the reference to the next state, or null if none exists

Definition at line 203 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

oagAi::Node::Type oagFpga::AiModGraph::getNodeType AiModRef  x  )  [inline, static]
 

Parameters:
x 
Returns:
the type of the referenced node

Definition at line 174 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

AiModRef oagFpga::AiModGraph::getNonInverted AiModRef  x  )  [inline, static]
 

Tests whether a reference that points to a node is inverted.

Parameters:
x 
Returns:
a reference that is not inverted

Definition at line 111 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

AiModRef oagFpga::AiModGraph::getNull oa::oaModule *  module  )  [inline, static]
 

There is a no global AiModGraph null reference; one unique null reference exists for each module. This function returns the unique null reference for the given module. Some AiModGraph operations are dependent on the module context of their parameters, even if they are null.

Parameters:
module 
Returns:
a null reference inside the given module

Definition at line 64 of file oagFpgaAiModGraph.h.

void oagFpga::AiModGraph::getOutputs oa::oaModule *  module,
list< AiModRef > &  result
[static]
 

Gets all output terminals inside a module.

An output terminal is a TERMINAL node that is connected to an output oaModTerm.

If the bit net attached to the oaModTerm does not have a connection to the graph, one is created.

Parameters:
module 
result the list of all output terminals inside the module

Definition at line 823 of file oagFpgaAiModGraph.cpp.

References prepareNetToAiConnection(), and oagFpga::toBitNet().

oagAi::Node::SequentialData* oagFpga::AiModGraph::getSequentialData AiModRef  sequential  )  [inline, static]
 

Tests if a reference is to a SEQUENTIAL node.

If the reference is not to a SEQUENTIAL node, an error will be generated.

Parameters:
sequential 
Returns:
sequential description

Definition at line 218 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

AiModRef oagFpga::AiModGraph::getTerminalDriver AiModRef  terminal  )  [inline, static]
 

Returns the type of the referenced graph node.

This function only returns the graph reference that is driving this terminal. If the node is driven by a connected OpenAccess net, a null reference is returned.

If the reference is not to a TERMINAL node, an error will be generated.

Parameters:
terminal 
Returns:
the reference to the driver, or null if none exists

Definition at line 182 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

Referenced by connectEquivalentNetsInGraph(), findDriverOfEquivalentNets(), and getAllConnections().

void oagFpga::AiModGraph::getTransitiveFanin list< AiModRef x,
vector< AiModRef > &  transitiveFanin,
bool  includeRoots = true,
bool  crossSequential = false
[static]
 

Returns a vector of all nodes in the transitive fan-in of several nodes.

The nodes in the transitive fan-in are appended to the provided vector in forward topological order. The initial node is not included. All references will be non-inverted.

See oagAi::getTransitiveFanin() for more details.

Parameters:
x 
transitiveFanin the resulting vector of nodes in the transitive fan-in
includeRoots true if root nodes should be included
crossSequential true if the traversal should cross sequential nodes

Definition at line 572 of file oagFpgaAiModGraph.cpp.

References convertAiModRefListToRefList(), convertRefVectorToAiModRefVector(), and getGraph().

void oagFpga::AiModGraph::getTransitiveFanin list< AiModRef x,
list< AiModRef > &  transitiveFanin,
bool  includeRoots = true,
bool  crossSequential = false
[static]
 

Returns a list of all nodes in the transitive fan-in of several nodes.

The nodes in the transitive fan-in are appended to the provided list in forward topological order. The initial node is not included. All references will be non-inverted.

See oagAi::getTransitiveFanin() for more details.

Parameters:
x 
transitiveFanin the resulting list of nodes in the transitive fan-in
includeRoots true if root nodes should be included
crossSequential true if the traversal should cross sequential nodes

Definition at line 512 of file oagFpgaAiModGraph.cpp.

References convertAiModRefListToRefList(), convertRefListToAiModRefList(), and getGraph().

void oagFpga::AiModGraph::getTransitiveFanin AiModRef  x,
vector< AiModRef > &  transitiveFanin,
bool  includeRoots = true,
bool  crossSequential = false
[static]
 

Returns a vector of all nodes in the transitive fan-in of one node.

The nodes in the transitive fan-in are appended to the provided vector in forward topological order. The initial node is not included. All references will be non-inverted.

See oagAi::getTransitiveFanin() for more details.

Parameters:
x 
transitiveFanin the resulting vector of nodes in the transitive fan-in
includeRoots true if root nodes should be included
crossSequential true if the traversal should cross sequential nodes

Definition at line 458 of file oagFpgaAiModGraph.cpp.

References convertRefVectorToAiModRefVector(), getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::getTransitiveFanin AiModRef  x,
list< AiModRef > &  transitiveFanin,
bool  includeRoots = true,
bool  crossSequential = false
[static]
 

Returns a list of all nodes in the transitive fan-in of one node.

The nodes in the transitive fan-in are appended to the provided list in forward topological order. The initial node is not included. All references will be non-inverted.

See oagAi::getTransitiveFanin() for more details.

Parameters:
x 
transitiveFanin the resulting list of nodes in the transitive fan-in
includeRoots true if root nodes should be included
crossSequential true if the traversal should cross sequential nodes

Definition at line 404 of file oagFpgaAiModGraph.cpp.

References convertRefListToAiModRefList(), getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::getTransitiveFanout list< AiModRef x,
vector< AiModRef > &  transitiveFanout,
bool  includeRoots = true,
bool  crossSequential = false
[static]
 

Returns a vector of all nodes in the transitive fan-out of several nodes.

The nodes in the transitive fan-out are appended to the provided vector in forward topological order. The initial node is not included. All references will be non-inverted.

See oagAi::getTransitiveFanout() for more details.

Parameters:
x 
transitiveFanout the resulting vector of nodes in the transitive fan-out
includeRoots true if root nodes should be included
crossSequential true if the traversal should cross sequential nodes

Definition at line 602 of file oagFpgaAiModGraph.cpp.

References convertAiModRefListToRefList(), convertRefVectorToAiModRefVector(), and getGraph().

void oagFpga::AiModGraph::getTransitiveFanout list< AiModRef x,
list< AiModRef > &  transitiveFanout,
bool  includeRoots = true,
bool  crossSequential = false
[static]
 

Returns a list of all nodes in the transitive fan-out of several nodes.

The nodes in the transitive fan-out are appended to the provided list in forward topological order. The initial node is not included. All references will be non-inverted.

See oagAi::getTransitiveFanout() for more details.

Parameters:
x 
transitiveFanout the resulting list of nodes in the transitive fan-out
includeRoots true if root nodes should be included
crossSequential true if the traversal should cross sequential nodes

Definition at line 542 of file oagFpgaAiModGraph.cpp.

References convertAiModRefListToRefList(), convertRefListToAiModRefList(), and getGraph().

void oagFpga::AiModGraph::getTransitiveFanout AiModRef  x,
vector< AiModRef > &  transitiveFanout,
bool  includeRoots = true,
bool  crossSequential = false
[static]
 

Returns a vector of all nodes in the transitive fan-out of one node.

The nodes in the transitive fan-out are appended to the provided vector in forward topological order. The initial node is not included. All references will be non-inverted.

See oagAi::getTransitiveFanout() for more details.

Parameters:
x 
transitiveFanout the resulting vector of nodes in the transitive fan-out
includeRoots true if root nodes should be included
crossSequential true if the traversal should cross sequential nodes

Definition at line 485 of file oagFpgaAiModGraph.cpp.

References convertRefVectorToAiModRefVector(), getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::getTransitiveFanout AiModRef  x,
list< AiModRef > &  transitiveFanout,
bool  includeRoots = true,
bool  crossSequential = false
[static]
 

Returns a list of all nodes in the transitive fan-out of one node.

The nodes in the transitive fan-out are appended to the provided list in forward topological order. The initial node is not included. All references will be non-inverted.

See oagAi::getTransitiveFanout() for more details.

Parameters:
x 
transitiveFanout the resulting list of nodes in the transitive fan-out
includeRoots true if root nodes should be included
crossSequential true if the traversal should cross sequential nodes

Definition at line 431 of file oagFpgaAiModGraph.cpp.

References convertRefListToAiModRefList(), getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

unsigned int oagFpga::AiModGraph::getUserData AiModRef  x,
unsigned int  index
[inline, static]
 

Parameters:
x 
index the data word index
Returns:
the user data

Definition at line 122 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

bool oagFpga::AiModGraph::hasCombinationalCycle oa::oaModule *  module  )  [static]
 

Tests if there are any combinational cycles in a module's design.

All modules in the same design will be checked.

Parameters:
module 
Returns:
true, if one or more combinational cycles exist

Definition at line 292 of file oagFpgaAiModGraph.cpp.

References getGraph().

bool oagFpga::AiModGraph::hasFanout AiModRef  x  )  [inline, static]
 

An error is generated if fanout is not being maintained.

Parameters:
x 
Returns:
true, if the node has any fanout

Definition at line 255 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::incrementExternalReferences AiModRef  x  )  [inline, static]
 

With garbage collection, this function should be called to mark nodes that are being used by the application. A non-zero external reference count guarantees that the functionality of a node is not destroyed during the next garbage collection.

Parameters:
x 

Definition at line 375 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

bool oagFpga::AiModGraph::isAnd AiModRef  x  )  [inline, static]
 

Returns the sequential description of a SEQUENTIAL node.

Parameters:
x 
Returns:
true, if the reference is to an AND node

Definition at line 228 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

bool oagFpga::AiModGraph::isInverted AiModRef  x  )  [inline, static]
 

Returns the complement of a reference.

Parameters:
x 
Returns:
true, if the reference is inverted

Definition at line 105 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

Referenced by getAllConnections().

bool oagFpga::AiModGraph::isNull AiModRef  x  )  [inline, static]
 

Returns a null reference inside the given module.

The module that the reference is in is irrelevant.

Parameters:
x 
Returns:
true, if the reference is null

Definition at line 76 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

Referenced by connectEquivalentNetsInGraph(), findDriverOfEquivalentNets(), and getAllConnections().

bool oagFpga::AiModGraph::isSequential AiModRef  x  )  [inline, static]
 

Returns the next state input of a SEQUENTIAL node.

Parameters:
x 
Returns:
true, if the reference is to a SEQUENTIAL node

Definition at line 212 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

bool oagFpga::AiModGraph::isTerminal AiModRef  x  )  [inline, static]
 

Returns the driver of a TERMINAL node.

Parameters:
x 
Returns:
true, if the reference is to a TERMINAL node

Definition at line 196 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

Referenced by findDriverOfEquivalentNets(), and getAllConnections().

AiModRef oagFpga::AiModGraph::newAnd AiModRef  x,
AiModRef  y
[static]
 

Returns a new AND node.

A new node will be created, even if it could be structually hashed with an isomorphic equivalent.

Parameters:
x 
y 
Returns:
a reference to a new AND node

Definition at line 106 of file oagFpgaAiModGraph.cpp.

References failIfInDifferentModules(), getGraph(), oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

AiModRef oagFpga::AiModGraph::newSequential AiModRef  nextState  )  [inline, static]
 

The node will be created in the same module as the nextState parameter. Its next state input will be set to nextState.

Parameters:
nextState 
Returns:
a reference to a new sequential node

Definition at line 143 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

AiModRef oagFpga::AiModGraph::newTerminal AiModRef  terminal  )  [inline, static]
 

Creates a new SEQUENTIAL node.

Parameters:
terminal 
Returns:
a reference to a new terminal node

Definition at line 153 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

AiModRef oagFpga::AiModGraph::notOf AiModRef  x  )  [inline, static]
 

Returns a reference in the given module to the function that is always false.

The structure of the graph will not be modified and no new nodes will be created.

Parameters:
x 
Returns:
a reference to the resulting complement

Definition at line 96 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::module, and oagFpga::AiModRef::ref.

Referenced by getAllConnections().

AiModRef oagFpga::AiModGraph::prepareNetToAiConnection oa::oaModBitNet *  net  )  [static]
 

Creates an terminal node to represent the function of a net.

If an terminal node is already associated with the net, then the existing one is returned.

If a new terminal node is created, it will implement a null function.

Parameters:
net 
Returns:
the terminal node attached to this net

Definition at line 737 of file oagFpgaAiModGraph.cpp.

References oagFpga::Manager::prepareNetToAiConnection().

Referenced by getInputs(), and getOutputs().

void oagFpga::AiModGraph::print oa::oaModule *  module  )  [static]
 

Prints entire graph.

Definition at line 1219 of file oagFpgaAiModGraph.cpp.

References getAllNodes(), and oagFpga::AiModRef::print().

void oagFpga::AiModGraph::removeEquivalences AiModRef  x  )  [inline, static]
 

This function destroys equivalences in both directions. Not only will this node no longer point to any equivalents, but any of its previous equivalents will no longer point to this node.

Parameters:
x 

Definition at line 321 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::removeNetToAiConnection oa::oaModBitNet *  net  )  [static]
 

Destroys a logical connection between an OpenAccess net and a graph TERMINAL node.

Parameters:
net 

Definition at line 802 of file oagFpgaAiModGraph.cpp.

References oagFpga::Manager::removeNetToAiConnection().

void oagFpga::AiModGraph::resubstitute AiModRef  original,
AiModRef  replacement,
AiModRef  target
[static]
 

Resubstitutes one node for another.

This function takes one reference to a node and replaces it with a reference to another.

References in sequential node control signals will not be replaced.

Parameters:
target the node whose reference will be changed
original the node to which the reference will be replaced
replacement the new node to which the updated reference will refer

Definition at line 254 of file oagFpgaAiModGraph.cpp.

References failIfInDifferentModules(), getGraph(), and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::resubstitute AiModRef  original,
AiModRef  replacement
[static]
 

Resubstitutes one node for another.

This function takes all of the references to a node and replaces them with another.

References in sequential node control signals will not be replaced.

Parameters:
original the node to which the references will be replaced
replacement the new node to which the updated references will refer

Definition at line 231 of file oagFpgaAiModGraph.cpp.

References failIfInDifferentModules(), getGraph(), and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::setAndLeft AiModRef  x,
AiModRef  left
[static]
 

Sets the left operand of a given AND node.

The reference must be to an AND node. The AND reference and its operand must be in the same module.

Parameters:
x 
left 

Definition at line 169 of file oagFpgaAiModGraph.cpp.

References failIfInDifferentModules(), getGraph(), and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::setAndRight AiModRef  x,
AiModRef  right
[static]
 

Sets the right operand of a given AND node.

The reference must be to an AND node. The AND reference and its operand must be in the same module.

Parameters:
x 
right 

Definition at line 189 of file oagFpgaAiModGraph.cpp.

References failIfInDifferentModules(), getGraph(), and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::setEquivalent AiModRef  x,
AiModRef  y
[static]
 

Marks two references as being functionally equivalent.

To prevent obfuscation, TERMINAL nodes can not be marked as equivalent.

Definition at line 676 of file oagFpgaAiModGraph.cpp.

References failIfInDifferentModules(), getGraph(), and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::setNetToAiConnection oa::oaModBitNet *  net,
AiModRef  x
[static]
 

Creates a logical connection between an OpenAccess net and a graph TERMINAL node.

Parameters:
net 
x 

Definition at line 785 of file oagFpgaAiModGraph.cpp.

References failIfInDifferentModules(), oagFpga::AiModRef::module, oagFpga::AiModRef::ref, and oagFpga::Manager::setNetToAiConnection().

void oagFpga::AiModGraph::setNextState AiModRef  sequential,
AiModRef  nextState
[static]
 

Sets the next state input of a given SEQUENTIAL node.

The reference must be to a SEQUENTIAL node. The sequential reference and its new next state must be in the same module.

Parameters:
sequential 
nextState 

Definition at line 209 of file oagFpgaAiModGraph.cpp.

References failIfInDifferentModules(), getGraph(), and oagFpga::AiModRef::ref.

void oagFpga::AiModGraph::setTerminalDriver AiModRef  terminal,
AiModRef  driver
[static]
 

Sets the driver of a given terminal.

The reference must be to a TERMINAL node. The terminal and driver must be in the same module.

Parameters:
terminal 
driver 

Definition at line 149 of file oagFpgaAiModGraph.cpp.

References failIfInDifferentModules(), getGraph(), and oagFpga::AiModRef::ref.

Referenced by connectEquivalentNetsInGraph().

void oagFpga::AiModGraph::setUserData AiModRef  x,
unsigned int  index,
unsigned int  data
[inline, static]
 

Returns the user data field on a node.

Parameters:
x 
index the data word index
data 

Definition at line 130 of file oagFpgaAiModGraph.h.

References oagFpga::AiModRef::ref.

bool oagFpga::AiModGraph::testEquivalence AiModRef  x,
AiModRef  y
[static]
 

Tests if two references are explicitly marked as equivalent.

Parameters:
x 
y 

Definition at line 660 of file oagFpgaAiModGraph.cpp.

References failIfInDifferentModules(), getGraph(), and oagFpga::AiModRef::ref.


Friends And Related Function Documentation

friend class SimMod [friend]
 

Definition at line 49 of file oagFpgaAiModGraph.h.


The documentation for this class was generated from the following files:
Generated on Mon Jul 9 14:17:22 2007 for OA Gear Fpga by  doxygen 1.3.9.1