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

Annotation of /yoda/event/Exception.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3.0 - (hide annotations) (download)
Fri Mar 4 15:54:11 2005 UTC (19 years, 9 months ago) by kusanagi
Branch: MAIN
Changes since 2.3: +1 -1 lines
File MIME type: text/plain
Error proof version.
Implemented all detectors packets plus all the main telemetries packets.
Missing all the Init and Alarm packets.
Disabled CRC control on VarDump, ArrDump, TabDump for CPU debugging needs
(the data formats seems correct even if CRC get wrong)

1 kusanagi 1.1 /** @file
2 kusanagi 2.0 * $Source: /home/cvsmanager/yoda/event/Exception.h,v $
3 kusanagi 3.0 * $Id: Exception.h,v 2.3 2005/02/15 17:53:35 kusanagi Exp $
4 kusanagi 2.0 * $Author: kusanagi $
5 kusanagi 1.1 *
6     * Header file for the exceptions of Pamela.
7     */
8 kusanagi 2.1 #ifndef EXCEPTION_H
9     #define EXCEPTION_H
10 kusanagi 1.1 #include <exception>
11 kusanagi 2.1 #include <stdio.h>
12     #include "SubPacket.h"
13 kusanagi 1.1
14 kusanagi 2.1 using namespace std;
15 kusanagi 1.1 namespace pamela {
16 kusanagi 2.1
17     class Exception: public exception {
18    
19 kusanagi 1.1 private:
20 kusanagi 2.1
21     protected:
22     const char *message;
23     char buff [100];
24 kusanagi 1.1 public:
25 kusanagi 2.1 Exception(const char *msg = "message"): message(msg){ }
26 kusanagi 1.1 virtual ~Exception () throw(){ }
27 kusanagi 2.1 virtual const char* print () const throw () { return message; }
28     };
29    
30 kusanagi 2.3 class NotFoundEnvironmentVarException: public Exception {
31     public:
32     NotFoundEnvironmentVarException::NotFoundEnvironmentVarException(const char* msg): Exception(msg) {}
33     NotFoundEnvironmentVarException::~NotFoundEnvironmentVarException () throw(){ }
34     };
35    
36 kusanagi 2.1 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 kusanagi 2.2 WrongCRCException::WrongCRCException(const char* msg): Exception(msg) {}
54 kusanagi 2.1 WrongCRCException::~WrongCRCException () throw(){ }
55     };
56    
57     class WrongCRCHeaderException: public Exception {
58     public:
59 kusanagi 2.2 WrongCRCHeaderException::WrongCRCHeaderException(const char* msg): Exception(msg) {}
60 kusanagi 2.1 WrongCRCHeaderException::~WrongCRCHeaderException () throw(){ }
61 kusanagi 1.1 };
62 kusanagi 2.1
63    
64     class LengthException: public Exception {
65     public:
66 kusanagi 2.2 LengthException::LengthException(const char* msg): Exception(msg) { }
67 kusanagi 2.1 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 kusanagi 1.1 }
84 kusanagi 2.1 #endif /* EXCEPTION_H */

  ViewVC Help
Powered by ViewVC 1.1.23