#ifndef _SEMAPHORE_H_INCLUDED_
#define _SEMAPHORE_H_INCLUDED_
///////////////////////////////////////////////////////////////////////////////
//                                                         
// Semaphore.h
// ------------
// semaphore memory class definition
//                                                         
// Design and Implementation by Bjoern Lemke               
//
// (C)opyright 2000-2016 Bjoern Lemke                        
//
// INTERFACE MODULE
//
// Class: Semaphore
// 
// Description: All operations on system semaphore resources
//
// Status: CLEAN
//
///////////////////////////////////////////////////////////////////////////////

// INCLUDES

class Semaphore {

public:

     Semaphore(int key);
     ~Semaphore();

     void init();
     void destroy();

     int getValue();

     void P();
     void V();
     
private:     

     int _id;

};
#endif
