00001 #ifndef _BULKDATA_RECEIVER_IDL_ 00002 #define _BULKDATA_RECEIVER_IDL_ 00003 00004 /******************************************************************************* 00005 * ALMA - Atacama Large Millimiter Array 00006 * 00007 * (c) European Southern Observatory, 2002 00008 * Copyright by ESO (in the framework of the ALMA collaboration) 00009 * and Cosylab 2002, All rights reserved 00010 * 00011 * This library is free software; you can redistribute it and/or 00012 * modify it under the terms of the GNU Lesser General Public 00013 * License as published by the Free Software Foundation; either 00014 * version 2.1 of the License, or (at your option) any later version. 00015 * 00016 * This library is distributed in the hope that it will be useful, 00017 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00018 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00019 * Lesser General Public License for more details. 00020 * 00021 * You should have received a copy of the GNU Lesser General Public 00022 * License along with this library; if not, write to the Free Software 00023 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00024 * 00025 * 00026 * "@(#)" 00027 * 00028 * who when what 00029 * -------- -------- ---------------------------------------------- 00030 * oat 27/01/05 created 00031 */ 00032 00033 #include <baci.idl> 00034 #include "ACSBulkDataError.idl" 00035 #include "ACSBulkDataStatus.idl" 00036 #include <AVStreams.idl> 00037 #include <bulkData.idl> 00038 00039 #pragma prefix "alma" 00040 00045 module bulkdata 00046 { 00047 00051 interface BulkDataReceiver : ACS::CharacteristicComponent 00052 { 00053 00064 void openReceiver() 00065 raises (ACSBulkDataError::AVOpenReceiverErrorEx); 00066 00067 void openReceiverStream(in string stream_name) 00068 raises (ACSBulkDataError::AVOpenReceiverErrorEx); 00069 00070 00073 BulkDataReceiverConfig getReceiverConfig() 00074 raises (ACSBulkDataError::AVReceiverConfigErrorEx); 00075 00083 void closeReceiver() 00084 raises (ACSBulkDataError::AVCloseReceiverErrorEx); 00085 00086 void closeReceiverStream(in string stream_name) 00087 raises (ACSBulkDataError::AVCloseReceiverErrorEx); 00088 00096 ACSErr::Completion getCbStatus(in unsigned long flowNumber) 00097 raises (ACSBulkDataError::AVInvalidFlowNumberEx, ACSBulkDataError::AVFlowEndpointErrorEx); 00098 00106 void setTimeout(in unsigned long flowNumber, in unsigned long timeout) 00107 raises (ACSBulkDataError::AVInvalidFlowNumberEx, ACSBulkDataError::AVFlowEndpointErrorEx); 00108 00117 void setRecvName(in string recvName) 00118 raises (ACSBulkDataError::AVSetReceiverNameErrorEx); 00119 00128 void subscribeNotification(in ACS::CBvoid notifCb) 00129 raises (ACSBulkDataError::AVNotificationMechanismErrorEx); 00130 00144 void fwdData2UserCB(in boolean enable); 00145 00146 }; 00147 00151 interface BulkDataReceiverDistr : BulkDataReceiver 00152 { 00153 00163 void setReceiver(in BulkDataReceiverConfig receiverConfig) 00164 raises (ACSBulkDataError::AVSetReceiverErrorEx); 00165 }; 00166 00167 }; 00168 00169 #endif