OSDN Git Service

githubへmbedJSのJavascriptAPIを移動
[mimic/MiMicSDK.git] / misc / mbedJS / mbddJS.API / mbedJS / mbed.SPISlave.js
diff --git a/misc/mbedJS/mbddJS.API/mbedJS/mbed.SPISlave.js b/misc/mbedJS/mbddJS.API/mbedJS/mbed.SPISlave.js
deleted file mode 100644 (file)
index e4e2088..0000000
+++ /dev/null
@@ -1,314 +0,0 @@
-/**\r
- * @fileOverview SPISlaveクラスを定義します。\r
- */\r
-(function(){\r
-var NS=mbedJS;\r
-var MI=MiMicJS;\r
-\r
-/**\r
- * SPISlaveクラスです。\r
- * <a href="https://mbed.org/handbook/SPISlave">mbed::SPISlave</a>と同等の機能を持ちます。\r
- * @name mbedJS.SPISlave\r
- * @constructor\r
- * @param {mbedJS.Mcu} i_mcu\r
- * インスタンスをバインドするMCUオブジェクトです。\r
- * @param {[PinName,PinName,PinName]} i_params\r
- * SPIを構成する4つのPinNameを格納する配列です。\r
- * mosi, miso, sclkの順番で設定します。\r
- * @param {HashMap|Generator|function} i_handler\r
- * 非同期イベントハンドラの連想配列、Generator、コールバック関数の何れかを指定します。\r
- * <p>\r
- * 非同期イベントハンドラの場合、関数はイベントハンドラで結果を通知します。\r
- * <ul>\r
- * <li>{function()} onNew -\r
- * インスタンスが使用可能になった時に呼び出されます。\r
- * </li>\r
- * <li>{function(v)} onFrequency  -\r
- * frequency関数のコールバック関数です。\r
- * </li>\r
- * <li>{function(v)} onFormat  -\r
- * format関数のコールバック関数です。\r
- * </li>\r
- * <li>{function(v)} onReceive  -\r
- * receive関数のコールバック関数です。\r
- * </li>\r
- * <li>{function(v)} onRead  -\r
- * read関数のコールバック関数です。\r
- * <ul>\r
- *             <li>{int} v - 受信した8BIT値です。</li>\r
- * </ul>\r
- * </li>\r
- * <li>{function()} onReply  -\r
- * reply関数のコールバック関数です。\r
- * </li>\r
- * </ul>\r
- * <p>\r
- * Generatorを指定した場合、コールバック関数の引数はyiledの戻り値として取得できます。\r
- * </p>\r
- * <p>\r
- * コールバック関数を指定した場合、RPCが完了したときに呼び出されます。メンバ関数のイベントハンドラは個別に設定する必要があります。\r
- * </p>\r
- * @return {mbedJS.SPI}\r
- * @example //Callback\r
- * var mcu=new mbedJS.Mcu("192.168.128.39",\r
- * {\r
- *   onNew:function(){\r
- *     var pin=new mbedJS.SPISlave(mcu,[mbedJS.PinName.p5,mbedJS.PinName.p6,mbedJS.PinName.p7,mbedJS.PinName.p8],{\r
- *     onNew:function(){\r
- *       pin.frequency(1000000);\r
- *     },\r
- *     onFrequency:function()\r
- *     {\r
- *       pin.format(8,3);\r
- *     },\r
- *     onFormat:function()\r
- *     {\r
- *       pin.read();\r
- *     },\r
- *     onRead:function(v){\r
- *       pin.receive();\r
- *     },\r
- *     onReceive:function(v)\r
- *     {\r
- *       pin.reply(1);\r
- *     },\r
- *     onReply:function(){\r
- *         mcu.close();\r
- *     }\r
- *     });\r
- *   },\r
- *   onClose:function(){\r
- *   },\r
- *   onError:function(){\r
- *   }\r
- * });\r
- * @example //Generator\r
- * var g=function*(){\r
- * try{\r
- *   var mcu=new mbedJS.Mcu("192.168.128.39",g);\r
- *   yield mcu.waitForNew();\r
- *   var pin=new mbedJS.SPISlave(mcu,[mbedJS.PinName.p5,mbedJS.PinName.p6,mbedJS.PinName.p7,mbedJS.PinName.p8],g);\r
- *   yield pin.waitForNew();\r
- *   yield pin.frequency(1000000);\r
- *   yield pin.format(8,3);\r
- *   var v=yield pin.read();\r
- *   v=yield pin.receive();\r
- *   yield pin.reply(1);\r
- *   yield mcu.close();\r
- * }catch(e){\r
- *   mcu.shutdown();\r
- * }\r
- * }();\r
- * g.next();\r
- */\r
-var CLASS=function SPISlave(i_mcu,i_params,i_handler)\r
-{\r
-       try{\r
-               var _t=this;\r
-               _t._mcu=i_mcu;\r
-               _t._lc=CLASS;\r
-               var cb=MI._initHandler.call(_t,i_handler);\r
-               MI.assertInt(i_params);\r
-               _t._mcu.rpc(_t.RPC_NS+":_new1",i_params[0]+","+i_params[1]+","+i_params[2]+","+i_params[3],\r
-                       function(j)\r
-                       {\r
-                               _t._oid=j.result[0];\r
-                               if(cb){cb();}\r
-                               if(_t._gen){_t._gen.next(_t);}\r
-                               _t._lc=null;\r
-                       }\r
-               );\r
-       }catch(e){\r
-               throw new MI.MiMicException(e);\r
-       }               \r
-}\r
-CLASS.prototype=\r
-{\r
-       /** @private */\r
-       RPC_NS:"mbedJS:SPISlave",\r
-       /** @private 最後にコールしたAPIです。*/\r
-       _lc:null,\r
-       /** @private Generatorモードの場合にGeneratorオブジェクトを保持します。*/\r
-       _gen:null,\r
-       /** @private コールバック関数の連想配列です。要素はコンストラクタを参照してください。*/\r
-       _event:{},\r
-       /** @private リモートインスタンスのオブジェクトIDです。*/\r
-       _oid:null,\r
-       /**\r
-        * Generatorモードのときに使用する関数です。\r
-        * Generatorモードの時は、yieldと併用してnew SPISlave()の完了を待ちます。\r
-        * @name mbedJS.SPISlave#waitForNew\r
-        * @function\r
-        */\r
-       waitForNew:function SPISlave_waitForNew()\r
-       {\r
-               try{\r
-                       if(this._lc!=CLASS){throw new MI.MiMicException(MI.Error.NG_ILLEGAL_CALL);}\r
-                       this._lc=CLASS.waitForNew;\r
-               }catch(e){\r
-                       throw new MI.MiMicException(e);\r
-               }                       \r
-       },      \r
-\r
-       /**\r
-        * frequencyに値を設定します。\r
-        * 関数の完了時にonFrequencyイベントが発生します。\r
-        * Generatorモードの時は、yieldと併用して完了を待機できます。\r
-        * @name mbedJS.SPISlave#frequency\r
-        * @function\r
-        * @param {int} i_value\r
-        * \r
-        * @return {int}\r
-        * Callbackモードの時はRPCメソッドのインデクスを返します。\r
-        */\r
-       frequency:function SPISlave_frequency(i_value)\r
-       {\r
-               try{\r
-                       var _t=this;\r
-                       MI._assertYield.call(_t);\r
-                       var cb=MI._getCb(arguments,_t._event.onFrequency);\r
-                       _t._lc=CLASS.frequency;\r
-                       MI.assertInt(i_value);\r
-                       return _t._mcu.rpc(_t.RPC_NS+":frequency",_t._oid+","+i_value,\r
-                       function(j){\r
-                               if(cb){cb();}\r
-                               if(_t._gen){_t._gen.next();}\r
-                                _t._lc=null;\r
-                       });\r
-               }catch(e){\r
-                       throw new MI.MiMicException(e);\r
-               }\r
-       },      \r
-       /**\r
-        * formatに値を設定します。\r
-        * 関数の完了時にonFormatイベントが発生します。\r
-        * Generatorモードの時は、yieldと併用して完了を待機できます。\r
-        * @name mbedJS.SPISlave#format\r
-        * @function\r
-        * @param {int} i_bits\r
-        * @param {int} i_mode\r
-        * 省略可能です。省略時は0になります。\r
-        * @return {int}\r
-        * Callbackモードの時はRPCメソッドのインデクスを返します。\r
-        */\r
-       format:function SPISlave_format(i_bits,i_mode)\r
-       {\r
-               try{\r
-                       var _t=this;\r
-                       MI._assertYield.call(_t);\r
-                       var cb=MI._getCb(arguments,_t._event.onFormat);\r
-                       _t._lc=CLASS.format;\r
-                       var mode=i_mode?i_mode:0;\r
-                       MI.assertInt([i_bits,mode]);\r
-                       return _t._mcu.rpc(_t.RPC_NS+":format",_t._oid+","+i_bits+","+mode,\r
-                       function(j){\r
-                               if(cb){cb();}\r
-                               if(_t._gen){_t._gen.next();}\r
-                                _t._lc=null;\r
-                       });\r
-               }catch(e){\r
-                       throw new MI.MiMicException(e);\r
-               }\r
-       },\r
-       /**\r
-        * 転送メモリから値を読み込みます。\r
-        * 関数の完了時にonReadイベントが発生します。\r
-        * Generatorモードの時は、yieldと併用して完了を待機できます。\r
-        * @name mbedJS.SPISlave#read\r
-        * @function\r
-        * @return {int}\r
-        * Callbackモードの時はRPCメソッドのインデクスを返します。\r
-        * @return {int}\r
-        * Generatorモードの時はピンの値を返します。\r
-        */\r
-       read:function SPISlave_read()\r
-       {\r
-               try{\r
-                       var _t=this;\r
-                       MI._assertYield.call(_t);\r
-                       var cb=MI._getCb(arguments,_t._event.onRead);\r
-                       _t._lc=CLASS.read;\r
-                       return _t._mcu.rpc(_t.RPC_NS+":read",_t._oid,\r
-                       function (j)\r
-                       {\r
-                               var v=j.result[0];\r
-                               if(cb){cb(v);}\r
-                               if(_t._gen){_t._gen.next(v);}\r
-                                _t._lc=null;\r
-                       });\r
-               }catch(e){\r
-                       throw new MI.MiMicException(e);\r
-               }                       \r
-       },\r
-       /**\r
-        * データが到着しているかを返します。\r
-        * 関数の完了時にonReadイベントが発生します。\r
-        * Generatorモードの時は、yieldと併用して完了を待機できます。\r
-        * @name mbedJS.SPISlave#receive\r
-        * @function\r
-        * @return {int}\r
-        * Callbackモードの時はRPCメソッドのインデクスを返します。\r
-        * @return {int}\r
-        * Generatorモードの時はピンの値を返します。\r
-        */\r
-       receive:function SPISlave_receive()\r
-       {\r
-               try{\r
-                       var _t=this;\r
-                       MI._assertYield.call(_t);\r
-                       var cb=MI._getCb(arguments,_t._event.onReceive);\r
-                       _t._lc=CLASS.receive;\r
-                       return _t._mcu.rpc(_t.RPC_NS+":receive",_t._oid,\r
-                       function (j)\r
-                       {\r
-                               var v=j.result[0];\r
-                               if(cb){cb(v);}\r
-                               if(_t._gen){_t._gen.next(v);}\r
-                                _t._lc=null;\r
-                       });\r
-               }catch(e){\r
-                       throw new MI.MiMicException(e);\r
-               }                       \r
-       },\r
-       /**\r
-        * 転送バッファに次に送信するメッセージをセットします。\r
-        * 関数の完了時にonReplyイベントが発生します。\r
-        * Generatorモードの時は、yieldと併用して完了を待機できます。\r
-        * @name mbedJS.SPISlave#reply\r
-        * @function\r
-        * @param {int} i_value\r
-        * 次に送る8bitの値です。\r
-        * @return {int}\r
-        * Callbackモードの時はRPCメソッドのインデクスを返します。\r
-        */\r
-       reply:function SPISlave_reply(i_value)\r
-       {\r
-               try{\r
-                       var _t=this;\r
-                       MI._assertYield.call(_t);\r
-                       var cb=MI._getCb(arguments,_t._event.onReply);\r
-                       _t._lc=CLASS.reply;\r
-                       MI.assertInt(i_value);\r
-                       return _t._mcu.rpc(_t.RPC_NS+":reply",_t._oid+","+i_value,\r
-                       function (j)\r
-                       {\r
-                               if(cb){cb();}\r
-                               if(_t._gen){_t._gen.next();}\r
-                                _t._lc=null;\r
-                       });\r
-               }catch(e){\r
-                       throw new MI.MiMicException(e);\r
-               }                       \r
-       },\r
-       /**\r
-        * MCUに生成されているオブジェクトを破棄します。\r
-        * @name mbedJS.SPISlave#dispose\r
-        * @function\r
-        */\r
-       dispose:function SPISlave_dispose()\r
-       {\r
-               return this._mcu._dispose.apply(this,arguments);\r
-       }       \r
-}\r
-NS.SPISlave=CLASS;\r
-}());
\ No newline at end of file