00001 // ***************************************************************************** 00002 // ***************************************************************************** 00003 // oaPcellCPPInterfaces.h 00004 // 00005 // This file contains the interface provided by the oaPcellCPP. 00006 // 00007 // IPcellCPPDefMgr 00008 // This is an interface provided by oaPcellCPP for managing PcellGen 00009 // definitions and the associated DM files in a design library. It provide 00010 // functions to set and get attributes of the IPcellGen definitions and 00011 // it creates and destroys the associated DM files for the IPcellGen 00012 // definition. A IPcellGen definition is identified by its name and the 00013 // platform name that it supports. The definition is associated with a DM 00014 // files that is linked to a shared library. 00015 // 00016 // ***************************************************************************** 00017 // Except as specified in the OpenAccess terms of use of Cadence or Silicon 00018 // Integration Initiative, this material may not be copied, modified, 00019 // re-published, uploaded, executed, or distributed in any way, in any medium, 00020 // in whole or in part, without prior written permission from Cadence. 00021 // 00022 // Copyright 2002-2005 Cadence Design Systems, Inc. 00023 // All Rights Reserved. 00024 // 00025 // $Author: icftcm $ 00026 // $Revision: #1 $ 00027 // $Date: 2010/08/09 $ 00028 // $State: Exp $ 00029 // ***************************************************************************** 00030 // ***************************************************************************** 00031 00032 00033 00034 #if !defined(oaPcellCPPInterfaces_P) 00035 #define oaIPcellCPPInterfaces_P 00036 00037 00038 00039 BEGIN_OA_NAMESPACE 00040 00041 00042 00043 // ***************************************************************************** 00044 // IPcellCPPDefMgr 00045 // ***************************************************************************** 00046 class IPcellCPPDefMgr : public IBase { 00047 public: 00048 virtual void open(oaLib *lib) = 0; 00049 virtual void close() = 0; 00050 virtual void save() = 0; 00051 virtual void destroy() = 0; 00052 00053 virtual oaBoolean findDef(const oaString &platformName, 00054 const oaString &pgName, 00055 oaString &dmFileName) = 0; 00056 virtual void createDef(const oaString &platformName, 00057 const oaString &pgName, 00058 const oaString &dmFileName, 00059 const oaString &sharedLibPath) = 0; 00060 virtual void setDef(const oaString &platformName, 00061 const oaString &pgName, 00062 const oaString &dmFileName, 00063 const oaString &sharedLibPath) = 0; 00064 virtual void destroyDef(const oaString &platformName, 00065 const oaString &pgName) = 0; 00066 00067 virtual void getPlatforms(oaArray<oaString> &platformNames) = 0; 00068 virtual void getDefs(const oaString &platformName, 00069 oaArray<oaString> &pgNames) = 0; 00070 00071 static const Guid &getId(); 00072 }; 00073 00074 00075 00076 END_OA_NAMESPACE 00077 00078 #endif
Copyright © 2002 - 2010 Cadence Design Systems, Inc.
All Rights Reserved.