1 /* 2 ** Copyright 2012-2013,2019 Centreon 3 ** 4 ** Licensed under the Apache License, Version 2.0 (the "License"); 5 ** you may not use this file except in compliance with the License. 6 ** You may obtain a copy of the License at 7 ** 8 ** http://www.apache.org/licenses/LICENSE-2.0 9 ** 10 ** Unless required by applicable law or agreed to in writing, software 11 ** distributed under the License is distributed on an "AS IS" BASIS, 12 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 ** See the License for the specific language governing permissions and 14 ** limitations under the License. 15 ** 16 ** For more information : contact@centreon.com 17 */ 18 19 #ifndef CC_PROCESS_LISTENER_HH 20 #define CC_PROCESS_LISTENER_HH 21 22 #include "com/centreon/namespace.hh" 23 #include "com/centreon/process.hh" 24 25 CC_BEGIN() 26 27 /** 28 * @class process process_listener.hh "com/centreon/process_listener.hh" 29 * @brief Notify process events. 30 * 31 * This class provide interface to notify process events. 32 */ 33 class process_listener { 34 public: ~process_listener()35 virtual ~process_listener() noexcept {} 36 virtual void data_is_available(process& p) noexcept = 0; 37 virtual void data_is_available_err(process& p) noexcept = 0; 38 virtual void finished(process& p) noexcept = 0; 39 }; 40 41 CC_END() 42 43 #endif // !CC_PROCESS_LISTENER_HH 44