C# 클래스 CyPhyMasterInterpreter.AnalysisModelProcessor

Provides the following functionalities: expand a context [design space -> configurations], run interpreters, post jobs to job manager.
파일 보기 프로젝트 열기: metamorph-inc/meta-core 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
OriginalCurrentFCOName string

공개 메소드들

메소드 설명
DeleteTemporaryObjects ( ) : void

Deletes all temporary objects in the right order.

Expand ( ISIS.GME.Dsml.CyPhyML.Interfaces configuration ) : void

Expands the current context and sets the expanded object.

GetAnalysisModelProcessor ( IMgaModel context ) : AnalysisModelProcessor

Factory method to get a new analysis model processor instance based on a given context.

GetExpandedObject ( ) : MgaModel

Gets the expanded version of the invoked object.

GetInvokedObject ( ) : MgaModel

Gets the object from which the analysis model processor was instantiated.

GetResultsDirectory ( ) : string

Gets the results directory. Project directory/results/ All interpreters will get a subdirectory inside this one.

GetWorkflow ( ) : Queue

Gets the set of Interpreters form the workflow.

PostToJobManager ( JobManagerDispatch manager ) : bool

Posts the generated analysis packages to the JobManager for execution.

RunCAExporter ( IEnumerable cwcs ) : IEnumerable

Runs the Component Assembly exporter. Exports CWC configurations into Component Assemblies.

RunInterpreters ( bool passTraceability, bool verboseConsole ) : void

Runs all interpreters on the expanded context.

SaveDesign ( AVM projectManifest ) : bool

Exports the design into design interchange format AVM Design Model and indexes the file in the project manifest.

SaveDesignSpace ( AVM projectManifest ) : bool

Exports the design space into design interchange format AVM Design Model and indexes the file in the project manifest.

SaveTestBench ( AVM projectManifest ) : bool

Saves the test bench descriptor file to the test bench directory and indexes the newly generated file in the project manifest.

SaveTestBenchManifest ( AVM projectManifest, string configurationName, DateTime analysisStartTime ) : bool

Saves the test bench manifest file to interpreter's output directory and indexes the newly generated file in the project manifest.

ShowInterpreterConfigs ( CyPhyGUIs.IInterpreterConfiguration>.Dictionary interpreterConfigurations, bool firstTimeOnly = true, bool interactive = true ) : void

Shows all configuration dialog boxes for all interpreters that have to be configured. InterpretersToConfiguration

UpdateTestBenchManifestExecutionSteps ( AVM manifest ) : bool

Updates the execution steps in the test bench manifest file based on the Tasks and Execution tasks in the workflow.

보호된 메소드들

메소드 설명
AddToTraceabilityAndTemporary ( IMgaObject copied, IMgaObject original, bool recursive = true ) : void

Adds an object ID pair to the traceability map and adds the copied object to the temporary object list keeping track of the object to be deleted.

EnsureOutputDirectory ( ) : void

Ensures that output directory is not null and creates it if it does not exist already.

ExecuteInTransaction ( Action doWork, bool flushUndoQueue = true, bool abort = false ) : void

Helper function to execute an action within a transaction.

GetTemporaryFolderName ( IMgaObject originalObject ) : string

Gets the temporary folder name for a given object in GME.

GetTemporaryObjectName ( IMgaObject originalObject, IMgaObject configuration ) : string

Gets the temporary object name for a given object (context and configuration pair) in GME.

OnInterpreterProgress ( InterpreterProgressEventArgs eventArgs ) : void

Called when run interpreters make progress, like get configuration, initialize, etc.

ThrowIfNotExpanded ( ) : void

Checks if the original model is expanded or not.

비공개 메소드들

메소드 설명
AddToTraceability ( IMgaObject copied, IMgaObject original, bool recursive = true ) : void

Adds an object ID pair to the traceability map.

CreateOutputDirectory ( ) : string

Create the output directory if it does not exist yet.

GetRandomSubDirectory ( string outputDir ) : string

Gets a randomly named subdirectory inside a given output directory.

The new directory will not start with a number.

메소드 상세

AddToTraceabilityAndTemporary() 보호된 메소드

Adds an object ID pair to the traceability map and adds the copied object to the temporary object list keeping track of the object to be deleted.
protected AddToTraceabilityAndTemporary ( IMgaObject copied, IMgaObject original, bool recursive = true ) : void
copied IMgaObject Copy of the original object
original IMgaObject Original object
recursive bool Adds traceability recursively, but it does not add to the temporary objects recursively.
리턴 void

DeleteTemporaryObjects() 공개 메소드

Deletes all temporary objects in the right order.
public DeleteTemporaryObjects ( ) : void
리턴 void

EnsureOutputDirectory() 보호된 메소드

Ensures that output directory is not null and creates it if it does not exist already.
protected EnsureOutputDirectory ( ) : void
리턴 void

ExecuteInTransaction() 보호된 메소드

Helper function to execute an action within a transaction.
protected ExecuteInTransaction ( Action doWork, bool flushUndoQueue = true, bool abort = false ) : void
doWork Action Work that has to be done within a transaction.
flushUndoQueue bool Flushes undo queue to keep the memory usage down.
abort bool Aborts the transaction.
리턴 void

Expand() 공개 추상적인 메소드

