123 void addLibraryPath(std::string
const& path,
bool isActive =
true);
172 void setupLibrary(std::string
const& settingsFileString);
204 int importFile(std::string
const& path, std::string
const& vlnv,
bool overwrite =
false)
const;
214 void generate(std::string
const& format, std::string
const& vlnv, std::string
const& viewName,
215 std::string
const& outputDirectory)
const;
232 std::vector<std::string>
listVLNVs(std::string
const& vendor = std::string())
const;
251 bool vlnvExistsInLibrary(std::string
const& vendor, std::string
const& library, std::string
const& name,
252 std::string
const& version)
const;
265 bool createComponent(std::string
const& vendor, std::string
const& library, std::string
const& name,
278 std::string
getVLNVDirectory(std::string
const& vendor, std::string
const& library, std::string
const& name,
279 std::string
const& version)
const;
348 std::string
const& registerName);
359 std::string
const& registerName, std::string
const& fieldName);
386 bool createDesign(std::string
const& vendor, std::string
const& library, std::string
const& name,
401 bool openDesign(std::string
const& vlnvString);
458 bool renameInstance(std::string
const& currentName, std::string
const& newName);
470 bool createConnection(std::string
const& startInstanceName, std::string
const& startBus,
471 std::string
const& endInstanceName, std::string
const& endBus);
483 std::string
const& topBus);
496 std::string
const& endInstanceName, std::string
const& endBus);
508 std::string
const& topBus);
518 bool renameConnection(std::string
const& currentName, std::string
const& newName);
531 std::string
const& endInstanceName, std::string
const& endPort);
543 std::string
const& topPort);
556 std::string
const& endInstanceName, std::string
const& endPort);
568 std::string
const& topPort);
593 bool connectionEndsCheck(QString
const& startInstanceName, QString
const& startBus,
594 QString
const& endInstanceName, QString
const& endBus,
bool isAdHocConnection);
603 bool instanceExists(QString
const& instanceName)
const;
617 bool endsCheckForAdHoc(QSharedPointer<const Component> startComponent, QString
const& startBus,
618 QString
const& startInstanceName, QSharedPointer<const Component> endComponent, QString
const& endBus,
619 QString
const& endInstanceName);
633 bool endsCheckForInterconnection(QSharedPointer<const Component> startComponent, QString
const& startBus,
634 QString
const& startInstanceName, QSharedPointer<const Component> endComponent, QString
const& endBus,
635 QString
const& endInstanceName);
644 bool removeConnection(std::string
const& connectionName);
653 bool removeAdHocConnection(std::string
const& connectionName);
662 QSharedPointer<Document> getDocument(QString
const& vlnvString)
const;
667 void constructMemoryValidators();
672 void constructMemoryInterface();
677 void constructFileSetInterface();
686 QSharedPointer<MemoryMap> getMemoryMap(QString
const& mapName)
const;
696 QSharedPointer<AddressBlock> getAddressBock(QSharedPointer<MemoryMap> containingMap, QString
const& blockName)
707 QSharedPointer<Register> getRegister(QSharedPointer<AddressBlock> containingBlock, QString
const& registerName)
718 QSharedPointer<Field> getField(QSharedPointer<Register> containingRegister, QString
const& fieldName)
const;
727 QSharedPointer<FileSet> getFileSet(QString
const& setName)
const;
734 void sendMemoryMapNotFoundError(QString
const& mapName)
const;
742 void sendAddressBlockNotFoundError(QString
const& mapName, QString
const& blockName)
const;
751 void sendRegisterNotFoundError(QString
const& mapName, QString
const& blockName, QString
const& registerName)
762 void sendFieldNotFoundError(QString
const& mapName, QString
const& blockName, QString
const& registerName,
763 QString
const& fieldName)
const;
770 void sendFileSetNotFoundError(QString
const& setName)
const;
783 QSharedPointer<ComponentParameterFinder> parameterFinder_{
new ComponentAndInstantiationsParameterFinder(
nullptr) };
786 QSharedPointer<ExpressionParser> expressionParser_{
new IPXactSystemVerilogParser(parameterFinder_) };
789 QSharedPointer<ExpressionFormatter>expressionFormatter_{
new ExpressionFormatter(parameterFinder_) };
792 QSharedPointer<Component> activeComponent_{
nullptr };
795 QSharedPointer<Design> activeDesign_{
nullptr };
798 QSharedPointer<PortValidator> portValidator_{
new PortValidator(expressionParser_,
799 QSharedPointer<QList<QSharedPointer<View> > >()) };
802 QSharedPointer<ParameterValidator> parameterValidator_{
new ParameterValidator(expressionParser_,
803 QSharedPointer<QList<QSharedPointer<Choice> > >(), Document::Revision::Std22) };
806 QSharedPointer<MemoryMapValidator> mapValidator_{
nullptr };
809 PortsInterface* portsInterface_{
new PortsInterface(portValidator_, expressionParser_, expressionFormatter_) };
813 expressionFormatter_, expressionParser_,
814 QSharedPointer<Component>(
new Component(VLNV(), Document::Revision::Unknown)), library_) };
817 ParametersInterface* componentParameterInterface_{
new ParametersInterface(parameterValidator_,
818 expressionParser_, expressionFormatter_) };
821 MemoryMapInterface* mapInterface_{
nullptr };
824 FileSetInterface* fileSetInterface_{
nullptr };
827 InterconnectionInterface* connectionInterface_{
new InterconnectionInterface() };
830 AdHocConnectionInterface* adhocConnectionInterface_{
new AdHocConnectionInterface() };
833 ComponentInstanceInterface* instanceInterface_{
new ComponentInstanceInterface(connectionInterface_,
834 adhocConnectionInterface_) };