mageec  0.1.0
MAchine Guided Energy Efficient Compilation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
Classes | Macros | Typedefs | Functions | Variables
classify-hooks.c File Reference

Go to the source code of this file.

Classes

union  _xstack_elt
 

Macros

#define MAXLINEBUFFER   10000
 
#define XError(a, b, c)   Error(a,b,c)
 
#define FailSyn(Msg)   {DefSyntaxError(Msg); return false;}
 
#define FailSem(Msg)   {DefSemanticsError(Fi, Msg, OpCode); return false;}
 
#define cval   _cont_val
 
#define sval   _string_val
 
#define dval   _discr_val
 
#define CUnknownVal(AV)   (AV.cval==_UNK.cval)
 
#define DUnknownVal(AV)   (AV.dval==_UNK.dval)
 
#define DUNA(a)   (DUnknownVal(XStack[a]) || NotApplicVal(XStack[a]))
 
#define CUNA(a)   (CUnknownVal(XStack[a]) || NotApplicVal(XStack[a]))
 
#define C1(x)   (CUNA(XSN-1) ? _UNK.cval : (x))
 
#define C2(x)   (CUNA(XSN-1) || CUNA(XSN-2) ? _UNK.cval : (x))
 
#define CD2(x)   (CUNA(XSN-1) || CUNA(XSN-2) ? _UNK.dval : (x))
 
#define D2(x)   (DUNA(XSN-1) || DUNA(XSN-2) ? _UNK.dval : (x))
 
#define PROPS   23
 
#define ERRORP   0
 
#define ATTP   1
 
#define CLASSP   2
 
#define CUTP   3
 
#define CONDSP   4
 
#define ELTSP   5
 
#define ENTRIESP   6
 
#define FORKSP   7
 
#define FREQP   8
 
#define IDP   9
 
#define TYPEP   10
 
#define LOWP   11
 
#define MIDP   12
 
#define HIGHP   13
 
#define RESULTP   14
 
#define RULESP   15
 
#define VALP   16
 
#define LIFTP   17
 
#define COVERP   18
 
#define OKP   19
 
#define DEFAULTP   20
 
#define COSTSP   21
 

Typedefs

typedef union _xstack_elt XStackElt
 

Functions

Boolean ReadName (FILE *f, String s, int n, char ColonOpt)
 
void GetNames (FILE *Nf)
 
void ExplicitAtt (FILE *Nf)
 
int Which (String Val, String *List, int First, int Last)
 
int InChar (FILE *f)
 
DataRec GetDataRec (FILE *Df, Boolean Train)
 
int StoreIVal (String S)
 
void CheckValue (DataRec DVec, Attribute Att)
 
void ImplicitAtt (FILE *Nf)
 
void ReadDefinition (FILE *f)
 
void Append (char c)
 
Boolean Expression ()
 
Boolean Conjunct ()
 
Boolean SExpression ()
 
Boolean AExpression ()
 
Boolean Term ()
 
Boolean Factor ()
 
Boolean Primary ()
 
Boolean Atom ()
 
Boolean Find (String S)
 
int FindOne (String *Alt)
 
Attribute FindAttName ()
 
void DefSyntaxError (String Msg)
 
void DefSemanticsError (int Fi, String Msg, int OpCode)
 
void Dump (char OpCode, ContValue F, String S, int Fi)
 
void DumpOp (char OpCode, int Fi)
 
Boolean UpdateTStack (char OpCode, ContValue F, String S, int Fi)
 
AttValue EvaluateDef (Definition D, DataRec Case)
 
void ReadFilePrefix (String Extension)
 
void ReadHeader ()
 
Tree GetTree (String Extension)
 
Tree InTree ()
 
CRuleSet GetRules (String Extension)
 
CRuleSet InRules ()
 
CRule InRule ()
 
Condition InCondition ()
 
void ConstructRuleTree (CRuleSet RS)
 
