0.01.00
joiner.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2016, The OpenThread Authors.
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions are met:
7  * 1. Redistributions of source code must retain the above copyright
8  * notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  * notice, this list of conditions and the following disclaimer in the
11  * documentation and/or other materials provided with the distribution.
12  * 3. Neither the name of the copyright holder nor the
13  * names of its contributors may be used to endorse or promote products
14  * derived from this software without specific prior written permission.
15  *
16  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
20  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26  * POSSIBILITY OF SUCH DAMAGE.
27  */
28 
35 #ifndef OPENTHREAD_JOINER_H_
36 #define OPENTHREAD_JOINER_H_
37 
38 #include <openthread/types.h>
39 #include <openthread/platform/toolchain.h>
40 
41 #ifdef __cplusplus
42 extern "C" {
43 #endif
44 
59 typedef enum otJoinerState
60 {
61  OT_JOINER_STATE_IDLE = 0,
62  OT_JOINER_STATE_DISCOVER = 1,
63  OT_JOINER_STATE_CONNECT = 2,
64  OT_JOINER_STATE_CONNECTED = 3,
65  OT_JOINER_STATE_ENTRUST = 4,
66  OT_JOINER_STATE_JOINED = 5,
68 
79 typedef void (OTCALL *otJoinerCallback)(otError aError, void *aContext);
80 
99 OTAPI otError OTCALL otJoinerStart(otInstance *aInstance, const char *aPSKd, const char *aProvisioningUrl,
100  const char *aVendorName, const char *aVendorModel,
101  const char *aVendorSwVersion, const char *aVendorData,
102  otJoinerCallback aCallback, void *aContext);
103 
114 
129 
143 OTAPI otError OTCALL otJoinerGetId(otInstance *aInstance, otExtAddress *aJoinerId);
144 
150 #ifdef __cplusplus
151 } // end of extern "C"
152 #endif
153 
154 #endif // OPENTHREAD_JOINER_H_
This type represents all the static / global variables used by OpenThread allocated in one place...
Definition: openthread-instance.h:59
This file defines the types and structures used in the OpenThread library API.
OTAPI otError OTCALL otJoinerStop(otInstance *aInstance)
This function disables the Thread Joiner role.
Definition: joiner_api.cpp:68
otJoinerState
This enumeration defines the Joiner State.
Definition: joiner.h:59
void(OTCALL * otJoinerCallback)(otError aError, void *aContext)
This function pointer is called to notify the completion of a join operation.
Definition: joiner.h:79
This type represents the IEEE 802.15.4 Extended Address.
Definition: types.h:402
OTAPI otError OTCALL otJoinerStart(otInstance *aInstance, const char *aPSKd, const char *aProvisioningUrl, const char *aVendorName, const char *aVendorModel, const char *aVendorSwVersion, const char *aVendorData, otJoinerCallback aCallback, void *aContext)
This function enables the Thread Joiner role.
Definition: joiner_api.cpp:42
#define OTCALL
Compiler-specific modifier to export functions in a DLL.
Definition: toolchain.h:217
#define OTAPI
Compiler-specific modifier for public API declarations.
Definition: toolchain.h:216
OTAPI otError OTCALL otJoinerGetId(otInstance *aInstance, otExtAddress *aJoinerId)
Get the Joiner ID.
Definition: joiner_api.cpp:94
OTAPI otJoinerState OTCALL otJoinerGetState(otInstance *aInstance)
This function returns the Joiner State.
Definition: joiner_api.cpp:81
otError
This enumeration represents error codes used throughout OpenThread.
Definition: types.h:107