ReactOS  0.4.15-dev-5097-g328cc41
fc.h File Reference
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <windows.h>
#include <wine/list.h>
#include "resource.h"
Include dependency graph for fc.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  NODE_W
 
struct  NODE_A
 
struct  FILECOMPARE
 

Macros

#define FLAG_A   (1 << 0)
 
#define FLAG_B   (1 << 1)
 
#define FLAG_C   (1 << 2)
 
#define FLAG_L   (1 << 3)
 
#define FLAG_LBn   (1 << 4)
 
#define FLAG_N   (1 << 5)
 
#define FLAG_OFFLINE   (1 << 6)
 
#define FLAG_T   (1 << 7)
 
#define FLAG_U   (1 << 8)
 
#define FLAG_W   (1 << 9)
 
#define FLAG_nnnn   (1 << 10)
 
#define FLAG_HELP   (1 << 11)
 
#define MAX_VIEW_SIZE   (64 * 1024 * 1024)
 

Typedefs

typedef enum FCRET FCRET
 
typedef struct NODE_W NODE_W
 
typedef struct NODE_A NODE_A
 
typedef struct FILECOMPARE FILECOMPARE
 

Enumerations

enum  FCRET {
  FCRET_INVALID = -1, FCRET_IDENTICAL = 0, FCRET_DIFFERENT = 1, FCRET_CANT_FIND = 2,
  FCRET_NO_MORE_DATA = 3
}
 

Functions

FCRET TextCompareW (FILECOMPARE *pFC, HANDLE *phMapping0, const LARGE_INTEGER *pcb0, HANDLE *phMapping1, const LARGE_INTEGER *pcb1)
 
FCRET TextCompareA (FILECOMPARE *pFC, HANDLE *phMapping0, const LARGE_INTEGER *pcb0, HANDLE *phMapping1, const LARGE_INTEGER *pcb1)
 
VOID PrintLineW (const FILECOMPARE *pFC, DWORD lineno, LPCWSTR psz)
 
VOID PrintLineA (const FILECOMPARE *pFC, DWORD lineno, LPCSTR psz)
 
VOID PrintCaption (LPCWSTR file)
 
VOID PrintEndOfDiff (VOID)
 
VOID PrintDots (VOID)
 
FCRET NoDifference (VOID)
 
FCRET Different (LPCWSTR file0, LPCWSTR file1)
 
FCRET LongerThan (LPCWSTR file0, LPCWSTR file1)
 
FCRET OutOfMemory (VOID)
 
FCRET CannotRead (LPCWSTR file)
 
FCRET InvalidSwitch (VOID)
 
FCRET ResyncFailed (VOID)
 
HANDLE DoOpenFileForInput (LPCWSTR file)
 

Macro Definition Documentation

◆ FLAG_A

#define FLAG_A   (1 << 0)

Definition at line 49 of file fc.h.

◆ FLAG_B

#define FLAG_B   (1 << 1)

Definition at line 50 of file fc.h.

◆ FLAG_C

#define FLAG_C   (1 << 2)

Definition at line 51 of file fc.h.

◆ FLAG_HELP

#define FLAG_HELP   (1 << 11)

Definition at line 60 of file fc.h.

◆ FLAG_L

#define FLAG_L   (1 << 3)

Definition at line 52 of file fc.h.

◆ FLAG_LBn

#define FLAG_LBn   (1 << 4)

Definition at line 53 of file fc.h.

◆ FLAG_N

#define FLAG_N   (1 << 5)

Definition at line 54 of file fc.h.

◆ FLAG_nnnn

#define FLAG_nnnn   (1 << 10)

Definition at line 59 of file fc.h.

◆ FLAG_OFFLINE

#define FLAG_OFFLINE   (1 << 6)

Definition at line 55 of file fc.h.

◆ FLAG_T

#define FLAG_T   (1 << 7)

Definition at line 56 of file fc.h.

◆ FLAG_U

#define FLAG_U   (1 << 8)

Definition at line 57 of file fc.h.

◆ FLAG_W

#define FLAG_W   (1 << 9)

Definition at line 58 of file fc.h.

◆ MAX_VIEW_SIZE

#define MAX_VIEW_SIZE   (64 * 1024 * 1024)

