joey shelton / LED_Demo

Dependencies:   MAX44000 PWM_Tone_Library nexpaq_mdk

Fork of LED_Demo by Maxim nexpaq

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers MeshInterfaceFactory.h Source File

MeshInterfaceFactory.h

00001 /*
00002  * Copyright (c) 2015 ARM Limited. All rights reserved.
00003  * SPDX-License-Identifier: Apache-2.0
00004  * Licensed under the Apache License, Version 2.0 (the License); you may
00005  * not use this file except in compliance with the License.
00006  * You may obtain a copy of the License at
00007  *
00008  * http://www.apache.org/licenses/LICENSE-2.0
00009  *
00010  * Unless required by applicable law or agreed to in writing, software
00011  * distributed under the License is distributed on an AS IS BASIS, WITHOUT
00012  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  * See the License for the specific language governing permissions and
00014  * limitations under the License.
00015  */
00016 
00017 #ifndef __MESHINTERFACEFACTORY_H__
00018 #define __MESHINTERFACEFACTORY_H__
00019 
00020 #include <stdlib.h>
00021 #include "AbstractMesh.h"
00022 
00023 /**
00024  *  \brief MeshInterfaceFactory.
00025  *  This is a factory class provides interface for creating Mesh Interface
00026  *  object for application to utilize mesh networking.
00027  */
00028 
00029 class MeshInterfaceFactory
00030 {
00031 
00032 public:
00033 
00034     /**
00035      * \brief Creates Mesh interface object that can be used for connecting
00036      * to mesh network.
00037      * \param type, type of the mesh network.
00038      * \return M2MInterfaceImpl , Object to manage other LWM2M operations.
00039      */
00040     static AbstractMesh *createInterface(const mesh_network_type_t &type);
00041 
00042 private:
00043     // Prevents the use of assignment operator by accident.
00044     MeshInterfaceFactory &operator=(const MeshInterfaceFactory & /*other*/);
00045 
00046     // Prevents the use of copy constructor by accident
00047     MeshInterfaceFactory(const MeshInterfaceFactory & /*other*/);
00048 };
00049 
00050 #endif /* __MESHINTERFACEFACTORY_H__ */