abc-master
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
decMan.c
Go to the documentation of this file.
1 /**CFile****************************************************************
2 
3  FileName [decMan.c]
4 
5  PackageName [MVSIS 2.0: Multi-valued logic synthesis system.]
6 
7  Synopsis [Decomposition manager.]
8 
9  Author [MVSIS Group]
10 
11  Affiliation [UC Berkeley]
12 
13  Date [Ver. 1.0. Started - February 1, 2003.]
14 
15  Revision [$Id: decMan.c,v 1.1 2003/05/22 19:20:05 alanmi Exp $]
16 
17 ***********************************************************************/
18 
19 #include "base/abc/abc.h"
20 #include "misc/mvc/mvc.h"
21 #include "dec.h"
22 
24 
25 
26 ////////////////////////////////////////////////////////////////////////
27 /// DECLARATIONS ///
28 ////////////////////////////////////////////////////////////////////////
29 
30 ////////////////////////////////////////////////////////////////////////
31 /// FUNCTION DEFINITIONS ///
32 ////////////////////////////////////////////////////////////////////////
33 
34 /**Function*************************************************************
35 
36  Synopsis [Start the MVC manager used in the factoring package.]
37 
38  Description []
39 
40  SideEffects []
41 
42  SeeAlso []
43 
44 ***********************************************************************/
46 {
47  Dec_Man_t * p;
48 // abctime clk = Abc_Clock();
49  p = ABC_ALLOC( Dec_Man_t, 1 );
51  p->vCubes = Vec_IntAlloc( 8 );
52  p->vLits = Vec_IntAlloc( 8 );
53  // canonical forms, phases, perms
54  Extra_Truth4VarNPN( &p->puCanons, &p->pPhases, &p->pPerms, &p->pMap );
55 //ABC_PRT( "NPN classes precomputation time", Abc_Clock() - clk );
56  return p;
57 }
58 
59 /**Function*************************************************************
60 
61  Synopsis [Stops the MVC maanager used in the factoring package.]
62 
63  Description []
64 
65  SideEffects []
66 
67  SeeAlso []
68 
69 ***********************************************************************/
71 {
73  Vec_IntFree( p->vCubes );
74  Vec_IntFree( p->vLits );
75  ABC_FREE( p->puCanons );
76  ABC_FREE( p->pPhases );
77  ABC_FREE( p->pPerms );
78  ABC_FREE( p->pMap );
79  ABC_FREE( p );
80 }
81 
82 ////////////////////////////////////////////////////////////////////////
83 /// END OF FILE ///
84 ////////////////////////////////////////////////////////////////////////
85 
86 
88 
static Llb_Mgr_t * p
Definition: llb3Image.c:950
void * pMvcMem
Definition: dec.h:82
Vec_Int_t * vCubes
Definition: dec.h:83
#define ABC_ALLOC(type, num)
Definition: abc_global.h:229
char * pPhases
Definition: dec.h:87
unsigned char * pMap
Definition: dec.h:89
void Mvc_ManagerFree(Mvc_Manager_t *p)
Definition: mvcMan.c:67
void Dec_ManStop(Dec_Man_t *p)
Definition: decMan.c:70
static Vec_Int_t * Vec_IntAlloc(int nCap)
FUNCTION DEFINITIONS ///.
Definition: bblif.c:149
Vec_Int_t * vLits
Definition: dec.h:84
Mvc_Manager_t * Mvc_ManagerStart()
DECLARATIONS ///.
Definition: mvcMan.c:44
#define ABC_NAMESPACE_IMPL_END
Definition: abc_global.h:108
unsigned short * puCanons
Definition: dec.h:86
#define ABC_NAMESPACE_IMPL_START
Definition: abc_global.h:107
ABC_NAMESPACE_IMPL_START Dec_Man_t * Dec_ManStart()
DECLARATIONS ///.
Definition: decMan.c:45
#define ABC_FREE(obj)
Definition: abc_global.h:232
void Extra_Truth4VarNPN(unsigned short **puCanons, char **puPhases, char **puPerms, unsigned char **puMap)
Definition: dec.h:80
static void Vec_IntFree(Vec_Int_t *p)
Definition: bblif.c:235
char * pPerms
Definition: dec.h:88