void SetTestIndex (Condition C)
 
RuleTree GrowRT (RuleNo *RR, int RRN, CRule *Rule)
 
int DesiredOutcome (CRule R, int TI)
 
int SelectTest (RuleNo *RR, int RRN, CRule *Rule)
 
int ReadProp (char *Delim)
 
String RemoveQuotes (String S)
 
Set MakeSubset (Attribute Att)
 
Tree Leaf (double *Freq, ClassNo NodeClass, CaseCount Cases, CaseCount Errors)
 
void GetMCosts (FILE *Cf)
 
ClassNo TreeClassify (DataRec Case, Tree DecisionTree, CEnv E)
 
void FollowAllBranches (DataRec Case, Tree T, float Fraction, double *Prob, Boolean *AttUsed)
 
void FindLeaf (DataRec Case, Tree T, Tree PT, float Fraction, double *Prob, Boolean *AttUsed)
 
ClassNo RuleClassify (DataRec Case, CRuleSet RS, CEnv E)
 
int FindOutcome (DataRec Case, Condition OneCond)
 
Boolean Satisfies (DataRec Case, Condition OneCond)
 
Boolean Matches (CRule R, DataRec Case)
 
void CheckActiveSpace (int N, CEnv E)
 
void MarkActive (RuleTree RT, DataRec Case, CEnv E)
 
ClassNo BoostClassify (DataRec Case, int MaxTrial, CEnv E)
 
ClassNo SelectClass (ClassNo Default, Boolean UseCosts, double *Prob)
 
double MisclassCost (double *LocalFreq, ClassNo C)
 
ClassNo Classify (DataRec Case, CEnv E)
 
float Interpolate (Tree T, ContValue Val)
 
FILE * GetFile (String Extension, String RW)
 
void CheckFile (String Extension, Boolean Write)
 
char ProcessOption (int Argc, char *Argv[], char *Options)
 
void * Pmalloc (size_t Bytes)
 
void * Prealloc (void *Present, size_t Bytes)
 
void * Pcalloc (size_t Number, unsigned int Size)
 
void Error (int ErrNo, String S1, String S2)
 
int Denominator (ContValue Val)
 
int GetInt (String S, int N)
 
int DateToDay (String DS)
 
int TimeToSecs (String TS)
 
void SetTSBase (int y)
 
int TStampToMins (String TS)
 
void FreeLastCase (DataRec DVec)
 
void FreeGlobals ()
 
void FreeNames ()
 
void FreeTree (Tree T)
 
void FreeRule (CRule R)
 
void FreeRuleTree (RuleTree RT)
 
void FreeRules (CRuleSet RS)
 
void FreeVector (void **V, int First, int Last)
 

Variables

char LineBuffer [MAXLINEBUFFER]
 
char * LBp =LineBuffer
 
char * Buff
 
int BuffSize
 
int BN
 
EltRecTStack
 
int TStackSize
 
int TSN
 
int DefSize
 
int DN
 
Boolean PreviousError
 
AttValue _UNK
 
AttValue _NA
 
String RelOps [] = {">=", "<=", "!=", "<>", ">", "<", "=", (String) 0}
 
String AddOps [] = {"+", "-", (String) 0}
 
String MultOps [] = {"*", "/", "%", (String) 0}
 
String Funcs [] = {"sin", "cos", "tan", "log", "exp", "int", (String) 0}
 
int Entry
 
char * Prop []
 
char PropName [20]
 
char * PropVal =Nil
 
char * Unquoted
 
int PropValSize =0
 
ConditionTest =Nil
 
int NTest
 
int TestSpace
 
int * TestOccur =Nil
 
int * RuleCondOK =Nil
 
BooleanTestUsed =Nil
 
String OptArg
 
String Option
 

Macro Definition Documentation

#define ATTP   1

Definition at line 1992 of file classify-hooks.c.

#define C1 (   x)    (CUNA(XSN-1) ? _UNK.cval : (x))

