This is Unofficial EPICS BASE Doxygen Site
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
repeaterSubscribeTimer.h
Go to the documentation of this file.
1
/*************************************************************************\
2
* Copyright (c) 2002 The University of Chicago, as Operator of Argonne
3
* National Laboratory.
4
* Copyright (c) 2002 The Regents of the University of California, as
5
* Operator of Los Alamos National Laboratory.
6
* EPICS BASE is distributed subject to a Software License Agreement found
7
* in file LICENSE that is included with this distribution.
8
\*************************************************************************/
9
10
/*
11
*
12
*
13
* L O S A L A M O S
14
* Los Alamos National Laboratory
15
* Los Alamos, New Mexico 87545
16
*
17
* Copyright, 1986, The Regents of the University of California.
18
*
19
*
20
* Author Jeffrey O. Hill
21
* johill@lanl.gov
22
* 505 665 1831
23
*/
24
25
#ifndef INC_repeaterSubscribeTimer_H
26
#define INC_repeaterSubscribeTimer_H
27
28
#include "
epicsTimer.h
"
29
30
#include "libCaAPI.h"
31
32
class
epicsMutex
;
33
class
cacContextNotify
;
34
35
class
repeaterTimerNotify
{
36
public
:
37
virtual
~repeaterTimerNotify
() = 0;
38
virtual
void
repeaterRegistrationMessage
(
39
unsigned
attemptNumber ) = 0;
40
virtual
int
printFormated
(
41
epicsGuard < epicsMutex >
& callbackControl,
42
const
char
* pformat, ... ) = 0;
43
};
44
45
class
repeaterSubscribeTimer
:
private
epicsTimerNotify {
46
public
:
47
repeaterSubscribeTimer
(
48
repeaterTimerNotify
&, epicsTimerQueue &,
49
epicsMutex
& cbMutex,
cacContextNotify
& ctxNotify );
50
virtual
~
repeaterSubscribeTimer
();
51
void
start ();
52
void
shutdown (
53
epicsGuard < epicsMutex >
& cbGuard,
54
epicsGuard < epicsMutex >
& guard );
55
void
confirmNotify ();
56
void
show (
unsigned
level )
const
;
57
private
:
58
epicsTimer &
timer
;
59
repeaterTimerNotify
& iiu;
60
epicsMutex
& cbMutex;
61
cacContextNotify
& ctxNotify;
62
mutable
epicsMutex
stateMutex;
63
unsigned
attempts;
64
bool
registered;
65
bool
once;
66
expireStatus expire (
const
epicsTime &
currentTime
);
67
repeaterSubscribeTimer
(
const
repeaterSubscribeTimer
& );
68
repeaterSubscribeTimer
& operator = (
const
repeaterSubscribeTimer
& );
69
};
70
71
#endif // ifdef INC_repeaterSubscribeTimer_H
epicsGuard< epicsMutex >
repeaterTimerNotify::~repeaterTimerNotify
virtual ~repeaterTimerNotify()=0
Definition:
repeaterSubscribeTimer.cpp:107
cacContextNotify
Definition:
cacIO.h:290
repeaterTimerNotify::repeaterRegistrationMessage
virtual void repeaterRegistrationMessage(unsigned attemptNumber)=0
epicsMutex
repeaterSubscribeTimer
Definition:
repeaterSubscribeTimer.h:45
repeaterTimerNotify
Definition:
repeaterSubscribeTimer.h:35
repeaterTimerNotify::printFormated
virtual int printFormated(epicsGuard< epicsMutex > &callbackControl, const char *pformat,...)=0
currentTime
Definition:
osdTime.cpp:67
timer
Definition:
timerPrivate.h:34
epicsTimer.h
modules
ca
src
client
repeaterSubscribeTimer.h
Generated by
1.8.11