src/bdd/mtr/mtr.h File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  MtrNode

Defines

#define CONST
#define MTR_INLINE
#define MTR_UNUSED
#define MTR_DEFAULT   0x00000000
#define MTR_TERMINAL   0x00000001
#define MTR_SOFT   0x00000002
#define MTR_FIXED   0x00000004
#define MTR_NEWNODE   0x00000008
#define MTR_MAXHIGH   ((MtrHalfWord) ~0)
#define MTR_SET(node, flag)   (node->flags |= (flag))
#define MTR_RESET(node, flag)   (node->flags &= ~ (flag))
#define MTR_TEST(node, flag)   (node->flags & (flag))

Typedefs

typedef unsigned short MtrHalfWord

Functions

EXTERN MtrNode *Mtr_AllocNode ARGS (())
EXTERN void Mtr_DeallocNode ARGS ((MtrNode *node))
EXTERN MtrNode *Mtr_CopyTree ARGS ((MtrNode *node, int expansion))
EXTERN void Mtr_MakeFirstChild ARGS ((MtrNode *parent, MtrNode *child))
EXTERN MtrNode
*Mtr_CreateFirstChild 
ARGS ((MtrNode *parent))
EXTERN void Mtr_MakeNextSibling ARGS ((MtrNode *first, MtrNode *second))
EXTERN MtrNode *Mtr_InitGroupTree ARGS ((int lower, int size))
EXTERN MtrNode *Mtr_MakeGroup ARGS ((MtrNode *root, unsigned int low, unsigned int high, unsigned int flags))
EXTERN MtrNode *Mtr_DissolveGroup ARGS ((MtrNode *group))
EXTERN MtrNode *Mtr_FindGroup ARGS ((MtrNode *root, unsigned int low, unsigned int high))
EXTERN void Mtr_PrintGroups ARGS ((MtrNode *root, int silent))
EXTERN MtrNode *Mtr_ReadGroups ARGS ((FILE *fp, int nleaves))

Define Documentation

#define CONST

CHeaderFile*****************************************************************

FileName [mtr.h]

PackageName [mtr]

Synopsis [Multiway-branch tree manipulation]

Description [This package provides two layers of functions. Functions of the lower level manipulate multiway-branch trees, implemented according to the classical scheme whereby each node points to its first child and its previous and next siblings. These functions are collected in mtrBasic.c.

Functions of the upper layer deal with group trees, that is the trees used by group sifting to represent the grouping of variables. These functions are collected in mtrGroup.c.]

SeeAlso [The CUDD package documentation; specifically on group sifting.]

Author [Fabio Somenzi]

Copyright [This file was created at the University of Colorado at Boulder. The University of Colorado at Boulder makes no warranty about the suitability of this software for any purpose. It is presented on an AS IS basis.]

Revision [

Id
mtr.h,v 1.1.1.1 2003/02/24 22:24:02 wjiang Exp

]

Definition at line 55 of file mtr.h.

#define MTR_DEFAULT   0x00000000

Definition at line 87 of file mtr.h.

#define MTR_FIXED   0x00000004

Definition at line 90 of file mtr.h.

#define MTR_INLINE

Definition at line 82 of file mtr.h.

#define MTR_MAXHIGH   ((MtrHalfWord) ~0)

Definition at line 100 of file mtr.h.

#define MTR_NEWNODE   0x00000008

Definition at line 91 of file mtr.h.

#define MTR_RESET ( node,
flag   )     (node->flags &= ~ (flag))

Definition at line 142 of file mtr.h.

#define MTR_SET ( node,
flag   )     (node->flags |= (flag))

Definition at line 141 of file mtr.h.

#define MTR_SOFT   0x00000002

Definition at line 89 of file mtr.h.

#define MTR_TERMINAL   0x00000001

Definition at line 88 of file mtr.h.

#define MTR_TEST ( node,
flag   )     (node->flags & (flag))

Definition at line 143 of file mtr.h.

#define MTR_UNUSED

Definition at line 83 of file mtr.h.


Typedef Documentation

typedef unsigned short MtrHalfWord

Definition at line 116 of file mtr.h.


Function Documentation

EXTERN MtrNode* Mtr_ReadGroups ARGS ( (FILE *fp, int nleaves)   ) 
EXTERN void Mtr_PrintGroups ARGS ( (MtrNode *root, int silent)   ) 
EXTERN MtrNode* Mtr_FindGroup ARGS ( (MtrNode *root, unsigned int low, unsigned int high)   ) 
EXTERN MtrNode* Mtr_DissolveGroup ARGS ( (MtrNode *group)   ) 
EXTERN MtrNode* Mtr_MakeGroup ARGS ( (MtrNode *root, unsigned int low, unsigned int high, unsigned int flags)   ) 
EXTERN MtrNode* Mtr_InitGroupTree ARGS ( (int lower, int size  ) 
EXTERN int Mtr_SwapGroups ARGS ( (MtrNode *first, MtrNode *second)   ) 
EXTERN MtrNode *Mtr_CreateLastChild ARGS ( (MtrNode *parent)   ) 
EXTERN void Mtr_MakeLastChild ARGS ( (MtrNode *parent, MtrNode *child)   ) 
EXTERN MtrNode* Mtr_CopyTree ARGS ( (MtrNode *node, int expansion)   ) 
EXTERN void Mtr_PrintTree ARGS ( (MtrNode *node)   ) 
EXTERN MtrNode* Mtr_AllocNode ARGS ( ()   ) 

AutomaticStart


Generated on Tue Jan 5 12:19:00 2010 for abc70930 by  doxygen 1.6.1