Definition at line 1716 of file classify-hooks.c.

#define C2 (   x)    (CUNA(XSN-1) || CUNA(XSN-2) ? _UNK.cval : (x))

Definition at line 1717 of file classify-hooks.c.

#define CD2 (   x)    (CUNA(XSN-1) || CUNA(XSN-2) ? _UNK.dval : (x))

Definition at line 1718 of file classify-hooks.c.

#define CLASSP   2

Definition at line 1993 of file classify-hooks.c.

#define CONDSP   4

Definition at line 1995 of file classify-hooks.c.

#define COSTSP   21

Definition at line 2012 of file classify-hooks.c.

#define COVERP   18

Definition at line 2009 of file classify-hooks.c.

#define CUNA (   a)    (CUnknownVal(XStack[a]) || NotApplicVal(XStack[a]))

Definition at line 1715 of file classify-hooks.c.

#define CUnknownVal (   AV)    (AV.cval==_UNK.cval)

Definition at line 1712 of file classify-hooks.c.

#define CUTP   3

Definition at line 1994 of file classify-hooks.c.

#define cval   _cont_val

Definition at line 897 of file classify-hooks.c.

#define D2 (   x)    (DUNA(XSN-1) || DUNA(XSN-2) ? _UNK.dval : (x))

Definition at line 1719 of file classify-hooks.c.

#define DEFAULTP   20

Definition at line 2011 of file classify-hooks.c.

#define DUNA (   a)    (DUnknownVal(XStack[a]) || NotApplicVal(XStack[a]))

Definition at line 1714 of file classify-hooks.c.

#define DUnknownVal (   AV)    (AV.dval==_UNK.dval)

Definition at line 1713 of file classify-hooks.c.

#define dval   _discr_val

Definition at line 899 of file classify-hooks.c.

#define ELTSP   5

Definition at line 1996 of file classify-hooks.c.

#define ENTRIESP   6

Definition at line 1997 of file classify-hooks.c.

#define ERRORP   0

Definition at line 1991 of file classify-hooks.c.

#define FailSem (   Msg)    {DefSemanticsError(Fi, Msg, OpCode); return false;}

Definition at line 887 of file classify-hooks.c.

#define FailSyn (   Msg)    {DefSyntaxError(Msg); return false;}

Definition at line 886 of file classify-hooks.c.

#define FORKSP   7

Definition at line 1998 of file classify-hooks.c.

#define FREQP   8

Definition at line 1999 of file classify-hooks.c.

#define HIGHP   13

Definition at line 2004 of file classify-hooks.c.

#define IDP   9

Definition at line 2000 of file classify-hooks.c.

#define LIFTP   17

Definition at line 2008 of file classify-hooks.c.

#define LOWP   11

Definition at line 2002 of file classify-hooks.c.

#define MAXLINEBUFFER   10000

Definition at line 13 of file classify-hooks.c.

#define MIDP   12

Definition at line 2003 of file classify-hooks.c.

#define OKP   19

Definition at line 2010 of file classify-hooks.c.

#define PROPS   23

Definition at line 1989 of file classify-hooks.c.

#define RESULTP   14

Definition at line 2005 of file classify-hooks.c.

#define RULESP   15

Definition at line 2006 of file classify-hooks.c.

#define sval   _string_val

Definition at line 898 of file classify-hooks.c.

#define TYPEP   10

Definition at line 2001 of file classify-hooks.c.

#define VALP   16

Definition at line 2007 of file classify-hooks.c.

#define XError (   a,
  b,
 
)    Error(a,b,c)

Definition at line 600 of file classify-hooks.c.

Typedef Documentation

typedef union _xstack_elt XStackElt

Function Documentation

Boolean AExpression ( )

Definition at line 1151 of file classify-hooks.c.

void Append ( char  c)

Definition at line 1049 of file classify-hooks.c.

