bfile_heuristics.c

changeset 34
fa9bda32de17
parent 33
1a2d7298bc82
child 35
35120de6ee53
--- a/bfile_heuristics.c	Tue Oct 02 10:49:25 2012 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,57 +0,0 @@
-/*
- * bfile_heuristics.c
- *
- *  Created on: 20.10.2011
- *      Author: Mike
- */
-
-#include "bfile_heuristics.h"
-#include <ctype.h>
-
-bfile_heuristics_t *new_bfile_heuristics_t() {
-  bfile_heuristics_t *ret = malloc(sizeof(bfile_heuristics_t));
-  ret->level = BFILE_MEDIUM_ACCURACY;
-  bfile_reset(ret);
-  return ret;
-}
-
-void destroy_bfile_heuristics_t(bfile_heuristics_t *def) {
-  free(def);
-}
-
-void bfile_reset(bfile_heuristics_t *def) {
-  def->bcount = 0;
-  def->tcount = 0;
-}
-
-bool bfile_check(bfile_heuristics_t *def, int next_char) {
-  bool ret = false;
-  if (def->level != BFILE_IGNORE) {
-    def->tcount++;
-    if (!isprint(next_char) && !isspace(next_char)) {
-      def->bcount++;
-    }
-
-    if (def->tcount > 1) { /* empty files are text files */
-      switch (def->level) {
-      case BFILE_LOW_ACCURACY:
-        if (def->tcount > 15 || next_char == EOF) {
-          ret = (1.0*def->bcount)/def->tcount > 0.32;
-        }
-        break;
-      case BFILE_HIGH_ACCURACY:
-        if (def->tcount > 500 || next_char == EOF) {
-          ret = (1.0*def->bcount)/def->tcount > 0.1;
-        }
-        break;
-      default: /* BFILE_MEDIUM_ACCURACY */
-        if (def->tcount > 100 || next_char == EOF) {
-          ret = (1.0*def->bcount)/def->tcount > 0.1;
-        }
-        break;
-      }
-    }
-  }
-
-  return ret;
-}

mercurial