Merge "Partial Implementation of US1574:"
[platform/upstream/iotivity.git] / csdk / controller / core / include / core / Core.h
1 //******************************************************************
2 //
3 // Copyright 2014 Intel Mobile Communications GmbH All Rights Reserved.
4 //
5 //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
6 //
7 // Licensed under the Apache License, Version 2.0 (the "License");
8 // you may not use this file except in compliance with the License.
9 // You may obtain a copy of the License at
10 //
11 //      http://www.apache.org/licenses/LICENSE-2.0
12 //
13 // Unless required by applicable law or agreed to in writing, software
14 // distributed under the License is distributed on an "AS IS" BASIS,
15 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 // See the License for the specific language governing permissions and
17 // limitations under the License.
18 //
19 //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
20
21 #ifndef CORE_H_
22 #define CORE_H_
23
24 #include <boost/uuid/uuid.hpp>
25 typedef boost::uuids::uuid UUID_t;
26
27 // ============================================================================
28 // Namespace
29 // ============================================================================
30 namespace Intel {
31 namespace CCFL {
32 namespace API {
33
34 // ============================================================================
35 // Enums
36 // ============================================================================
37 enum QueryResultType {
38         SUCCESS,
39         FAILURE
40 };
41
42 }
43 }
44 }
45
46 #ifdef CPPV11
47 #include <mutex>
48         namespace Intel {
49         namespace CCFL {
50         namespace API {
51                 typedef std::mutex mutex;
52                 typedef std::lock_guard<std::mutex> mutex_lock_guard;
53         }
54         }
55         }
56 #else
57 #include <boost/thread/mutex.hpp>
58 #include <boost/thread/locks.hpp>
59         namespace Intel {
60         namespace CCFL {
61         namespace API {
62                 typedef boost::mutex mutex;
63                 typedef boost::lock_guard<boost::mutex> mutex_lock_guard;
64         }
65         }
66         }
67 #endif
68
69 #endif /* CORE_H_ */