libdap
Updated for version 3.21.1
libdap4 is an implementation of OPeNDAP's DAP protocol.
AlarmHandler.h
Go to the documentation of this file.
1
2
// -*- mode: c++; c-basic-offset:4 -*-
3
4
// This file is part of libdap, A C++ implementation of the OPeNDAP Data
5
// Access Protocol.
6
7
// Copyright (c) 2002,2003 OPeNDAP, Inc.
8
// Author: James Gallagher <jgallagher@opendap.org>
9
//
10
// This library is free software; you can redistribute it and/or
11
// modify it under the terms of the GNU Lesser General Public
12
// License as published by the Free Software Foundation; either
13
// version 2.1 of the License, or (at your option) any later version.
14
//
15
// This library is distributed in the hope that it will be useful,
16
// but WITHOUT ANY WARRANTY; without even the implied warranty of
17
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18
// Lesser General Public License for more details.
19
//
20
// You should have received a copy of the GNU Lesser General Public
21
// License along with this library; if not, write to the Free Software
22
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
23
//
24
// You can contact OPeNDAP, Inc. at PO Box 112, Saunderstown, RI. 02874-0112.
25
26
#ifndef alarm_handler_h
27
#define alarm_handler_h
28
29
#include <cstdio>
30
31
#include <string>
32
33
#include "
EventHandler.h
"
34
35
namespace
libdap
{
36
44
class
AlarmHandler
:
public
EventHandler
{
45
private
:
46
FILE *d_file;
// Sink for the Error object.
47
string
d_version;
48
49
public
:
50
// Ensure that d_stream gets initialized...
51
AlarmHandler
() : d_file(0) {}
52
53
explicit
AlarmHandler
(FILE *s)
54
: d_file(s)
//, d_stream( cout )
55
{}
56
60
explicit
AlarmHandler
(
ostream
&) : d_file(0) {}
61
62
virtual
~AlarmHandler
() {
63
if
(d_file)
64
fclose(d_file);
65
}
66
78
virtual
void
handle_signal
(
int
signum) {
79
if
(signum != SIGALRM)
80
throw
Error
(
"SIGALRM handler caught another signal!"
);
81
82
throw
Error
(
"Timeout"
);
83
}
84
};
85
86
}
// namespace libdap
87
88
#endif
EventHandler.h
libdap::AlarmHandler::AlarmHandler
AlarmHandler(ostream &)
Definition
AlarmHandler.h:60
libdap::AlarmHandler::AlarmHandler
AlarmHandler(FILE *s)
Definition
AlarmHandler.h:53
libdap::AlarmHandler::handle_signal
virtual void handle_signal(int signum)
Definition
AlarmHandler.h:78
libdap::AlarmHandler::AlarmHandler
AlarmHandler()
Definition
AlarmHandler.h:51
libdap::AlarmHandler::~AlarmHandler
virtual ~AlarmHandler()
Definition
AlarmHandler.h:62
libdap::Error
A class for error processing.
Definition
Error.h:92
libdap::EventHandler
Definition
EventHandler.h:41
ostream
STL class.
libdap
top level DAP object to house generic methods
Definition
AISConnect.cc:30
AlarmHandler.h
Generated by
1.13.2