Boolean Atom ( )

Definition at line 1251 of file classify-hooks.c.

ClassNo BoostClassify ( DataRec  Case,
int  MaxTrial,
CEnv  E 
)

Definition at line 3364 of file classify-hooks.c.

void CheckActiveSpace ( int  N,
CEnv  E 
)

Definition at line 3304 of file classify-hooks.c.

void CheckFile ( String  Extension,
Boolean  Write 
)

Definition at line 3536 of file classify-hooks.c.

void CheckValue ( DataRec  DVec,
Attribute  Att 
)

Definition at line 849 of file classify-hooks.c.

ClassNo Classify ( DataRec  Case,
CEnv  E 
)

Definition at line 3480 of file classify-hooks.c.

Boolean Conjunct ( )

Definition at line 1099 of file classify-hooks.c.

void ConstructRuleTree ( CRuleSet  RS)

Definition at line 2431 of file classify-hooks.c.

int DateToDay ( String  DS)

Definition at line 3940 of file classify-hooks.c.

void DefSemanticsError ( int  Fi,
String  Msg,
int  OpCode 
)

Definition at line 1501 of file classify-hooks.c.

void DefSyntaxError ( String  Msg)

Definition at line 1471 of file classify-hooks.c.

int Denominator ( ContValue  Val)

Definition at line 3892 of file classify-hooks.c.

int DesiredOutcome ( CRule  R,
int  TI 
)

Definition at line 2631 of file classify-hooks.c.

void Dump ( char  OpCode,
ContValue  F,
String  S,
int  Fi 
)

Definition at line 1563 of file classify-hooks.c.

void DumpOp ( char  OpCode,
int  Fi 
)

Definition at line 1592 of file classify-hooks.c.

void Error ( int  ErrNo,
String  S1,
String  S2 
)

Definition at line 3668 of file classify-hooks.c.

AttValue EvaluateDef ( Definition  D,
DataRec  Case 
)

Definition at line 1722 of file classify-hooks.c.

void ExplicitAtt ( FILE *  Nf)

Definition at line 394 of file classify-hooks.c.

Boolean Expression ( )

Definition at line 1076 of file classify-hooks.c.

Boolean Factor ( )

Definition at line 1204 of file classify-hooks.c.

Boolean Find ( String  S)

Definition at line 1395 of file classify-hooks.c.

Attribute FindAttName ( )

Definition at line 1434 of file classify-hooks.c.

void FindLeaf ( DataRec  Case,
Tree  T,
Tree  PT,
float  Fraction,
double *  Prob,
Boolean AttUsed 
)

Definition at line 2995 of file classify-hooks.c.

int FindOne ( String Alt)

Definition at line 1412 of file classify-hooks.c.

int FindOutcome ( DataRec  Case,
Condition  OneCond 
)

Definition at line 3220 of file classify-hooks.c.

void FollowAllBranches ( DataRec  Case,
Tree  T,
float  Fraction,
double *  Prob,
Boolean AttUsed 
)

Definition at line 2969 of file classify-hooks.c.

void FreeGlobals ( )

Definition at line 4064 of file classify-hooks.c.

void FreeLastCase ( DataRec  DVec)

Definition at line 4048 of file classify-hooks.c.

void FreeNames ( )

Definition at line 4119 of file classify-hooks.c.

void FreeRule ( CRule  R)

Definition at line 4209 of file classify-hooks.c.

void FreeRules ( CRuleSet  RS)

Definition at line 4253 of file classify-hooks.c.

void FreeRuleTree ( RuleTree  RT)

Definition at line 4228 of file classify-hooks.c.

void FreeTree ( Tree  T)

Definition at line 4173 of file classify-hooks.c.

void FreeVector ( void **  V,
int  First,
int  Last 
)

Definition at line 4269 of file classify-hooks.c.

DataRec GetDataRec ( FILE *  Df,
Boolean  Train 
)

