diff --git a/src/libCom/misc/ipAddrToAsciiAsynchronous.h b/src/libCom/misc/ipAddrToAsciiAsynchronous.h index f6118306f..88c012011 100644 --- a/src/libCom/misc/ipAddrToAsciiAsynchronous.h +++ b/src/libCom/misc/ipAddrToAsciiAsynchronous.h @@ -18,8 +18,9 @@ #define ipAddrToAsciiAsynchronous_h #include "epicsMutex.h" -#include "osiSock.h" +#include "epicsEvent.h" #include "tsDLList.h" +#include "osiSock.h" #include "shareLib.h" class ipAddrToAsciiAsynchronous; diff --git a/src/libCom/osi/epicsEvent.h b/src/libCom/osi/epicsEvent.h index f8c2199dc..7a81f6ab1 100644 --- a/src/libCom/osi/epicsEvent.h +++ b/src/libCom/osi/epicsEvent.h @@ -27,6 +27,8 @@ public: class invalidSemaphore {}; /* exception */ class noMemory {}; /* exception */ private: + epicsEvent ( const osiEvent & ); + epicsEvent & operator = ( const osiEvent & ); epicsEventId id; }; #endif /*__cplusplus */ @@ -59,10 +61,10 @@ epicsShareFunc void epicsShareAPI epicsEventShow( /*The c++ implementation consists of inline calls to the c code */ #ifdef __cplusplus -inline epicsEvent::epicsEvent (epicsEventInitialState initial) +inline epicsEvent::epicsEvent (epicsEventInitialState initial) : + id ( epicsEventCreate ( initial ) ) { - this->id = epicsEventCreate (initial); - if (this->id==0) { + if ( this->id == 0 ) { throwWithLocation ( noMemory () ); } } diff --git a/src/libCom/osi/epicsMutex.h b/src/libCom/osi/epicsMutex.h index 731559c10..07e2a045c 100644 --- a/src/libCom/osi/epicsMutex.h +++ b/src/libCom/osi/epicsMutex.h @@ -66,13 +66,15 @@ public: epicsAutoMutex ( epicsMutex & ); ~epicsAutoMutex (); private: + epicsMutex ( const epicsMutex & ); + epicsMutex & operator = ( const epicsMutex & ); epicsMutex &mutex; }; inline epicsMutex::epicsMutex () + id ( epicsMutexCreate () ) { - this->id = epicsMutexCreate (); - if (this->id==0) { + if ( this->id == 0 ) { throwWithLocation ( noMemory () ); } } diff --git a/src/libCom/timer/osiTimer.h b/src/libCom/timer/osiTimer.h index 545eedd76..c7daee0e9 100644 --- a/src/libCom/timer/osiTimer.h +++ b/src/libCom/timer/osiTimer.h @@ -39,7 +39,7 @@ #include "osiTime.h" #include "tsDLList.h" -#include "osiMutex.h" +#include "epicsMutex.h" #include "epicsEvent.h" class osiTimerQueue; @@ -189,7 +189,7 @@ public: epicsShareFunc void process (); epicsShareFunc void show (unsigned level) const; private: - osiMutex mutex; + epicsMutex mutex; epicsEvent rescheduleEvent; epicsEvent exitEvent; tsDLList timerLists [osiTimer::numberOfTimerLists];