00001 // ***************************************************************************** 00002 // ***************************************************************************** 00003 // oaOccModuleInstHeader.h 00004 // 00005 // This file contains the definition for the oaOccModuleInstHeader class. The 00006 // oaOccModuleInstHeader class implements an object that contains the occurrence 00007 // domain view of a particular module master and all of the logical instances 00008 // that use it. 00009 // 00010 // ***************************************************************************** 00011 // Except as specified in the OpenAccess terms of use of Cadence or Silicon 00012 // Integration Initiative, this material may not be copied, modified, 00013 // re-published, uploaded, executed, or distributed in any way, in any medium, 00014 // in whole or in part, without prior written permission from Cadence. 00015 // 00016 // Copyright 2003-2005 Cadence Design Systems, Inc. 00017 // All Rights Reserved. 00018 // 00019 // $Author: icftcm $ 00020 // $Revision: #1 $ 00021 // $Date: 2010/08/09 $ 00022 // $State: Exp $ 00023 // ***************************************************************************** 00024 // ***************************************************************************** 00025 00026 00027 00028 #if !defined(oaOccModuleInstHeader_P) 00029 #define oaOccModuleInstHeader_P 00030 00031 00032 00033 // ***************************************************************************** 00034 // Nested includes 00035 // ***************************************************************************** 00036 #include "oaModModuleInstHeader.h" 00037 #include "oaOccurrence.h" 00038 00039 00040 00041 // ***************************************************************************** 00042 // Declare and define types in the OpenAccess namespace. 00043 // ***************************************************************************** 00044 BEGIN_OA_NAMESPACE 00045 00046 00047 00048 // ***************************************************************************** 00049 // oaOccModuleInstHeader 00050 // ***************************************************************************** 00051 class OA_DESIGN_DLL_API oaOccModuleInstHeader : public oaOccObject { 00052 public: 00053 oaModule *getMaster() const; 00054 oaOccurrence *getMasterOccurrence(oaBoolean expand = true) const; 00055 00056 void getName(oaScalarName &name) const; 00057 void getName(const oaNameSpace &ns, 00058 oaString &name) const; 00059 00060 oaBoolean isBound() const; 00061 00062 oaModModuleInstHeader *getModModuleInstHeader() const; 00063 00064 oaCollection<oaOccModuleInst, oaOccModuleInstHeader> getInsts(oaUInt4 filterFlags = oacInstIterNotImplicit) const; 00065 00066 enum {dtIndex = oacModuleInstHeaderDataType}; 00067 }; 00068 00069 00070 00071 // ***************************************************************************** 00072 // Design Traits. 00073 // ***************************************************************************** 00074 template<> 00075 class oaTraits<oaOccModuleInstHeader> { 00076 public: 00077 typedef oaOccObject parentType; 00078 typedef oaModuleInstHeaderModTypeEnum modTypeType; 00079 enum {domain = oacOccDomain}; 00080 enum {isMultiDomain = true}; 00081 enum {dbType = oacDesignDBType}; 00082 enum {dtIndex = oacModuleInstHeaderDataType}; 00083 enum {isConcrete = true}; 00084 enum {objectTypeEnumVal = oacOccModuleInstHeaderType}; 00085 enum {dataTypeEnumVal = oacModuleInstHeaderDataType}; 00086 }; 00087 00088 00089 00090 END_OA_NAMESPACE 00091 00092 #endif
Copyright © 2002 - 2010 Cadence Design Systems, Inc.
All Rights Reserved.