Definition at line 603 of file classify-hooks.c.

FILE* GetFile ( String  Extension,
String  RW 
)

Definition at line 3518 of file classify-hooks.c.

int GetInt ( String  S,
int  N 
)

Definition at line 3923 of file classify-hooks.c.

void GetMCosts ( FILE *  Cf)

Definition at line 2859 of file classify-hooks.c.

void GetNames ( FILE *  Nf)

Definition at line 139 of file classify-hooks.c.

CRuleSet GetRules ( String  Extension)

Definition at line 2244 of file classify-hooks.c.

Tree GetTree ( String  Extension)

Definition at line 2124 of file classify-hooks.c.

RuleTree GrowRT ( RuleNo RR,
int  RRN,
CRule Rule 
)

Definition at line 2520 of file classify-hooks.c.

void ImplicitAtt ( FILE *  Nf)

Definition at line 915 of file classify-hooks.c.

int InChar ( FILE *  f)

Definition at line 566 of file classify-hooks.c.

Condition InCondition ( )

Definition at line 2358 of file classify-hooks.c.

CRule InRule ( )

Definition at line 2302 of file classify-hooks.c.

CRuleSet InRules ( )

Definition at line 2254 of file classify-hooks.c.

float Interpolate ( Tree  T,
ContValue  Val 
)

Definition at line 3499 of file classify-hooks.c.

Tree InTree ( )

Definition at line 2134 of file classify-hooks.c.

Tree Leaf ( double *  Freq,
ClassNo  NodeClass,
CaseCount  Cases,
CaseCount  Errors 
)

Definition at line 2826 of file classify-hooks.c.

Set MakeSubset ( Attribute  Att)

Definition at line 2791 of file classify-hooks.c.

void MarkActive ( RuleTree  RT,
DataRec  Case,
CEnv  E 
)

Definition at line 3322 of file classify-hooks.c.

Boolean Matches ( CRule  R,
DataRec  Case 
)

Definition at line 3279 of file classify-hooks.c.

double MisclassCost ( double *  LocalFreq,
ClassNo  C 
)

Definition at line 3454 of file classify-hooks.c.

void* Pcalloc ( size_t  Number,
unsigned int  Size 
)

Definition at line 3642 of file classify-hooks.c.

void* Pmalloc ( size_t  Bytes)

Definition at line 3600 of file classify-hooks.c.

void* Prealloc ( void *  Present,
size_t  Bytes 
)

Definition at line 3619 of file classify-hooks.c.

Boolean Primary ( )

Definition at line 1225 of file classify-hooks.c.

char ProcessOption ( int  Argc,
char *  Argv[],
char *  Options 
)

Definition at line 3566 of file classify-hooks.c.

void ReadDefinition ( FILE *  f)

Definition at line 995 of file classify-hooks.c.

void ReadFilePrefix ( String  Extension)

Definition at line 2024 of file classify-hooks.c.

void ReadHeader ( )

Definition at line 2045 of file classify-hooks.c.

Boolean ReadName ( FILE *  f,
String  s,
int  n,
char  ColonOpt 
)

Definition at line 31 of file classify-hooks.c.

int ReadProp ( char *  Delim)

Definition at line 2719 of file classify-hooks.c.

String RemoveQuotes ( String  S)

Definition at line 2771 of file classify-hooks.c.

ClassNo RuleClassify ( DataRec  Case,
CRuleSet  RS,
CEnv  E 
)

Definition at line 3109 of file classify-hooks.c.

Boolean Satisfies ( DataRec  Case,
Condition  OneCond 
)

Definition at line 3264 of file classify-hooks.c.

ClassNo SelectClass ( ClassNo  Default,
Boolean  UseCosts,
double *  Prob 
)

Definition at line 3410 of file classify-hooks.c.

int SelectTest ( RuleNo RR,
int  RRN,
CRule Rule 
)

Definition at line 2673 of file classify-hooks.c.

