qsdf

Committer:
StefR
Date:
Sun Oct 30 17:07:17 2011 +0000
Revision:
0:d63b2aa1d448
dqf

Who changed what in which revision?

UserRevisionLine numberNew contents of line
StefR 0:d63b2aa1d448 1 // myrpc.cpp
StefR 0:d63b2aa1d448 2 //
StefR 0:d63b2aa1d448 3 // Based on:
StefR 0:d63b2aa1d448 4 // http://mbed.org/projects/cookbook/svn/Servo/trunk/Servo.h
StefR 0:d63b2aa1d448 5 // http://mbed.org/projects/cookbook/svn/Servo/trunk/Servo.cpp
StefR 0:d63b2aa1d448 6 // http://mbed.org/forum/topic/234/
StefR 0:d63b2aa1d448 7
StefR 0:d63b2aa1d448 8 #include "myrpc.h"
StefR 0:d63b2aa1d448 9 #ifdef MBED_RPC
StefR 0:d63b2aa1d448 10 #include "rpc.h"
StefR 0:d63b2aa1d448 11 #endif
StefR 0:d63b2aa1d448 12
StefR 0:d63b2aa1d448 13
StefR 0:d63b2aa1d448 14
StefR 0:d63b2aa1d448 15 namespace mbed {
StefR 0:d63b2aa1d448 16
StefR 0:d63b2aa1d448 17 myrpc::myrpc(PinName pin, const char *name) : Base(name), _pin(pin) {}
StefR 0:d63b2aa1d448 18
StefR 0:d63b2aa1d448 19
StefR 0:d63b2aa1d448 20 void myrpc::ledon(int n) {
StefR 0:d63b2aa1d448 21 _pin = 1;
StefR 0:d63b2aa1d448 22 }
StefR 0:d63b2aa1d448 23
StefR 0:d63b2aa1d448 24 void myrpc::ledoff(int n) {
StefR 0:d63b2aa1d448 25 _pin = 0;
StefR 0:d63b2aa1d448 26 }
StefR 0:d63b2aa1d448 27
StefR 0:d63b2aa1d448 28
StefR 0:d63b2aa1d448 29 #ifdef MBED_RPC
StefR 0:d63b2aa1d448 30 const rpc_method *myrpc::get_rpc_methods() {
StefR 0:d63b2aa1d448 31 static const rpc_method rpc_methods[] = {
StefR 0:d63b2aa1d448 32 { "ledon", rpc_method_caller<myrpc, int, &myrpc::ledon> },
StefR 0:d63b2aa1d448 33 { "ledoff", rpc_method_caller<myrpc, int, &myrpc::ledoff> },
StefR 0:d63b2aa1d448 34 RPC_METHOD_SUPER(Base)
StefR 0:d63b2aa1d448 35 };
StefR 0:d63b2aa1d448 36 return rpc_methods;
StefR 0:d63b2aa1d448 37 }
StefR 0:d63b2aa1d448 38 rpc_class *myrpc::get_rpc_class() {
StefR 0:d63b2aa1d448 39 static const rpc_function funcs[] = {
StefR 0:d63b2aa1d448 40 "new", rpc_function_caller<const char*, PinName, const char*, &Base::construct<myrpc,PinName,const char*> >,
StefR 0:d63b2aa1d448 41 RPC_METHOD_END
StefR 0:d63b2aa1d448 42 };
StefR 0:d63b2aa1d448 43 static rpc_class c = { "myrpc", funcs, NULL };
StefR 0:d63b2aa1d448 44 return &c;
StefR 0:d63b2aa1d448 45 }
StefR 0:d63b2aa1d448 46 #endif
StefR 0:d63b2aa1d448 47
StefR 0:d63b2aa1d448 48 } // namespace mbed