source: trunk/MagicSoft/Mars/mraw/MRawCrateData.cc@ 5138

Last change on this file since 5138 was 4601, checked in by tbretz, 20 years ago
*** empty log message ***
File size: 2.4 KB
Line 
1/* ======================================================================== *\
2!
3! *
4! * This file is part of MARS, the MAGIC Analysis and Reconstruction
5! * Software. It is distributed to you in the hope that it can be a useful
6! * and timesaving tool in analysing Data of imaging Cerenkov telescopes.
7! * It is distributed WITHOUT ANY WARRANTY.
8! *
9! * Permission to use, copy, modify and distribute this software and its
10! * documentation for any purpose is hereby granted without fee,
11! * provided that the above copyright notice appear in all copies and
12! * that both that copyright notice and this permission notice appear
13! * in supporting documentation. It is provided "as is" without express
14! * or implied warranty.
15! *
16!
17!
18! Author(s): Thomas Bretz 12/2000 <mailto:tbretz@astro.uni-wuerzburg.de>
19!
20! Copyright: MAGIC Software Development, 2000-2004
21!
22!
23\* ======================================================================== */
24
25/////////////////////////////////////////////////////////////////////////////
26//
27// MRawCrateData
28//
29// This container stores the information about one crate. A list of this
30// informations can be find at MRawCrateArray
31//
32/////////////////////////////////////////////////////////////////////////////
33#include "MRawCrateData.h"
34
35#include <iostream>
36#include <iomanip>
37
38#include <fstream>
39
40#include "MLog.h"
41#include "MLogManip.h"
42
43ClassImp(MRawCrateData);
44
45using namespace std;
46
47MRawCrateData::MRawCrateData() : fDAQCrateNumber(0), fFADCEvtNumber(0), fFADCClockTick(0), fABFlags(0)
48{
49}
50
51// --------------------------------------------------------------------------
52//
53// read the information from a binary input stream about the CRATE DATA,
54// like specified in a TDAS note
55//
56void MRawCrateData::ReadEvt(istream& fin, UShort_t ver)
57{
58 fin.read((char*)&fDAQCrateNumber, 2);
59 fin.read((char*)&fFADCEvtNumber, 4);
60 fin.read((char*)&fFADCClockTick, 4);
61 if (ver>1)
62 fin.read((char*)&fABFlags, 1);
63}
64
65void MRawCrateData::SkipEvt(istream &fin, UShort_t ver)
66{
67 fin.seekg(ver>1?11:10);
68}
69
70// --------------------------------------------------------------------------
71//
72// print all stored information to gLog
73//
74void MRawCrateData::Print(Option_t *t) const
75{
76 *fLog << all;
77 *fLog << "Crate #" << dec << fDAQCrateNumber << ": ";
78 *fLog << "FADCEventNr = " << fFADCEvtNumber << " ";
79 *fLog << "FADCClockTick = " << fFADCClockTick << " (20MHz) ";
80 *fLog << "ABFlags = 0x" << Form("%02x", fABFlags) << endl;
81}
Note: See TracBrowser for help on using the repository browser.