void SetTestIndex ( Condition  C)

Definition at line 2467 of file classify-hooks.c.

void SetTSBase ( int  y)

Definition at line 4000 of file classify-hooks.c.

Boolean SExpression ( )

Definition at line 1122 of file classify-hooks.c.

int StoreIVal ( String  S)

Definition at line 814 of file classify-hooks.c.

Boolean Term ( )

Definition at line 1183 of file classify-hooks.c.

int TimeToSecs ( String  TS)

Definition at line 3978 of file classify-hooks.c.

ClassNo TreeClassify ( DataRec  Case,
Tree  DecisionTree,
CEnv  E 
)

Definition at line 2924 of file classify-hooks.c.

int TStampToMins ( String  TS)

Definition at line 4009 of file classify-hooks.c.

Boolean UpdateTStack ( char  OpCode,
ContValue  F,
String  S,
int  Fi 
)

Definition at line 1600 of file classify-hooks.c.

int Which ( String  Val,
String List,
int  First,
int  Last 
)

Definition at line 547 of file classify-hooks.c.

Variable Documentation

AttValue _NA

Definition at line 882 of file classify-hooks.c.

AttValue _UNK

Definition at line 882 of file classify-hooks.c.

String AddOps[] = {"+", "-", (String) 0}

Definition at line 1149 of file classify-hooks.c.

int BN

Definition at line 873 of file classify-hooks.c.

char* Buff

Definition at line 872 of file classify-hooks.c.

int BuffSize

Definition at line 873 of file classify-hooks.c.

int DefSize

Definition at line 878 of file classify-hooks.c.

int DN

Definition at line 878 of file classify-hooks.c.

int Entry

Definition at line 1956 of file classify-hooks.c.

String Funcs[] = {"sin", "cos", "tan", "log", "exp", "int", (String) 0}

Definition at line 1249 of file classify-hooks.c.

char * LBp =LineBuffer

Definition at line 14 of file classify-hooks.c.

char LineBuffer[MAXLINEBUFFER]

Definition at line 14 of file classify-hooks.c.

String MultOps[] = {"*", "/", "%", (String) 0}

Definition at line 1181 of file classify-hooks.c.

int NTest

Definition at line 2424 of file classify-hooks.c.

String OptArg

Definition at line 3563 of file classify-hooks.c.

String Option

Definition at line 3563 of file classify-hooks.c.

Boolean PreviousError

Definition at line 880 of file classify-hooks.c.

char* Prop[]
Initial value:
={"null",
"att",
"class",
"cut",
"conds",
"elts",
"entries",
"forks",
"freq",
"id",
"type",
"low",
"mid",
"high",
"result",
"rules",
"val",
"lift",
"cover",
"ok",
"default",
"costs",
"sample",
"init"
}

Definition at line 1958 of file classify-hooks.c.

char PropName[20]

Definition at line 1984 of file classify-hooks.c.

char * PropVal =Nil

Definition at line 1985 of file classify-hooks.c.

int PropValSize =0

Definition at line 1987 of file classify-hooks.c.

String RelOps[] = {">=", "<=", "!=", "<>", ">", "<", "=", (String) 0}

Definition at line 1120 of file classify-hooks.c.

int * RuleCondOK =Nil

Definition at line 2427 of file classify-hooks.c.

Condition* Test =Nil

Definition at line 2423 of file classify-hooks.c.

int * TestOccur =Nil

Definition at line 2426 of file classify-hooks.c.

int TestSpace

Definition at line 2424 of file classify-hooks.c.

Boolean* TestUsed =Nil

Definition at line 2428 of file classify-hooks.c.

int TSN

Definition at line 876 of file classify-hooks.c.

EltRec* TStack

Definition at line 875 of file classify-hooks.c.

int TStackSize

Definition at line 876 of file classify-hooks.c.

char * Unquoted

Definition at line 1985 of file classify-hooks.c.