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

Contents of /yoda/event/Exception.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2.2 - (show annotations) (download)
Tue Jan 11 14:58:20 2005 UTC (19 years, 10 months ago) by kusanagi
Branch: MAIN
Changes since 2.1: +4 -19 lines
File MIME type: text/plain
Added a static Print(const char*) to PscuHeader for WrongCRCHeaderException

1 /** @file
2 * $Source: /home/cvsmanager/yoda/event/Exception.h,v $
3 * $Id: Exception.h,v 2.1 2004/12/03 22:04:04 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 UnidentifiedPacketException: public Exception {
31 private:
32 UINT8 pktId;
33 public:
34 UnidentifiedPacketException::UnidentifiedPacketException(UINT8 id):
35 Exception("Unidentified PacketType - Id: ") {
36 pktId = id;
37 }
38 UnidentifiedPacketException::~UnidentifiedPacketException () throw(){ }
39 const char* UnidentifiedPacketException::print () const throw () {
40 sprintf((char*)buff," %s 0x%x", message, pktId);
41 return buff;
42 }
43 };
44
45 class WrongCRCException: public Exception {
46 public:
47 WrongCRCException::WrongCRCException(const char* msg): Exception(msg) {}
48 WrongCRCException::~WrongCRCException () throw(){ }
49 };
50
51 class WrongCRCHeaderException: public Exception {
52 public:
53 WrongCRCHeaderException::WrongCRCHeaderException(const char* msg): Exception(msg) {}
54 WrongCRCHeaderException::~WrongCRCHeaderException () throw(){ }
55 };
56
57
58 class LengthException: public Exception {
59 public:
60 LengthException::LengthException(const char* msg): Exception(msg) { }
61 LengthException::~LengthException () throw(){ }
62 };
63
64
65 class NotExistingAlgorithmException: public Exception {
66 public:
67 NotExistingAlgorithmException::NotExistingAlgorithmException(const char *msg): Exception(msg) { }
68 NotExistingAlgorithmException::~NotExistingAlgorithmException () throw(){ }
69 };
70
71 class NotExistingCounterException: public Exception {
72 public:
73 NotExistingCounterException::NotExistingCounterException(const char *msg): Exception(msg) { }
74 NotExistingCounterException::~NotExistingCounterException () throw(){ }
75 };
76
77 }
78 #endif /* EXCEPTION_H */

  ViewVC Help
Powered by ViewVC 1.1.23