• Classes
  • Modules
  • Namespaces
  • Files
  • Related Pages
  • File List
  • File Members

maciBlockingComponentListener.h

Go to the documentation of this file.
00001 #ifndef maciBlockingComponentListener_h
00002 #define maciBlockingComponentListener_h
00003 /*******************************************************************************
00004  *    ALMA - Atacama Large Millimiter Array
00005  *    (c) European Southern Observatory, 2002
00006  *    Copyright by ESO (in the framework of the ALMA collaboration)
00007  *    and Cosylab 2002, All rights reserved
00008  *
00009  *    This library is free software; you can redistribute it and/or
00010  *    modify it under the terms of the GNU Lesser General Public
00011  *    License as published by the Free Software Foundation; either
00012  *    version 2.1 of the License, or (at your option) any later version.
00013  *
00014  *    This library is distributed in the hope that it will be useful,
00015  *    but WITHOUT ANY WARRANTY; without even the implied warranty of
00016  *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00017  *    Lesser General Public License for more details.
00018  *
00019  *    You should have received a copy of the GNU Lesser General Public
00020  *    License along with this library; if not, write to the Free Software
00021  *    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA
00022  *
00023  *
00024  * "@(#) $Id: maciBlockingComponentListener.h,v 1.1 2007/09/03 06:07:12 cparedes Exp $"
00025  *
00026  * who       when      what
00027  * --------  --------  ----------------------------------------------
00028  * acaproni  2005-04-06  created
00029  */
00030 
00031 #ifndef __cplusplus
00032 #error This is a C++ include file and cannot be used from plain C
00033 #endif
00034 
00035 #include "acsComponentListener.h"
00036 
00037 namespace maci {
00038    
00039    class BlockingComponentListener : public ComponentListener { 
00040     public:
00041         BlockingComponentListener();
00042         ~BlockingComponentListener();
00043         ACE_CString_Vector getAllCompsAvailable();
00044         ACE_CString_Vector getAllCompsUnavailable();
00045             
00046         void componentsUnavailable(ACE_CString_Vector& compNames);
00047         void componentsAvailable(ACE_CString_Vector& compNames);
00048         bool awaitNotifications(int milisec);
00049         bool notificationArrived; 
00050         ACE_CString_Vector allCompsAvailable;
00051         ACE_CString_Vector allCompsUnavailable;
00052         void clearAndExpect(int nCalls);
00053    };
00054    
00055 }; // namespace maci
00056 
00057 #endif // maciBlockingComponentListener_h

Generated on Thu Jan 12 2012 23:13:51 for ACS-10.0 C++ API by  doxygen 1.7.0