You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					88 lines
				
				2.2 KiB
			
		
		
			
		
	
	
					88 lines
				
				2.2 KiB
			| 
								 
											6 years ago
										 
									 | 
							
								//=============================================================================
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								//  Copyright (c) 2015 Qualcomm Technologies, Inc.
							 | 
						||
| 
								 | 
							
								//  All Rights Reserved.
							 | 
						||
| 
								 | 
							
								//  Confidential and Proprietary - Qualcomm Technologies, Inc.
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								//=============================================================================
							 | 
						||
| 
								 | 
							
								#ifndef __IDIAGLOG_HPP_
							 | 
						||
| 
								 | 
							
								#define __IDIAGLOG_HPP_
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#ifndef ZDL_LOGGING_EXPORT
							 | 
						||
| 
								 | 
							
								#define ZDL_LOGGING_EXPORT __attribute__((visibility("default")))
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#include <string>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#include "DiagLog/Options.hpp"
							 | 
						||
| 
								 | 
							
								#include "DlSystem/String.hpp"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								namespace zdl
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								namespace DiagLog
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/** @addtogroup c_plus_plus_apis C++
							 | 
						||
| 
								 | 
							
								@{ */
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/// @brief .
							 | 
						||
| 
								 | 
							
								/// 
							 | 
						||
| 
								 | 
							
								/// Interface for controlling logging for zdl components.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								class ZDL_LOGGING_EXPORT IDiagLog
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								public:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								   /// @brief .
							 | 
						||
| 
								 | 
							
								   ///
							 | 
						||
| 
								 | 
							
								   /// Sets the options after initialization occurs.
							 | 
						||
| 
								 | 
							
								   ///
							 | 
						||
| 
								 | 
							
								   /// @param[in] loggingOptions The options to set up diagnostic logging.
							 | 
						||
| 
								 | 
							
								   ///
							 | 
						||
| 
								 | 
							
								   /// @return False if the options could not be set. Ensure logging is not started.
							 | 
						||
| 
								 | 
							
								   virtual bool setOptions(const Options& loggingOptions) = 0;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								   /// @brief .
							 | 
						||
| 
								 | 
							
								   ///
							 | 
						||
| 
								 | 
							
								   /// Gets the curent options for the diag logger.
							 | 
						||
| 
								 | 
							
								   ///
							 | 
						||
| 
								 | 
							
								   /// @return Diag log options object.
							 | 
						||
| 
								 | 
							
								   virtual Options getOptions() = 0;
							 | 
						||
| 
								 | 
							
								   
							 | 
						||
| 
								 | 
							
								   /// @brief .
							 | 
						||
| 
								 | 
							
								   ///
							 | 
						||
| 
								 | 
							
								   /// Allows for setting the log mask once diag logging has started
							 | 
						||
| 
								 | 
							
								   ///
							 | 
						||
| 
								 | 
							
								   /// @return True if the level was set successfully, false if a failure occurred.
							 | 
						||
| 
								 | 
							
								   virtual bool setDiagLogMask(const std::string& mask) = 0;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								   /// @brief .
							 | 
						||
| 
								 | 
							
								   ///
							 | 
						||
| 
								 | 
							
								   /// Allows for setting the log mask once diag logging has started
							 | 
						||
| 
								 | 
							
								   ///
							 | 
						||
| 
								 | 
							
								   /// @return True if the level was set successfully, false if a failure occurred.
							 | 
						||
| 
								 | 
							
								   virtual bool setDiagLogMask(const zdl::DlSystem::String& mask) = 0;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								   /// @brief .
							 | 
						||
| 
								 | 
							
								   ///
							 | 
						||
| 
								 | 
							
								   /// Enables logging for zdl components.
							 | 
						||
| 
								 | 
							
								   ///
							 | 
						||
| 
								 | 
							
								   /// Logging should be started prior to the instantiation of zdl components
							 | 
						||
| 
								 | 
							
								   /// to ensure all events are captured.
							 | 
						||
| 
								 | 
							
								   ///
							 | 
						||
| 
								 | 
							
								   /// @return False if diagnostic logging could not be started.
							 | 
						||
| 
								 | 
							
								   virtual bool start(void) = 0;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								   /// @brief Disables logging for zdl components.
							 | 
						||
| 
								 | 
							
								   virtual bool stop(void) = 0;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								   virtual ~IDiagLog() {};
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								} // DiagLog namespace
							 | 
						||
| 
								 | 
							
								} // zdl namespace
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/** @} */ /* end_addtogroup c_plus_plus_apis C++ */
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#endif
							 |