00001 // ***************************************************************************** 00002 // ***************************************************************************** 00003 // oaGCellPattern.h 00004 // 00005 // This file contains the definition for oaGCellPattern class. 00006 // 00007 // oaGCellPattern 00008 // This class is for GCellPattern. It defines the pattern of GCell. 00009 // The patterns are stored in oaGCellPattern records, in the form of 00010 // "X(Y) start for nX(nY) times spaced dX(dY) apart" 00011 // 00012 // ***************************************************************************** 00013 // Except as specified in the OpenAccess terms of use of Cadence or Silicon 00014 // Integration Initiative, this material may not be copied, modified, 00015 // re-published, uploaded, executed, or distributed in any way, in any medium, 00016 // in whole or in part, without prior written permission from Cadence. 00017 // 00018 // Copyright 2002-2005 Cadence Design Systems, Inc. 00019 // All Rights Reserved. 00020 // 00021 // $Author: icftcm $ 00022 // $Revision: #1 $ 00023 // $Date: 2010/08/09 $ 00024 // $State: Exp $ 00025 // ***************************************************************************** 00026 // ***************************************************************************** 00027 00028 00029 00030 #if !defined(oaGCellPattern_P) 00031 #define oaGCellPattern_P 00032 00033 00034 00035 // ***************************************************************************** 00036 // Nested includes 00037 // ***************************************************************************** 00038 #include "oaBlock.h" 00039 00040 00041 00042 // ***************************************************************************** 00043 // Declare and define types in the OpenAccess namespace. 00044 // ***************************************************************************** 00045 BEGIN_OA_NAMESPACE 00046 00047 00048 00049 // ***************************************************************************** 00050 // oaGCellPattern 00051 // ***************************************************************************** 00052 class OA_DESIGN_DLL_API oaGCellPattern : public oaBlockObject { 00053 public: 00054 static oaGCellPattern *create(oaBlock *block, 00055 oaBoolean isHorizontal, 00056 oaCoord startCoord, 00057 oaDist spacing, 00058 oaUInt4 count); 00059 void destroy(); 00060 00061 oaBoolean isHorizontal() const; 00062 oaCoord getStartCoord() const; 00063 oaDist getSpacing() const; 00064 oaUInt4 getCount() const; 00065 00066 enum {dtIndex = oacGCellPatternDataType}; 00067 }; 00068 00069 00070 00071 // ***************************************************************************** 00072 // Design Traits. 00073 // ***************************************************************************** 00074 template<> 00075 class oaTraits<oaGCellPattern> { 00076 public: 00077 typedef oaBlockObject parentType; 00078 typedef oaGCellPatternModTypeEnum modTypeType; 00079 enum {domain = oacBlockDomain}; 00080 enum {dbType = oacDesignDBType}; 00081 enum {isMultiDomain = false}; 00082 enum {dtIndex = oacGCellPatternDataType}; 00083 enum {isConcrete = true}; 00084 enum {objectTypeEnumVal = oacGCellPatternType}; 00085 enum {dataTypeEnumVal = oacGCellPatternDataType}; 00086 }; 00087 00088 00089 00090 END_OA_NAMESPACE 00091 00092 #endif 00093
Copyright © 2002 - 2010 Cadence Design Systems, Inc.
All Rights Reserved.