/*--------------------------------------------------------------------*/
/* This file contains all the I/O low level function definition used */
/* by the Frame Library. */
/* (Code proposed by Roy Willams, Caltech) (Aug 09, 2002 version) */
/*--------------------------------------------------------------------*/
#ifdef FR_LONG_LONG /*----- to use 8 bytes long ----------------------*/
typedef long long FRLONG;
typedef unsigned long long FRULONG;
#define FRLLD "lld"
#else /*--------- default regular long---------------- ----*/
typedef long FRLONG;
typedef unsigned long FRULONG;
#define FRLLD "ld"
#endif
#if !defined(FRIO_DEFINED)
#define FRIO_DEFINED
#include <fcntl.h>
#ifdef FRRFIO /*---- this is for HPSS-------------------------*/
#include <shift.h>
#endif
#define FRIOBSIZE 2048 /*--- local buffer to speed up the read process ---*/
struct FrIO{
#ifdef FRIOCFILE
FILE *fp;
#else
int fd;
#endif
char buffer[FRIOBSIZE];
int position; /*---------- position in the local buffer,
if position = BSIZE when the buffer is empty */
};
typedef struct FrIO FrIO;
FrIO *FrIOOpenR(char* filename);
FrIO *FrIOOpenW(char* filename);
int FrIOClose (FrIO *frfd);
FRLONG FrIOWrite (FrIO *frfd, char* buf, FRLONG nbyte);
FRLONG FrIORead (FrIO *frfd, char* buf, FRLONG nbyte);
FRLONG FrIOSet (FrIO *frfd, FRLONG offset);
FRLONG FrIOSetFromEnd(FrIO *frfd, FRLONG offset);
FRLONG FrIOSetFromCur(FrIO *frfd, FRLONG offset);
FRLONG FrIOTell(struct FrIO *frfd);
#endif
- ROOT page - VEGA page - Class index - Top of the page This page has been automatically generated. If you have any comments or suggestions
about the page layout send a mail to
, or
contact
with any questions or problems regarding ROOT or VEGA.