Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/pdf/xpdf/BaseFile.h
blob: c596b428fbcf1aaf536d91956bd838af962aefda (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
//========================================================================
//
// BaseFile.h
//
// Copyright 1999 Derek B. Noonburg assigned by Michael Meeks.
//
//========================================================================

#ifndef BASEFILE_H
#define BASEFILE_H

#include <stdio.h>
#include <stdarg.h>

#include "Error.h"

//#ifdef BONOBO_IO
#        include "BonoboFile.h"
/*#else

typedef FILE * BaseFile;

static inline BaseFile
bxpdfopen (GString *fileName1)
{
  GString *fileName2;
  // try to open file
  fileName2 = NULL;
  BaseFile file;

#ifdef VMS
  if (!(file = fopen(fileName->getCString(), "rb", "ctx=stm"))) {
    error(-1, "Couldn't open file '%s'", fileName->getCString());
    return NULL;
  }
#else
  if (!(file = fopen(fileName1->getCString(), "rb"))) {
    fileName2 = fileName1->copy();
    fileName2->lowerCase();
    if (!(file = fopen(fileName2->getCString(), "rb"))) {
      fileName2->upperCase();
      if (!(file = fopen(fileName2->getCString(), "rb"))) {
	error(-1, "Couldn't open file '%s'", fileName1->getCString());
	delete fileName2;
	return NULL;
      }
    }
    delete fileName2;
  }
#endif
  return file;
}

static inline void
bfclose (BaseFile file)
{
  fclose (file);
}

static inline size_t
bfread (void *ptr, size_t size, size_t nmemb, BaseFile file)
{
  return fread (ptr, size, nmemb, file);
}

static inline int
bfseek (BaseFile file, long offset, int whence)
{
  return fseek (file, offset, whence);
}

static inline void
brewind (BaseFile file)
{
  rewind (file);
}

static inline long
bftell (BaseFile file)
{
  return ftell (file);
}*/

//#endif /* BONOBO_IO not defined */
#endif /* BASEFILE_H */