~maddevelopers/mg5amcnlo/2.9.4

« back to all changes in this revision

Viewing changes to vendor/StdHEP/mcfio/src/mcfio.hh

pass to v2.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*******************************************************************************
 
2
*                                                                              *
 
3
* mcfio.h --  Include file for mcfast I/O subsystem, C interface.              *
 
4
*                                                                              *
 
5
* Copyright (c) 1994 Universities Research Association, Inc.                   *
 
6
* All rights reserved.                                                         *
 
7
*                                                                              *
 
8
*******************************************************************************/
 
9
/*
 
10
**      This file is a summary of various other .h files, assembled for 
 
11
**      the ease of use of the yet undocumented C API for MCFIO. 
 
12
**      Please refer to detailed documentation from the the F77 API.
 
13
**
 
14
**      Rule : mcfio_*   ==> F77 API
 
15
**             mcfioC_*  ==> C API
 
16
*/
 
17
#define MCFIO_VERSION 100
 
18
#define MCFIO_STATUS 101
 
19
#define MCFIO_RUNNING 102
 
20
#define MCFIO_BOF 103
 
21
#define MCFIO_EOF 104
 
22
#define MCFIO_NUMBLOCKS 501
 
23
#define MCFIO_READORWRITE 502
 
24
#define MCFIO_READ 1
 
25
#define MCFIO_WRITE 2
 
26
#define MCFIO_DIRECTORSEQUENTIAL 503
 
27
#define MCFIO_DIRECT 1
 
28
#define MCFIO_SEQUENTIAL 2
 
29
#define MCFIO_MEMMAPPED 3
 
30
#define MCFIO_BLOCKIDS 504
 
31
#define MCFIO_NUMWORDS 505
 
32
#define MCFIO_EFFICIENCY 506
 
33
#define MCFIO_NUMEVTS 507
 
34
#define MCFIO_FILENUMBER 508
 
35
#define MCFIO_MAXREC 509
 
36
#define MCFIO_MINREC 510
 
37
#define MCFIO_NUMRECORDS 511
 
38
#define MCFIO_RECORDLENGTHS 512
 
39
#define MCFIO_TITLE 1001
 
40
#define MCFIO_COMMENT 1002
 
41
#define MCFIO_CREATIONDATE 1003
 
42
#define MCFIO_CLOSINGDATE 1013
 
43
#define MCFIO_FILENAME 1004
 
44
#define MCFIO_DEVICENAME 1005
 
45
#define MCFIO_EVENTNUMBER 2001
 
46
#define MCFIO_STORENUMBER 2002
 
47
#define MCFIO_RUNNUMBER 2003
 
48
#define MCFIO_TRIGGERMASK 2004
 
49
#define MCFIO_NUMNTUPLES 4001
 
50
#define MCFIO_NTUPLESLIST 4002
 
51
/*
 
52
** Block definition now. Start counting at 101 See also mcfioC_GetBlockNames
 
53
*/
 
54
#define MCFIO_STDHEP 101
 
55
#define MCFIO_OFFTRACKARRAYS 102
 
56
#define MCFIO_OFFTRACKSTRUCT 103
 
57
#define MCFIO_TRACEARRAYS    104
 
58
#define MCFIO_STDHEPM 105
 
59
#define MCFIO_STDHEPBEG 106
 
60
#define MCFIO_STDHEPEND 107
 
61
#define MCFIO_STDHEPCXX 108
 
62
#define MCFIO_STDHEP4 201
 
63
#define MCFIO_STDHEP4M 202
 
64
#define MCFIO_HEPEUP 203
 
65
#define MCFIO_HEPRUP 204
 
66
 
 
67
extern "C" void mcfioC_Init(void);
 
68
extern "C" void mcfioC_Close(int istream);
 
69
extern "C" void mcfioC_PrintDictionary(void);
 
70
extern "C" unsigned int mcfioC_InfoNumSream(int *istreams, unsigned int nmax);
 
71
extern "C" void mcfioC_InfoStreamInt(int istream, int key, int *value);
 
72
extern "C" void mcfioC_InfoStreamChar(int istream, int key, char *answer, int *lret);
 
73
extern "C" void mcfioC_InfoEventInt(int istream, int key, int *value);
 
74
extern "C" void mcfioC_InfoEventChar(int istream, int key, char *answer, int *lret);
 
75
extern "C" void mcfioC_SetEventInfo(int istream, int key, int *value);
 
76
extern "C" void mcfioC_InfoBlockChar(int stream, int blk, int key,
 
77
                            char *answer, int *lret);
 
78
extern "C" void mcfioC_GetBlockName(int blkId, char *answer);
 
79
extern "C" int mcfioC_OpenReadSequential(char *device, char *label, int filenumber);
 
80
extern "C" int mcfioC_OpenWriteSequential(char *device, char *label, char *title, 
 
81
               char *comment, int numevts_pred, 
 
82
                int *blkIds, unsigned int nBlocks);
 
83
extern "C" int mcfioC_OpenReadDirect(char *filename);
 
84
extern "C" int mcfioC_OpenReadMapped(char *filename);
 
85
extern "C" int mcfioC_OpenWriteDirect(char *filename, char *title, char *comment, 
 
86
                           int numevts_pred, int *blkIds, u_int nBlocks);
 
87
extern "C" int mcfioC_NextEvent(int stream);
 
88
extern "C" int mcfioC_SpecificEvent(int stream, int ievt,
 
89
                             int istore, int irun, int itrig);
 
90
extern "C" int mcfioC_NextSpecificEvent(int stream, int ievt,
 
91
                             int istore, int irun, int itrig);
 
92
extern "C" void mcfioC_CloseDirect(int jstr);
 
93
extern "C" void mcfioC_RewindDirect(int jstr);
 
94
extern "C" int mcfioC_Block(int stream, int blkid, 
 
95
  bool_t xdr_filtercode(XDR *xdrs, int *blockid, int *ntot, char **version));
 
96
extern "C" int mcfioC_NTuple(int stream, int nTupleid, char * version); 
 
97
extern "C" int mcfioC_NTupleMult(int stream, int nTupleid, char * version);
 
98
extern "C" int mcfioC_NTupleVar(int stream, int nTupleid, int ivar, char * version);
 
99
extern "C" int mcfioC_NTupleSubVar(int stream, int nTupleid, int ivar, int multIndex,
 
100
                           char * version);
 
101
extern "C" int mcfioC_NTupleSubStruct(int stream, int nTupleid, int multIndex,
 
102
                           char * version);
 
103
extern "C" void mcfioC_DefineUserBlock(int blkNum, char *descr); 
 
104
extern "C" char *mcfioC_UserBlockDescript(int blkn); 
 
105
 
 
106