/[PAMELA software]/yoda/event/Exception.h
ViewVC logotype

Contents of /yoda/event/Exception.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 4.4 - (show annotations) (download)
Sat May 28 10:44:09 2005 UTC (19 years, 6 months ago) by kusanagi
Branch: MAIN
Changes since 4.0: +1 -1 lines
File MIME type: text/plain
Main features of this release are:
- updated classes documentations;
- major changes on the calibration fortran routine for the calorimeter
- update on the TMTC thermistors
- removed old classes as CalibTrkBoth and CalibTrd

1 /** @file
2 * $Source: /home/cvsmanager/yoda/event/Exception.h,v $
3 * $Id: Exception.h,v 4.0 2005/03/06 04:33:01 kusanagi Exp $
4 * $Author: kusanagi $
5 *
6 * Header file for the exceptions of Pamela.
7 */
8 #ifndef EXCEPTION_H
9 #define EXCEPTION_H
10 #include <exception>
11 #include <stdio.h>
12 #include "SubPacket.h"
13
14 using namespace std;
15 namespace pamela {
16
17 class Exception: public exception {
18
19 private:
20
21 protected:
22 const char *message;
23 char buff [100];
24 public:
25 Exception(const char *msg = "message"): message(msg){ }
26 virtual ~Exception () throw(){ }
27 virtual const char* print () const throw () { return message; }
28 };
29
30 class NotFoundEnvironmentVarException: public Exception {
31 public:
32 NotFoundEnvironmentVarException::NotFoundEnvironmentVarException(const char* msg): Exception(msg) {}
33 NotFoundEnvironmentVarException::~NotFoundEnvironmentVarException () throw(){ }
34 };
35
36 class UnidentifiedPacketException: public Exception {
37 private:
38 UINT8 pktId;
39 public:
40 UnidentifiedPacketException::UnidentifiedPacketException(UINT8 id):
41 Exception("Unidentified PacketType - Id: ") {
42 pktId = id;
43 }
44 UnidentifiedPacketException::~UnidentifiedPacketException () throw(){ }
45 const char* UnidentifiedPacketException::print () const throw () {
46 sprintf((char*)buff," %s 0x%x", message, pktId);
47 return buff;
48 }
49 };
50
51 class WrongCRCException: public Exception {
52 public:
53 WrongCRCException::WrongCRCException(const char* msg): Exception(msg) {}
54 WrongCRCException::~WrongCRCException () throw(){ }
55 };
56
57 class WrongCRCHeaderException: public Exception {
58 public:
59 WrongCRCHeaderException::WrongCRCHeaderException(const char* msg): Exception(msg) {}
60 WrongCRCHeaderException::~WrongCRCHeaderException () throw(){ }
61 };
62
63
64 class LengthException: public Exception {
65 public:
66 LengthException::LengthException(const char* msg): Exception(msg) { }
67 LengthException::~LengthException () throw(){ }
68 };
69
70
71 class NotExistingAlgorithmException: public Exception {
72 public:
73 NotExistingAlgorithmException::NotExistingAlgorithmException(const char *msg): Exception(msg) { }
74 NotExistingAlgorithmException::~NotExistingAlgorithmException () throw(){ }
75 };
76
77 class NotExistingCounterException: public Exception {
78 public:
79 NotExistingCounterException::NotExistingCounterException(const char *msg): Exception(msg) { }
80 NotExistingCounterException::~NotExistingCounterException () throw(){ }
81 };
82
83 }
84 #endif /* EXCEPTION_H */

  ViewVC Help
Powered by ViewVC 1.1.23