2 * @copyright Copyright (c) 2016-2020 TOYOTA MOTOR CORPORATION.
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
17 ///////////////////////////////////////////////////////////////////////////////
18 /// \ingroup tag_NSFramework
19 /// \brief This file provides framework's API which are used by system services.
20 ///////////////////////////////////////////////////////////////////////////////
23 * @file frameworkunified_framework_error.hpp
24 * @brief \~english This file provides framework's API which are used by system services.
27 /** @addtogroup BaseSystem
30 /** @addtogroup native_service
34 /** @addtogroup framework_unified
35 * @ingroup native_service
38 /** @addtogroup framework
39 * @ingroup native_service
42 #ifndef __NATIVESERVICES_FRAMEWORK_FRAMEWORKUNIFIED_FRAMEWORK_ERROR_H__ // NOLINT (build/header_guard)
43 #define __NATIVESERVICES_FRAMEWORK_FRAMEWORKUNIFIED_FRAMEWORK_ERROR_H__
45 #include <native_service/frameworkunified_types.h>
48 namespace frameworkunified {
52 class error : public std::runtime_error {
54 explicit error(EFrameworkunifiedStatus error, PCSTR errorMsg);
56 const EFrameworkunifiedStatus m_error;
63 #define DEFINE_FRAMEWORKUNIFIED_ERROR( name ) \
64 class name : public framework_unified::framework::error::error \
67 explicit name ( EFrameworkunifiedStatus error, PCSTR str ) \
68 : framework_unified::framework::error::error ( error, str ) \
72 #endif // __NATIVESERVICES_FRAMEWORK_FRAMEWORKUNIFIED_FRAMEWORK_ERROR_H__ NOLINT (build/header_guard)