⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 simparray.h

📁 主要进行大规模的电路综合
💻 H
字号:
/**CFile****************************************************************  FileName    [simpArray.h]  PackageName [MVSIS 2.0: Multi-valued logic synthesis system.]  Synopsis    [Two-level node minimization using don't cares.]  Author      [MVSIS Group]    Affiliation [UC Berkeley]  Date        [Ver. 1.0. Started - February 1, 2003.]  Revision    [$Id: simpArray.h,v 1.3 2003/05/27 23:16:12 alanmi Exp $]***********************************************************************/#ifndef SIMP_ARRAY_H#define SIMP_ARRAY_Htypedef struct SimpArrayStruct {    void **space;    int	   num;    int	   size;} sarray_t;EXTERN sarray_t *sarray_do_alloc ARGS((int));EXTERN sarray_t *sarray_dup      ARGS((sarray_t *));EXTERN void      sarray_free     ARGS((sarray_t *));EXTERN sarray_t *sarray_join     ARGS((sarray_t *, sarray_t *));EXTERN int       sarray_append   ARGS((sarray_t *, sarray_t *));EXTERN int       sarray_resize   ARGS((sarray_t *, int));EXTERN void      sarray_sort     ARGS((sarray_t *, int (*)()));EXTERN void      sarray_compact  ARGS((sarray_t *));#define SARRAY_OUT_OF_MEM -10000#define sarray_alloc(type, number)                                 \    (sarray_do_alloc (number))#define sarray_n(a)                                                \    ((a)->num)#define sarray_insert(type, a, i, datum)                           \    ((a)->space[(i)] = (void *)(datum) )#define sarray_insert_safe(type, a, i, datum)                      \    (((i) >= (a)->size)? sarray_resize(a, (a)->size*2) : 0,        \     ((a)->space[(i)] = (void *)(datum)) )#define sarray_insert_last(type, a, datum)                         \     ((a)->space[(a)->num++] = (void *)(datum))#define sarray_insert_last_safe(type, a, datum)                    \    ((((a)->num) == (a)->size)? sarray_resize(a, (a)->size*2) : 0, \     ((a)->space[(a)->num++] = (void *)(datum)) )#define sarray_fetch(type, a, i)			                       \      *((type *) ((a)->space + i))#define sarrayForEachItem(                                      \  type,  /* type of object stored in array */                   \  array, /* array to iterate */                                 \  i,     /* int, local variable for iterator */                 \  data   /* object of type */                                   \)                                                               \  for((i) = 0;                                                  \      (((i) < array_n((array)))                                 \       && (((data) = sarray_fetch(type, (array), (i))), 1));    \      (i)++)#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -