| Bsoft 2.0.5 Bernard's software package

Functions | Variables
file_util.cpp File Reference

Library functions for file checking. More...

`#include "file_util.h"`
`#include "utilities.h"`
`#include <fstream>`

Go to the source code of this file.

## Functions
Bstring | test_access (Bstring filename)
string | test_access (string filename)
Bstring | find_file (Bstring filename, Bstring path, int flag)
| Searches for a file within or without the given path. More...
string | find_file (string filename, string path, int flag)
FileType | file_type (const char *filename)
| Checks the file type using the extension and contents. More...
FileType | file_type (Bstring &filename)
int | fread_large (unsigned char *aptr, size_t pagesize, size_t offset, ifstream *fimg)
| Reads blocks of memeory no larger than 1Gb. More...
int | detect_and_fix_carriage_return (const char *filename)
| Detects carriage returns in text files and converts them to new-lines. More...

## Variables
int | verbose

## Detailed Description

Library functions for file checking.

Author
  Bernard Heymann

Date
  Created: 20070101
  Modified: 20180330

Definition in file file_util.cpp.

## Function Documentation

## ◆ detect_and_fix_carriage_return()

int detect_and_fix_carriage_return | ( | const char * | filename | ) |

Detects carriage returns in text files and converts them to new-lines.

Parameters

  *filename | file name.

Returns
  int 0, <0 if error.

      The first line is read and if any carriage returns are found, the whole
      file is scanned and carriage returns converted to new-lines.

Definition at line 377 of file file_util.cpp.

## ◆ file_type() [1/2]

FileType file_type | ( | const char * | filename | ) |

Checks the file type using the extension and contents.

Parameters

  *filename | file name.

Returns
  FileType enumerated file type.

      The file extension is the main determinant of the file type.
      File formats with multiple types (such as the STAR and PDB formats)
      are distinguished based on content.

Definition at line 178 of file file_util.cpp.

## ◆ file_type() [2/2]

FileType file_type | ( | Bstring & | filename | ) |

Definition at line 184 of file file_util.cpp.

## ◆ find_file() [1/2]

Bstring find_file | ( | Bstring | filename,
|  | Bstring | path,
|  | int | flag
| ) |  |

Searches for a file within or without the given path.

Parameters

  filename | file name to search for.
  path | path to search in.
  flag | if not found: bit 1 = warn; bit 2 = delete file name.

Returns
  Bstring found file, empty if not found and delete_flag set.

      The input filename is first tested for access.
      If not found, the filename without its original path is tested.
      If not found, the filename with the given path is tested.
      If not found, an error is reported and the original filename returned
      unless the delete flag is set.

Definition at line 54 of file file_util.cpp.

## ◆ find_file() [2/2]

string find_file | ( | string | filename,
|  | string | path,
|  | int | flag
| ) |  |

Definition at line 111 of file file_util.cpp.

## ◆ fread_large()

int fread_large | ( | unsigned char * | aptr,
|  | size_t | pagesize,
|  | size_t | offset,
|  | ifstream * | fimg
| ) |  |

Reads blocks of memeory no larger than 1Gb.

Parameters

  *aptr | pointer to pre-allocated memory.
  pagesize | size of pre-allocated memory.
  offset | offset in file.
  *fimg | file pointer.

Returns
  int 0, <0 if error.

      Each block is packed in sequence into the pre-allocated memory provided.

Definition at line 347 of file file_util.cpp.

## ◆ test_access() [1/2]

Bstring test_access | ( | Bstring | filename | ) |

Definition at line 16 of file file_util.cpp.

## ◆ test_access() [2/2]

string test_access | ( | string | filename | ) |

Definition at line 28 of file file_util.cpp.

## Variable Documentation

## ◆ verbose

int verbose