SIS
Symmetric Index Structures
/Users/dbr/ma/src/bas/lml/scdawg.h
Go to the documentation of this file.
00001 #ifndef _HEADER_FILE_SCDAWG_
00002 #define _HEADER_FILE_SCDAWG_
00003 
00004 typedef struct tSCDAWG{
00005     CompressedAutomaton * left;
00006     CompressedAutomaton * right;
00007 } SCDAWG;
00008 
00009 typedef struct tSCDAWGBuildHelp{
00010     CDAWGBuildHelp * left;
00011     CDAWGBuildHelp * right;
00012     SCDAWG * aut;
00013     UINTSequence * leftToRight;
00014 } SCDAWGBuildHelp;
00015 
00016 SCDAWG * SCDAWGInit( UINT symbolSize );
00017 void SCDAWGFree( SCDAWG * aut );
00018 void SCDAWGShrink( SCDAWG * aut );
00019 void SCDAWGWrite( SCDAWG * aut, FILE * fp );
00020 SCDAWG * SCDAWGRead( FILE * fp );
00021 void SCDAWGDumpStat( const SCDAWG * aut, FILE * fp );
00022 void SCDAWGClose( SCDAWGBuildHelp * help );
00023 void SCDAWGDumpGV( SCDAWG * aut, FILE * fp, void (*DumpLabel)(const SCDAWG *, FILE *, UINT, boolean, UINT), UINT encoding );
00024 SCDAWGBuildHelp * SCDAWGBuildHelpInit( SCDAWG * aut );
00025 void SCDAWGBuildHelpFree( SCDAWGBuildHelp * help );
00026 void SCDAWGAdd( SCDAWGBuildHelp * help, VoidSequence * sharpDocumentDollar );
00027 void SCDAWGAddTarjanTable( SCDAWG * aut );
00028 
00029 #endif