This is Webservice SDK for mbed. LPCXpresso1769/LPC1768/FRDM-K64F/LPC4088

Dependents:   MbedFileServer_1768MiniDK2 RedWireBridge IssueDebug_gcc MiMicRemoteMCU-for-Mbed ... more

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers NyLPC_cMiMicIpNetIf.h Source File

NyLPC_cMiMicIpNetIf.h

00001 /*********************************************************************************
00002  * PROJECT: MiMic
00003  * --------------------------------------------------------------------------------
00004  *
00005  * This file is part of MiMic
00006  * Copyright (C)2011 Ryo Iizuka
00007  *
00008  * MiMic is free software: you can redistribute it and/or modify
00009  * it under the terms of the GNU Lesser General Public License as published
00010  * by the Free Software Foundation, either version 3 of the License, or
00011  * (at your option) any later version.
00012  *
00013  * This program is distributed in the hope that it will be useful,
00014  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00015  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00016  * GNU General Public License for more details.
00017  *
00018  * You should have received a copy of the GNU Lesser General Public License
00019  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
00020  *
00021  * For further information please contact.
00022  *  http://nyatla.jp/
00023  *  <airmail(at)ebony.plala.or.jp> or <nyatla(at)nyatla.jp>
00024  *
00025  *
00026  * Parts of this file were leveraged from uIP:
00027  *
00028  * Copyright (c) 2001-2003, Adam Dunkels.
00029  * All rights reserved.
00030  *
00031  * Redistribution and use in source and binary forms, with or without
00032  * modification, are permitted provided that the following conditions
00033  * are met:
00034  * 1. Redistributions of source code must retain the above copyright
00035  *    notice, this list of conditions and the following disclaimer.
00036  * 2. Redistributions in binary form must reproduce the above copyright
00037  *    notice, this list of conditions and the following disclaimer in the
00038  *    documentation and/or other materials provided with the distribution.
00039  * 3. The name of the author may not be used to endorse or promote
00040  *    products derived from this software without specific prior
00041  *    written permission.
00042  *
00043  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
00044  * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
00045  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
00046  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
00047  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
00048  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
00049  * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
00050  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00051  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
00052  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
00053  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00054  */
00055 #ifndef NyLPC_TcMiMicIpNetIf_H_
00056 #define NyLPC_TcMiMicIpNetIf_H_
00057 #include "NyLPC_config.h"
00058 #include "NyLPC_stdlib.h"
00059 #include "../NyLPC_iNetInterface.h"
00060 #include "../NyLPC_cIPv4Config.h"
00061 /**********************************************************************
00062  * Heder files
00063  **********************************************************************/
00064 
00065 #ifdef __cplusplus
00066 extern "C" {
00067 #endif /* __cplusplus */
00068 
00069 /**********************************************************************
00070  *
00071  * NyLPC_TcUipService class
00072  *
00073  **********************************************************************/
00074 /**
00075  * uipタスクを管理する、サービスクラスです。
00076  */
00077 typedef struct NyLPC_TcMiMicIpNetIf NyLPC_TcMiMicIpNetIf_t;
00078 
00079 
00080 /** サービスタスクスタックサイズ
00081  *  mdns 256+96(MIN)
00082  *  upnp 256+160(MIN)
00083  *  mbedのExportしたのをLPCXpressoでコンパイルするときは+192しないと落ちる。
00084  */
00085 #ifndef NyLPC_cMiMicIpNetIf_config_STACK_SIZE
00086 #   define NyLPC_cMiMicIpNetIf_config_STACK_SIZE (256+256+192)
00087 #endif
00088 
00089 /**
00090  * SOCKETリソースの最大数とRXメモリサイズ
00091  */
00092 
00093 #ifndef NyLPC_cMiMicIpNetIf_config_TCPLISTENER_MAX
00094 #   define NyLPC_cMiMicIpNetIf_config_TCPLISTENER_MAX           2
00095 #endif
00096 #ifndef NyLPC_cMiMicIpNetIf_config_TCPSOCKET_MAX
00097 #   define NyLPC_cMiMicIpNetIf_config_TCPSOCKET_MAX             3
00098 #endif
00099 #ifndef NyLPC_cMiMicIpNetIf_config_UDPSOCKET_MAX
00100 #   define NyLPC_cMiMicIpNetIf_config_UDPSOCKET_MAX             1
00101 #endif
00102 #ifndef NyLPC_cMiMicIpNetIf_config_NB_UDPSOCKET_MAX
00103 #   define NyLPC_cMiMicIpNetIf_config_NB_UDPSOCKET_MAX          2
00104 #endif
00105 #ifndef NyLPC_cMiMicIpNetIf_config_TCPSOCKET_RX_BUFFER_SIZE
00106 #   define NyLPC_cMiMicIpNetIf_config_TCPSOCKET_RX_BUFFER_SIZE  512
00107 #endif
00108 #ifndef NyLPC_cMiMicIpNetIf_config_UDPSOCKET_RX_BUFFER_SIZE
00109 #   define NyLPC_cMiMicIpNetIf_config_UDPSOCKET_RX_BUFFER_SIZE  512
00110 #endif
00111 
00112 
00113 
00114 
00115 
00116 
00117 //const NyLPC_TcIPv4Config_t* NyLPC_cUipService_refCurrentConfig(void);
00118 const struct NyLPC_TiNetInterface_Interface* NyLPC_cMiMicIpNetIf_getNetInterface(void);
00119 
00120 
00121 #ifdef __cplusplus
00122 }
00123 #endif /* __cplusplus */
00124 
00125 #endif
00126