OpenASIP
2.0
|
#include <ProcessorImplementationWindow.hh>
Public Member Functions | |
ProcessorImplementationWindow (wxWindow *parent, TTAMachine::Machine &machine, IDF::MachineImplementation &impl) | |
virtual | ~ProcessorImplementationWindow () |
void | setDirty (bool dirty=true) |
Private Member Functions | |
void | onAutoSelectImplementations (wxCommandEvent &event) |
void | updateImplementationLists () |
void | handleSelectRFImplementation (long item) |
void | onSelectRFImplementation (wxCommandEvent &event) |
void | onRFSelection (wxListEvent &event) |
void | onRFActivation (wxListEvent &event) |
void | updateRFList (const std::string &rfName, int index) |
void | handleSelectIUImplementation (long item) |
void | onSelectIUImplementation (wxCommandEvent &event) |
void | onIUSelection (wxListEvent &event) |
void | onIUActivation (wxListEvent &event) |
void | handleSelectFUImplementation (long item) |
void | onSelectFUImplementation (wxCommandEvent &event) |
void | onFUSelection (wxListEvent &event) |
void | onFUActivation (wxListEvent &event) |
void | updateFUList (const std::string &fuName, int index) |
void | onSetParameterValue (wxCommandEvent &event) |
void | onBrowseDecompressor (wxCommandEvent &event) |
void | onBrowseICDecPlugin (wxCommandEvent &event) |
void | onBrowseICHDB (wxCommandEvent &event) |
void | loadICDecoderPlugin (const std::string &pluginName, const std::string &pluginFile) |
void | onParameterSelection (wxListEvent &event) |
virtual bool | TransferDataToWindow () |
void | onLoadIDF (wxCommandEvent &event) |
void | onSaveIDF (wxCommandEvent &event) |
void | onClose (wxCommandEvent &event) |
void | onGenerateProcessor (wxCommandEvent &event) |
void | doSaveIDF () |
void | checkImplementationFiles () |
wxSizer * | createContents (wxWindow *parent, bool call_fit, bool set_sizer) |
wxSizer * | functionUnitPage (wxWindow *parent, bool call_fit, bool set_sizer=true) |
wxSizer * | registerFilePage (wxWindow *parent, bool call_fit, bool set_sizer=true) |
wxSizer * | immediateUnitPage (wxWindow *parent, bool call_fit, bool set_sizer=true) |
wxSizer * | decompressionPage (wxWindow *parent, bool call_fit, bool set_sizer=true) |
wxSizer * | icDecoderPluginPage (wxWindow *parent, bool call_fit, bool set_sizer=true) |
Private Attributes | |
TTAMachine::Machine & | machine_ |
Machine that is being generated. More... | |
IDF::MachineImplementation & | impl_ |
MachineImplementation object containing the implementation information. More... | |
wxListCtrl * | fuList_ |
Pointer to the FU implementation list widget. More... | |
wxListCtrl * | iuList_ |
Pointer to the IU implementation list widget. More... | |
wxListCtrl * | rfList_ |
Pointer to the RF implementation list widget. More... | |
wxListCtrl * | parameterList_ |
Pointer to the ic decoder parameter list widget. More... | |
PluginTools | pluginTool_ |
Plugintool for loading IC/Decoder plugins. More... | |
ProGe::ICDecoderGeneratorPlugin * | plugin_ |
IC/Decoder plugin of the current machine implementation. More... | |
bool | dirtyData_ |
Processor implementation window.
Definition at line 55 of file ProcessorImplementationWindow.hh.
|
private |
Definition at line 137 of file ProcessorImplementationWindow.hh.
ProcessorImplementationWindow::ProcessorImplementationWindow | ( | wxWindow * | parent, |
TTAMachine::Machine & | machine, | ||
IDF::MachineImplementation & | impl | ||
) |
Constructor.
parent | Parent window of the page. |
machine | Processor architecture. |
impl | Processor implementation definition. |
Definition at line 123 of file ProcessorImplementationWindow.cc.
References assert, Environment::defaultICDecoderPlugin(), and FileSystem::fileNameBody().
|
virtual |
|
private |
Checks if every file path defined in IDF is correct.
If one or more file paths are invalid, warning dialog is shown to user.
Definition at line 993 of file ProcessorImplementationWindow.cc.
References WxConversion::toWxString().
|
private |
Creates the dialog widgets.
Code geenrated by wxDesigner. Do not modify manually.
parent | Parent window of the created widget hierarchy. |
call_fit | Fit parent window size. |
set_sizer | Set the created top level sizer as the parent win contents. |
Definition at line 1039 of file ProcessorImplementationWindow.cc.
References decompressionPage(), FALSE, functionUnitPage(), icDecoderPluginPage(), immediateUnitPage(), and registerFilePage().
|
private |
Definition at line 1167 of file ProcessorImplementationWindow.cc.
Referenced by createContents().
|
private |
Definition at line 719 of file ProcessorImplementationWindow.cc.
References FileSystem::absolutePathOf(), FileSystem::currentWorkingDir(), FileSystem::directoryOfPath(), Exception::errorMessage(), FileSystem::fileOfPath(), Environment::hdbPaths(), XMLSerializer::setDestinationFile(), WxConversion::toString(), WxConversion::toWxString(), and IDF::IDFSerializer::writeMachineImplementation().
|
private |
Definition at line 1139 of file ProcessorImplementationWindow.cc.
Referenced by createContents().
|
private |
Handle calling of the implementation selection dialog and it's return value
Definition at line 508 of file ProcessorImplementationWindow.cc.
References TTAMachine::Component::name().
|
private |
Definition at line 434 of file ProcessorImplementationWindow.cc.
References TTAMachine::Component::name().
|
private |
Call the dialog to select RF implementation and handle the return values of the dialog.
Definition at line 381 of file ProcessorImplementationWindow.cc.
References TTAMachine::Component::name().
|
private |
Definition at line 1206 of file ProcessorImplementationWindow.cc.
Referenced by createContents().
|
private |
Definition at line 1289 of file ProcessorImplementationWindow.cc.
Referenced by createContents().
|
private |
Loads an IC/Decoder plugin.
pluginName | Name of the plugin. |
pluginFile | Full path to the plugin file. |
Definition at line 893 of file ProcessorImplementationWindow.cc.
References assert, Exception::errorMessage(), BEMGenerator::generate(), Environment::icDecoderPluginPaths(), and WxConversion::toWxString().
|
private |
Event handler for the automatic implementation selection button.
Definition at line 288 of file ProcessorImplementationWindow.cc.
|
private |
Event handler for the decompressor block Browse... button.
Definition at line 785 of file ProcessorImplementationWindow.cc.
References WxConversion::toString().
|
private |
Event handler for the ic/decoder plugin Browse... button.
Definition at line 808 of file ProcessorImplementationWindow.cc.
References FileSystem::fileNameBody(), FileSystem::fileOfPath(), and WxConversion::toString().
|
private |
Event handler for the ic/ hdb Browse... button.
Definition at line 847 of file ProcessorImplementationWindow.cc.
References WxConversion::toString().
|
private |
Event handler for the Close button.
Definition at line 697 of file ProcessorImplementationWindow.cc.
|
private |
Event handler for the FU Select implementation doubleclick.
Definition at line 557 of file ProcessorImplementationWindow.cc.
|
private |
Event handler for the FU list selection changes.
Enables and disables the select FU implementation button.
Definition at line 595 of file ProcessorImplementationWindow.cc.
|
private |
Event handler for the Generate Processor... button.
Definition at line 967 of file ProcessorImplementationWindow.cc.
References IDFValidator::errorCount(), IDFValidator::errorMessage(), WxConversion::toWxString(), and IDFValidator::validate().
|
private |
Event handler for the IU Select implementation doubleclick.
Definition at line 481 of file ProcessorImplementationWindow.cc.
|
private |
Event handler for the IU list selection changes.
Enables and disables the select IU implementation button.
Definition at line 581 of file ProcessorImplementationWindow.cc.
|
private |
Event handler for the Load IDF... button.
Definition at line 621 of file ProcessorImplementationWindow.cc.
References IDFValidator::errorCount(), IDFValidator::errorMessage(), Exception::errorMessage(), IDF::IDFSerializer::readState(), IDFValidator::removeUnknownImplementations(), XMLSerializer::setSourceFile(), WxConversion::toString(), WxConversion::toWxString(), and IDFValidator::validate().
|
private |
Event handler for the ic/decoder parameter list selection changes.
Enables and disables the set parameter value button.
Definition at line 609 of file ProcessorImplementationWindow.cc.
|
private |
Event handler for the RF Select implementation button.
Definition at line 429 of file ProcessorImplementationWindow.cc.
|
private |
Event handler for the RF list selection changes.
Enables and disables the select RF implementation button.
Definition at line 567 of file ProcessorImplementationWindow.cc.
|
private |
Event handler for the Save IDF button.
Definition at line 777 of file ProcessorImplementationWindow.cc.
|
private |
Event handler for the FU Select implementation button.
Definition at line 540 of file ProcessorImplementationWindow.cc.
|
private |
Event handler for the IU Select implementation button.
Definition at line 464 of file ProcessorImplementationWindow.cc.
|
private |
Event handler for the RF Select implementation button.
Definition at line 412 of file ProcessorImplementationWindow.cc.
|
private |
Event handler for the ic/decoder parameter value setting button.
Definition at line 868 of file ProcessorImplementationWindow.cc.
References WxConversion::toString().
|
private |
Definition at line 1111 of file ProcessorImplementationWindow.cc.
Referenced by createContents().
|
inline |
|
privatevirtual |
Transfers data from the current MachineImplementation object to the dialog widgets.
Definition at line 189 of file ProcessorImplementationWindow.cc.
References WxConversion::toWxString().
|
private |
Update the list of FU implementations for single FU
Definition at line 488 of file ProcessorImplementationWindow.cc.
References Exception::errorMessage(), IDF::UnitImplementationLocation::hdbFile(), IDF::UnitImplementationLocation::id(), Environment::shortHDBPath(), and WxConversion::toWxString().
|
private |
Updates the list views on RF, IU and FU pages.
Definition at line 298 of file ProcessorImplementationWindow.cc.
References TTAMachine::Machine::Navigator< ComponentType >::count(), Exception::errorMessage(), IDF::UnitImplementationLocation::hdbFile(), IDF::UnitImplementationLocation::id(), TTAMachine::Machine::Navigator< ComponentType >::item(), Environment::shortHDBPath(), and WxConversion::toWxString().
|
private |
Update the list of FU implementations for single RF
Definition at line 266 of file ProcessorImplementationWindow.cc.
References Exception::errorMessage(), IDF::UnitImplementationLocation::hdbFile(), IDF::UnitImplementationLocation::id(), Environment::shortHDBPath(), and WxConversion::toWxString().
|
private |
Definition at line 166 of file ProcessorImplementationWindow.hh.
Referenced by setDirty().
|
private |
Pointer to the FU implementation list widget.
Definition at line 123 of file ProcessorImplementationWindow.hh.
|
private |
MachineImplementation object containing the implementation information.
Definition at line 120 of file ProcessorImplementationWindow.hh.
|
private |
Pointer to the IU implementation list widget.
Definition at line 125 of file ProcessorImplementationWindow.hh.
|
private |
Machine that is being generated.
Definition at line 118 of file ProcessorImplementationWindow.hh.
|
private |
Pointer to the ic decoder parameter list widget.
Definition at line 129 of file ProcessorImplementationWindow.hh.
|
private |
IC/Decoder plugin of the current machine implementation.
Definition at line 134 of file ProcessorImplementationWindow.hh.
|
private |
Plugintool for loading IC/Decoder plugins.
Definition at line 132 of file ProcessorImplementationWindow.hh.
|
private |
Pointer to the RF implementation list widget.
Definition at line 127 of file ProcessorImplementationWindow.hh.