diff --git a/src/snl/snl/kernel/SNLDesign.h b/src/snl/snl/kernel/SNLDesign.h index 3bd524da..d74333bb 100644 --- a/src/snl/snl/kernel/SNLDesign.h +++ b/src/snl/snl/kernel/SNLDesign.h @@ -239,9 +239,31 @@ class SNLDesign final: public SNLObject { ///\return true if this SNLDesign is a top design. bool isTopDesign() const; + /** + * \brief Cloning interface for SNLDesign. + * \param name SNLName of the the clone. + * \return a new SNLDesign with the same interface as this SNLDesign. + */ SNLDesign* cloneInterface(const SNLName& name=SNLName()) const; + /** + * \brief Cloning interface for SNLDesign to a specific SNLLibrary. + * \param library SNLLibrary where the clone will be created. + * \param name SNLName of the the clone. + * \return a new SNLDesign with the same interface as this SNLDesign. + */ SNLDesign* cloneInterfaceToLibrary(SNLLibrary* library, const SNLName& name=SNLName()) const; + /** + * \brief Cloning for SNLDesign. + * \param name SNLName of the the clone. + * \return a new SNLDesign with the same interface and content as this SNLDesign. + */ SNLDesign* clone(const SNLName& name=SNLName()) const; + /** + * \brief Cloning for SNLDesign to a specific SNLLibrary. + * \param library SNLLibrary where the clone will be created. + * \param name SNLName of the the clone. + * \return a new SNLDesign with the same interface and content as this SNLDesign. + */ SNLDesign* cloneToLibrary(SNLLibrary* library, const SNLName& name=SNLName()) const; class CompareType { diff --git a/src/snl/snl/kernel/SNLInstance.h b/src/snl/snl/kernel/SNLInstance.h index 09f627c7..d77bee36 100644 --- a/src/snl/snl/kernel/SNLInstance.h +++ b/src/snl/snl/kernel/SNLInstance.h @@ -138,6 +138,10 @@ class SNLInstance final: public SNLDesignObject { SNLNet* net, SNLID::Bit netMSB, SNLID::Bit netLSB); + /** + * \brief Seting new model for this instance. + * \param newModel new model for this instance. + */ void setModel(SNLDesign* newModel); SNLID::DesignObjectID getOrderID() const { return orederID_; }