Expands the current context and sets the expanded object.
public abstract Expand ( ISIS.GME.Dsml.CyPhyML.Interfaces configuration ) : void
configuration ISIS.GME.Dsml.CyPhyML.Interfaces Top level system under test will be redirected to this object.
리턴 void

GetAnalysisModelProcessor() 공개 정적인 메소드

Factory method to get a new analysis model processor instance based on a given context.
If context is null. If context is not supported.
public static GetAnalysisModelProcessor ( IMgaModel context ) : AnalysisModelProcessor
context IMgaModel Model context
리턴 AnalysisModelProcessor

GetExpandedObject() 공개 추상적인 메소드

Gets the expanded version of the invoked object.
public abstract GetExpandedObject ( ) : MgaModel
리턴 MgaModel

GetInvokedObject() 공개 추상적인 메소드

Gets the object from which the analysis model processor was instantiated.
public abstract GetInvokedObject ( ) : MgaModel
리턴 MgaModel

GetResultsDirectory() 공개 메소드

Gets the results directory. Project directory/results/ All interpreters will get a subdirectory inside this one.
public GetResultsDirectory ( ) : string
리턴 string

GetTemporaryFolderName() 보호된 정적인 메소드

Gets the temporary folder name for a given object in GME.
protected static GetTemporaryFolderName ( IMgaObject originalObject ) : string
originalObject IMgaObject Object to get the temporary folder name.
리턴 string

GetTemporaryObjectName() 보호된 정적인 메소드

Gets the temporary object name for a given object (context and configuration pair) in GME.
protected static GetTemporaryObjectName ( IMgaObject originalObject, IMgaObject configuration ) : string
originalObject IMgaObject Object to get the temporary object name.
configuration IMgaObject Configuration generated from design space.
리턴 string

GetWorkflow() 공개 추상적인 메소드

Gets the set of Interpreters form the workflow.
public abstract GetWorkflow ( ) : Queue
리턴 Queue

OnInterpreterProgress() 보호된 메소드

Called when run interpreters make progress, like get configuration, initialize, etc.
protected OnInterpreterProgress ( InterpreterProgressEventArgs eventArgs ) : void
eventArgs InterpreterProgressEventArgs Interpreter event arguments.
리턴 void

PostToJobManager() 공개 추상적인 메소드

Posts the generated analysis packages to the JobManager for execution.
public abstract PostToJobManager ( JobManagerDispatch manager ) : bool
manager JobManagerDispatch JobManager instance to post the job to.
리턴 bool

RunCAExporter() 공개 메소드

Runs the Component Assembly exporter. Exports CWC configurations into Component Assemblies.
public RunCAExporter ( IEnumerable cwcs ) : IEnumerable
cwcs IEnumerable Set of CWCs to export.
리턴 IEnumerable

RunInterpreters() 공개 메소드

Runs all interpreters on the expanded context.
public RunInterpreters ( bool passTraceability, bool verboseConsole ) : void
passTraceability bool If true passes traceability information for the interpreters.
verboseConsole bool Passes value to the interpreter if they can write verbose (debug) messages to the console or not.
리턴 void

SaveDesign() 공개 메소드

Exports the design into design interchange format AVM Design Model and indexes the file in the project manifest.
public SaveDesign ( AVM projectManifest ) : bool
projectManifest AVM Given project manifest object.
리턴 bool

SaveDesignSpace() 공개 메소드

Exports the design space into design interchange format AVM Design Model and indexes the file in the project manifest.
public SaveDesignSpace ( AVM projectManifest ) : bool
projectManifest AVM Given project manifest object.
리턴 bool

SaveTestBench() 공개 추상적인 메소드

Saves the test bench descriptor file to the test bench directory and indexes the newly generated file in the project manifest.
public abstract SaveTestBench ( AVM projectManifest ) : bool
projectManifest AVM Manifest object of the project.
리턴 bool

SaveTestBenchManifest() 공개 추상적인 메소드

Saves the test bench manifest file to interpreter's output directory and indexes the newly generated file in the project manifest.
public abstract SaveTestBenchManifest ( AVM projectManifest, string configurationName, DateTime analysisStartTime ) : bool
projectManifest AVM Manifest object of the project.
configurationName string
analysisStartTime DateTime
리턴 bool

ShowInterpreterConfigs() 공개 메소드

Shows all configuration dialog boxes for all interpreters that have to be configured. InterpretersToConfiguration
public ShowInterpreterConfigs ( CyPhyGUIs.IInterpreterConfiguration>.Dictionary interpreterConfigurations, bool firstTimeOnly = true, bool interactive = true ) : void
interpreterConfigurations CyPhyGUIs.IInterpreterConfiguration>.Dictionary Map that stores the configurations.
firstTimeOnly bool If true shows the configurations at the first time only, otherwise it shows always.
interactive bool
리턴 void

ThrowIfNotExpanded() 보호된 메소드

Checks if the original model is expanded or not.
If Expand was not called before.
protected ThrowIfNotExpanded ( ) : void
리턴 void

UpdateTestBenchManifestExecutionSteps() 공개 추상적인 메소드

Updates the execution steps in the test bench manifest file based on the Tasks and Execution tasks in the workflow.
public abstract UpdateTestBenchManifestExecutionSteps ( AVM manifest ) : bool
manifest AVM
리턴 bool

프로퍼티 상세

OriginalCurrentFCOName 보호되어 있는 프로퍼티

protected string OriginalCurrentFCOName
리턴 string