sdf/tools/sdf3analysis/sdf3analysis.cc File Reference

#include "sdf3analysis.h"
#include "../../sdf.h"
Include dependency graph for sdf/tools/sdf3analysis/sdf3analysis.cc:

Classes

struct  _CPair
struct  _Settings

Typedefs

typedef struct _CPair CPair
typedef list< CPairCPairs
typedef CPairs::iterator CPairsIter
typedef struct _Settings Settings

Functions

void helpMessage (ostream &out)
CPairs parseSwitchArgument (CString arguments)
void parseCommandLine (int argc, char **argv)
CNodeloadApplicationGraphFromFile (CString &file, CString module)
CNodeloadArchitectureGraphFromFile (CString &file, CString module)
CNodeloadMappingFromFile (CString &file, CString module)
void initSettings (int argc, char **argv)
void analyzeSDFG (TimedSDFgraph *g, CPairs &analyze, ostream &out)
void analyzeSDFG (ostream &out)
int main (int argc, char **argv)

Variables

Settings settings

Typedef Documentation

typedef struct _CPair CPair
typedef list<CPair> CPairs
typedef CPairs::iterator CPairsIter
typedef struct _Settings Settings

Settings Struct to store program settings.


Function Documentation

void analyzeSDFG ( TimedSDFgraph g,
CPairs analyze,
ostream &  out 
)

analyzeSDFG () The function analyzes the SDF graph.

References a, SDFgraph::actorsBegin(), SDFgraph::actorsEnd(), SDFstateSpaceBindingAwareThroughputAnalysis::analyze(), SDFstateSpaceSelfTimedMinimalLatencyAnalysis::analyze(), SDFstateSpaceMinimalLatencyAnalysis::analyze(), SDFstateSpaceSelfTimedLatencyAnalysis::analyze(), SDFstateSpaceThroughputAnalysisNingGao::analyze(), SDFstateSpaceBufferAnalysisNingGao::analyze(), SDFstateSpaceBufferAnalysis::analyze(), SDFstateSpaceThroughputAnalysis::analyze(), SDFstateSpaceMinimalLatencyAnalysis::analyzeSingleProc(), c, CGetChildNode(), CGetNodeContent(), SDFgraph::channelsBegin(), SDFgraph::channelsEnd(), CNextNode(), FSMSADF::computeRepetitionVector(), constructPlatformGraph(), MaxPlusAnalysis::Exploration::convertToHSDFByMP(), createCapacityConstrainedModel(), CFraction::denominator(), MaxPlusAnalysis::Exploration::explore(), MaxPlusAnalysis::Exploration::exploreDelayForSchedule(), MaxPlusAnalysis::Exploration::exploreEigen(), findSimpleCycles(), MaxPlusAnalysis::Exploration::g, MaxPlusAnalysis::Exploration::G, MaxPlus::Vector::get(), SDFgraph::getActor(), SDFgraph::getChannel(), SDFchannel::getDstActor(), TimedSDFactor::getExecutionTime(), SDFcomponent::getId(), SDFchannel::getInitialTokens(), SDFcomponent::getName(), SDFport::getRate(), MaxPlus::Vector::getSize(), SDFchannel::getSrcActor(), TimedSDFchannel::getStorageSpaceChannel(), SDFport::getType(), isAcyclic(), isConnected(), SDFstateSpaceDeadlockAnalysis::isDeadlockFree(), isHSDFgraph(), isSDFgraphConsistent(), latencyAnalysisForRandomStaticOrderSingleProc(), CFraction::lowestTerm(), maximumCycleMeanCycles(), maximumCycleMeanDasdanGupta(), maximumCycleMeanHoward(), maximumCycleMeanKarp(), maximumCycleYoungTarjanOrlin(), minStorageDistributions, modelAutoConcurrencyInSDFgraph(), modelCapacityConstrainedBuffer(), _StorageDistributionSet::next, SDFgraph::nrActors(), SDFgraph::nrChannels(), CFraction::numerator(), outputSDFasXML(), SDFactor::portsBegin(), SDFactor::portsEnd(), printTimer(), SDFstateSpaceStaticPeriodicSchedulerChao::schedule(), SDFstateSpaceStaticPeriodicScheduler::schedule(), setMappingPlatformGraph(), settings, _StorageDistribution::sp, startTimer(), stateSpaceBufferAnalysisCapacityConstrainedModel(), stopTimer(), stringtok(), stronglyConnectedComponents(), _StorageDistribution::thr, _StorageDistributionSet::thr, transformSDFtoHSDF(), v, CFraction::value(), and Settings::xmlArchGraph.

Referenced by analyzeSDFG(), and main().

void analyzeSDFG ( ostream &  out  ) 

analyzeSDFG () The function analyzes the SDF graph.

References analyzeSDFG(), CGetChildNode(), TimedSDFgraph::construct(), and settings.

Here is the call graph for this function:

void helpMessage ( ostream &  out  ) 

helpMessage () Function prints help message for the tool.

References DOTTED_VERSION, and TOOL.

void initSettings ( int  argc,
char **  argv 
)

initSettings () The function initializes the program settings.

References helpMessage(), loadApplicationGraphFromFile(), loadArchitectureGraphFromFile(), loadMappingFromFile(), MODULE, parseCommandLine(), settings, and Settings::xmlArchGraph.

Here is the call graph for this function:

CNode* loadApplicationGraphFromFile ( CString file,
CString  module 
)

loadApplicationGraphFromFile () The function returns a pointer to an XML data structures contained in the supplied file that describes the SDFG.

References CGetAttribute(), CGetChildNode(), CGetRootNode(), and CParseFile().

Here is the call graph for this function:

CNode* loadArchitectureGraphFromFile ( CString file,
CString  module 
)

loadArchitectureGraphFromFile () The function returns a pointer to an XML data structures contained in the supplied file that describes the architecture.

References CGetAttribute(), CGetChildNode(), CGetRootNode(), and CParseFile().

Referenced by initSettings(), and parseSettingsFile().

Here is the call graph for this function:

CNode* loadMappingFromFile ( CString file,
CString  module 
)

loadMappingFromFile () The function returns a pointer to an XML data structures contained in the supplied file that describes the mapping.

References CGetAttribute(), CGetChildNode(), CGetRootNode(), and CParseFile().

Referenced by initSettings().

Here is the call graph for this function:

int main ( int  argc,
char **  argv 
)

main () It does none of the hard work, but it is very needed...

References analyzeSDFG(), initSettings(), MaxPlusAnalysis::out, Settings::outputFile, and settings.

Here is the call graph for this function:

void parseCommandLine ( int  argc,
char **  argv 
)

parseCommandLine () The function parses the command line arguments and add info to the supplied settings structure.

References helpMessage(), Settings::outputFile, parseSwitchArgument(), and settings.

Here is the call graph for this function:

CPairs parseSwitchArgument ( CString  arguments  ) 

parseSwitchArgument () The function parses the string 'arguments' into a sequence of (arg, value) pairs. The syntax as as follows:

pair := key(value) arg := pair,pair,...

Note: value may be a pair itself, but this is not expanded into a set of pairs (i.e. nested pairs are not supported).

References c, _CPair::key, and _CPair::value.


Variable Documentation

settings Program settings.