test
Embed:
(wiki syntax)
Show/hide line numbers
FrameHandler.h
00001 /** 00002 * Copyright (c) 2015 Digi International Inc., 00003 * All rights not expressly granted are reserved. 00004 * 00005 * This Source Code Form is subject to the terms of the Mozilla Public 00006 * License, v. 2.0. If a copy of the MPL was not distributed with this file, 00007 * You can obtain one at http://mozilla.org/MPL/2.0/. 00008 * 00009 * Digi International Inc. 11001 Bren Road East, Minnetonka, MN 55343 00010 * ======================================================================= 00011 */ 00012 00013 #if !defined(__FRAME_HANDLER_H_) 00014 #define __FRAME_HANDLER_H_ 00015 00016 #include "Frames/ApiFrame.h" 00017 00018 /** Class for the frame handlers */ 00019 class FrameHandler 00020 { 00021 friend class ApiFrame; 00022 00023 public: 00024 /** Class constructor 00025 * 00026 * @param type frame type handled by this frame handler 00027 */ 00028 FrameHandler(ApiFrame::ApiFrameType type); 00029 00030 FrameHandler(const FrameHandler& other); /* Intentionally not implemented */ 00031 /** Class destructor */ 00032 virtual ~FrameHandler(); 00033 00034 /** get_type returns the type of frames handled by this handler 00035 * 00036 * @returns the frame type handled by the handler 00037 */ 00038 ApiFrame::ApiFrameType get_type() const; 00039 00040 /** process_frame_data method called by the library to process the 00041 * the incoming frames if the type matches. 00042 * 00043 * @param frame pointer pointing to the api frame that must be processed 00044 */ 00045 virtual void process_frame_data(const ApiFrame *const frame) = 0; 00046 00047 protected: 00048 /** frame type handled by this handler */ 00049 ApiFrame::ApiFrameType _type; 00050 }; 00051 00052 #endif /* defined(__FRAME_HANDLER_H_) */
Generated on Tue Nov 1 2022 06:41:58 by 1.7.2