Definition at line 96 of file fc.h.

Typedef Documentation

◆ FCRET

typedef enum FCRET FCRET

◆ FILECOMPARE

◆ NODE_A

typedef struct NODE_A NODE_A

◆ NODE_W

typedef struct NODE_W NODE_W

Enumeration Type Documentation

◆ FCRET

Enumerator
FCRET_INVALID 
FCRET_IDENTICAL 
FCRET_DIFFERENT 
FCRET_CANT_FIND 
FCRET_NO_MORE_DATA 

Definition at line 23 of file fc.h.

24 {
25  FCRET_INVALID = -1,
26  FCRET_IDENTICAL = 0,
27  FCRET_DIFFERENT = 1,
28  FCRET_CANT_FIND = 2,
29  FCRET_NO_MORE_DATA = 3 // (extension)
30 } FCRET;
FCRET
Definition: fc.h:23

Function Documentation

◆ CannotRead()

FCRET CannotRead ( LPCWSTR  file)

Definition at line 70 of file fc.c.

71 {
73  return FCRET_INVALID;
74 }
#define IDS_CANNOT_READ
Definition: resource.h:6
void ConResPrintf(FILE *fp, UINT nID,...)
Definition: fc.c:33
#define StdErr
Definition: fc.c:15
Definition: fci.c:126

Referenced by BinaryFileCompare(), and TextFileCompare().

◆ Different()

FCRET Different ( LPCWSTR  file0,
LPCWSTR  file1 
)

Definition at line 52 of file fc.c.

53 {
54  ConResPrintf(StdOut, IDS_DIFFERENT, file0, file1);
55  return FCRET_DIFFERENT;
56 }
void ConResPrintf(FILE *fp, UINT nID,...)
Definition: fc.c:33
#define StdOut
Definition: fc.c:14
#define IDS_DIFFERENT
Definition: resource.h:11

Referenced by BinaryFileCompare(), and Finalize().

◆ DoOpenFileForInput()

HANDLE DoOpenFileForInput ( LPCWSTR  file)

Definition at line 118 of file fc.c.

119 {
122  {
124  }
125  return hFile;
126 }
#define INVALID_HANDLE_VALUE
Definition: compat.h:590
#define FILE_SHARE_READ
Definition: compat.h:136
#define OPEN_EXISTING
Definition: compat.h:634
void ConResPrintf(FILE *fp, UINT nID,...)
Definition: fc.c:33
#define GENERIC_READ
Definition: compat.h:135
_In_ HANDLE hFile
Definition: mswsock.h:90
#define NULL
Definition: types.h:112
#define CreateFileW
Definition: compat.h:600
#define IDS_CANNOT_OPEN
Definition: resource.h:8
#define StdErr
Definition: fc.c:15
Definition: fci.c:126

Referenced by BinaryFileCompare(), and TextFileCompare().

◆ InvalidSwitch()

FCRET InvalidSwitch ( VOID  )

Definition at line 76 of file fc.c.

77 {
79  return FCRET_INVALID;
80 }
void ConResPuts(FILE *fp, UINT nID)
Definition: fc.c:27
#define IDS_INVALID_SWITCH
Definition: resource.h:7
#define StdErr
Definition: fc.c:15

Referenced by wmain().

◆ LongerThan()

FCRET LongerThan ( LPCWSTR  file0,
LPCWSTR  file1 
)

Definition at line 58 of file fc.c.

59 {
60  ConResPrintf(StdOut, IDS_LONGER_THAN, file0, file1);
61  return FCRET_DIFFERENT;
62 }
#define IDS_LONGER_THAN
Definition: resource.h:3
void ConResPrintf(FILE *fp, UINT nID,...)
Definition: fc.c:33
#define StdOut
Definition: fc.c:14

Referenced by BinaryFileCompare().

◆ NoDifference()

FCRET NoDifference ( VOID  )

Definition at line 46 of file fc.c.

47 {
49  return FCRET_IDENTICAL;
50 }
#define IDS_NO_DIFFERENCE
Definition: resource.h:2
void ConResPuts(FILE *fp, UINT nID)
Definition: fc.c:27
#define StdOut
Definition: fc.c:14

Referenced by BinaryFileCompare(), Finalize(), and TextFileCompare().

◆ OutOfMemory()

FCRET OutOfMemory ( VOID  )

Definition at line 64 of file fc.c.

65 {
67  return FCRET_INVALID;
68 }
#define IDS_OUT_OF_MEMORY
Definition: resource.h:5
void ConResPuts(FILE *fp, UINT nID)
Definition: fc.c:27
#define StdErr
Definition: fc.c:15

◆ PrintCaption()

VOID PrintCaption ( LPCWSTR  file)

Definition at line 88 of file fc.c.

89 {
90  ConPrintf(StdOut, L"***** %ls\n", file);
91 }
#define L(x)
Definition: ntvdm.h:50
void ConPrintf(FILE *fp, LPCWSTR psz,...)
Definition: fc.c:20
#define StdOut
Definition: fc.c:14
Definition: fci.c:126

Referenced by ShowDiff().

◆ PrintDots()

VOID PrintDots ( VOID  )

Definition at line 98 of file fc.c.

99 {
100  ConPuts(StdOut, L"...\n");
101 }
void ConPuts(FILE *fp, LPCWSTR psz)
Definition: fc.c:16
#define L(x)
Definition: ntvdm.h:50
#define StdOut
Definition: fc.c:14

Referenced by ShowDiff().

◆ PrintEndOfDiff()

VOID PrintEndOfDiff ( VOID  )

Definition at line 93 of file fc.c.

94 {
95  ConPuts(StdOut, L"*****\n\n");
96 }
void ConPuts(FILE *fp, LPCWSTR psz)
Definition: fc.c:16
#define L(x)
Definition: ntvdm.h:50
#define StdOut
Definition: fc.c:14

Referenced by Finalize(), and TextCompare().

◆ PrintLineA()

VOID PrintLineA ( const FILECOMPARE pFC,
DWORD  lineno,
LPCSTR  psz 
)

Definition at line 110 of file fc.c.

111 {
112  if (pFC->dwFlags & FLAG_N)
113  ConPrintf(StdOut, L"%5d: %hs\n", lineno, psz);
114  else
115  ConPrintf(StdOut, L"%hs\n", psz);
116 }
#define FLAG_N
Definition: fc.h:54
DWORD dwFlags
Definition: fc.h:64
#define L(x)
Definition: ntvdm.h:50
void ConPrintf(FILE *fp, LPCWSTR psz,...)
Definition: fc.c:20
#define StdOut
Definition: fc.c:14

◆ PrintLineW()

VOID PrintLineW ( const FILECOMPARE pFC,
DWORD  lineno,
LPCWSTR  psz 
)

Definition at line 103 of file fc.c.

104 {
105  if (pFC->dwFlags & FLAG_N)
106  ConPrintf(StdOut, L"%5d: %ls\n", lineno, psz);
107  else
108  ConPrintf(StdOut, L"%ls\n", psz);
109 }
#define FLAG_N
Definition: fc.h:54
DWORD dwFlags
Definition: fc.h:64
#define L(x)
Definition: ntvdm.h:50
void ConPrintf(FILE *fp, LPCWSTR psz,...)
Definition: fc.c:20
#define StdOut
Definition: fc.c:14

◆ ResyncFailed()

FCRET ResyncFailed ( VOID  )

Definition at line 82 of file fc.c.

83 {
85  return FCRET_DIFFERENT;
86 }
void ConResPuts(FILE *fp, UINT nID)
Definition: fc.c:27
#define StdOut
Definition: fc.c:14
#define IDS_RESYNC_FAILED
Definition: resource.h:13

Referenced by TextCompare().

◆ TextCompareA()

FCRET TextCompareA ( FILECOMPARE pFC,
HANDLE phMapping0,
const LARGE_INTEGER pcb0,
HANDLE phMapping1,
const LARGE_INTEGER pcb1 
)

Referenced by TextFileCompare().

◆ TextCompareW()

FCRET TextCompareW ( FILECOMPARE pFC,
HANDLE phMapping0,
const LARGE_INTEGER pcb0,
HANDLE phMapping1,
const LARGE_INTEGER pcb1 
)

Referenced by TextFileCompare().