MediaController_server_g.h 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299
  1. #ifndef __MEDIACONTROLLER_SERVER_G_H
  2. #define __MEDIACONTROLLER_SERVER_G_H
  3. #pragma once
  4. // This code is generated by spgen tool!
  5. #include "MediaController_def_g.h"
  6. namespace MediaController {
  7. class MediaService_ServerSessionBase : public CServerSessionBase
  8. {
  9. public:
  10. MediaService_ServerSessionBase()
  11. {
  12. /// override by user
  13. }
  14. virtual ~MediaService_ServerSessionBase()
  15. {
  16. /// override by user
  17. }
  18. virtual bool IsExclusive() { return false; }
  19. virtual bool IsSessionOverlap() { return true; }
  20. virtual ErrorCodeEnum GetMessageAttr(DWORD dwMessageID, DWORD dwSignature, bool &bOverlap)
  21. {
  22. ErrorCodeEnum Error = Error_Succeed;
  23. switch (dwMessageID) {
  24. case MediaService_Method_GetVideoDeviceName:
  25. if (dwSignature == MediaService_MethodSignature_GetVideoDeviceName) {
  26. bOverlap = true;
  27. } else {
  28. Error = Error_MethodSignatureFailed;
  29. }
  30. break;
  31. case MediaService_Method_StartCamera:
  32. if (dwSignature == MediaService_MethodSignature_StartCamera) {
  33. bOverlap = true;
  34. } else {
  35. Error = Error_MethodSignatureFailed;
  36. }
  37. break;
  38. case MediaService_Method_StopCamera:
  39. if (dwSignature == MediaService_MethodSignature_StopCamera) {
  40. bOverlap = true;
  41. } else {
  42. Error = Error_MethodSignatureFailed;
  43. }
  44. break;
  45. case MediaService_Method_StartEnvCamera:
  46. if (dwSignature == MediaService_MethodSignature_StartEnvCamera) {
  47. bOverlap = true;
  48. } else {
  49. Error = Error_MethodSignatureFailed;
  50. }
  51. break;
  52. case MediaService_Method_StopEnvCamera:
  53. if (dwSignature == MediaService_MethodSignature_StopEnvCamera) {
  54. bOverlap = true;
  55. } else {
  56. Error = Error_MethodSignatureFailed;
  57. }
  58. break;
  59. case MediaService_Method_StartSpeakerRender:
  60. if (dwSignature == MediaService_MethodSignature_StartSpeakerRender) {
  61. bOverlap = true;
  62. } else {
  63. Error = Error_MethodSignatureFailed;
  64. }
  65. break;
  66. case MediaService_Method_StopSpeakerRender:
  67. if (dwSignature == MediaService_MethodSignature_StopSpeakerRender) {
  68. bOverlap = true;
  69. } else {
  70. Error = Error_MethodSignatureFailed;
  71. }
  72. break;
  73. case MediaService_Method_ManipulateMediaDevice:
  74. if (dwSignature == MediaService_MethodSignature_ManipulateMediaDevice) {
  75. bOverlap = true;
  76. } else {
  77. Error = Error_MethodSignatureFailed;
  78. }
  79. break;
  80. default:
  81. Error = Error_MethodNotFound;
  82. break;
  83. }
  84. return Error;
  85. }
  86. int CheckMessageSignature(DWORD dwMessageID, DWORD dwSignature)
  87. {
  88. ErrorCodeEnum Error = Error_Succeed;
  89. switch (dwMessageID) {
  90. case MediaService_Method_GetVideoDeviceName:
  91. if (dwSignature != MediaService_MethodSignature_GetVideoDeviceName) {
  92. Error = Error_MethodSignatureFailed;
  93. }
  94. break;
  95. case MediaService_Method_StartCamera:
  96. if (dwSignature != MediaService_MethodSignature_StartCamera) {
  97. Error = Error_MethodSignatureFailed;
  98. }
  99. break;
  100. case MediaService_Method_StopCamera:
  101. if (dwSignature != MediaService_MethodSignature_StopCamera) {
  102. Error = Error_MethodSignatureFailed;
  103. }
  104. break;
  105. case MediaService_Method_StartEnvCamera:
  106. if (dwSignature != MediaService_MethodSignature_StartEnvCamera) {
  107. Error = Error_MethodSignatureFailed;
  108. }
  109. break;
  110. case MediaService_Method_StopEnvCamera:
  111. if (dwSignature != MediaService_MethodSignature_StopEnvCamera) {
  112. Error = Error_MethodSignatureFailed;
  113. }
  114. break;
  115. case MediaService_Method_StartSpeakerRender:
  116. if (dwSignature != MediaService_MethodSignature_StartSpeakerRender) {
  117. Error = Error_MethodSignatureFailed;
  118. }
  119. break;
  120. case MediaService_Method_StopSpeakerRender:
  121. if (dwSignature != MediaService_MethodSignature_StopSpeakerRender) {
  122. Error = Error_MethodSignatureFailed;
  123. }
  124. break;
  125. case MediaService_Method_ManipulateMediaDevice:
  126. if (dwSignature != MediaService_MethodSignature_ManipulateMediaDevice) {
  127. Error = Error_MethodSignatureFailed;
  128. }
  129. break;
  130. default:
  131. Error = Error_MethodNotFound;
  132. break;
  133. }
  134. return Error;
  135. }
  136. virtual void Handle_GetVideoDeviceName(SpReqAnsContext<MediaService_GetVideoDeviceName_Req, MediaService_GetVideoDeviceName_Ans>::Pointer ctx)
  137. {
  138. /// override by user
  139. }
  140. virtual void Handle_StartCamera(SpOnewayCallContext<MediaService_StartCamera_Info>::Pointer ctx)
  141. {
  142. /// override by user
  143. }
  144. virtual void Handle_StopCamera(SpOnewayCallContext<MediaService_StopCamera_Info>::Pointer ctx)
  145. {
  146. /// override by user
  147. }
  148. virtual void Handle_StartEnvCamera(SpReqAnsContext<MediaService_StartEnvCamera_Req, MediaService_StartEnvCamera_Ans>::Pointer ctx)
  149. {
  150. /// override by user
  151. }
  152. virtual void Handle_StopEnvCamera(SpOnewayCallContext<MediaService_StopEnvCamera_Info>::Pointer ctx)
  153. {
  154. /// override by user
  155. }
  156. virtual void Handle_StartSpeakerRender(SpOnewayCallContext<MediaService_StartSpeakerRender_Info>::Pointer ctx)
  157. {
  158. /// override by user
  159. }
  160. virtual void Handle_StopSpeakerRender(SpOnewayCallContext<MediaService_StopSpeakerRender_Info>::Pointer ctx)
  161. {
  162. /// override by user
  163. }
  164. virtual void Handle_ManipulateMediaDevice(SpReqAnsContext<MediaService_ManipulateMediaDevice_Req, MediaService_ManipulateMediaDevice_Ans>::Pointer ctx)
  165. {
  166. /// override by user
  167. }
  168. virtual void OnRequest(CSmartPointer<ITransactionContext> pTransactionContext)
  169. {
  170. CAutoBuffer Buf;
  171. DWORD dwMessageID;
  172. DWORD dwMessageSignature;
  173. ErrorCodeEnum Error = pTransactionContext->GetReceiveBuffer(dwMessageID, dwMessageSignature, Buf);
  174. if (Error == Error_Succeed) {
  175. #ifdef DEBUG
  176. assert(CheckMessageSignature(dwMessageID, dwMessageSignature) == Error_Succeed);
  177. #else
  178. if (CheckMessageSignature(dwMessageID, dwMessageSignature) != Error_Succeed) {
  179. pTransactionContext->SendAnswer(Error_MethodSignatureFailed);
  180. return;
  181. }
  182. #endif
  183. switch (dwMessageID) {
  184. case MediaService_Method_GetVideoDeviceName:
  185. {
  186. SpReqAnsContext<MediaService_GetVideoDeviceName_Req,MediaService_GetVideoDeviceName_Ans>::Pointer ctx;
  187. ctx.Attach(new SpReqAnsContext<MediaService_GetVideoDeviceName_Req,MediaService_GetVideoDeviceName_Ans>(pTransactionContext));
  188. SpBuffer2Object(Buf, ctx->Req);
  189. pTransactionContext->GetLinkContext(ctx->link);
  190. EntityResource::setLink(ctx->link);
  191. Handle_GetVideoDeviceName(ctx);
  192. }
  193. break;
  194. case MediaService_Method_StartCamera:
  195. {
  196. SpOnewayCallContext<MediaService_StartCamera_Info>::Pointer ctx;
  197. ctx.Attach(new SpOnewayCallContext<MediaService_StartCamera_Info>());
  198. SpBuffer2Object(Buf, ctx->Info);
  199. pTransactionContext->GetLinkContext(ctx->link);
  200. EntityResource::setLink(ctx->link);
  201. Handle_StartCamera(ctx);
  202. }
  203. break;
  204. case MediaService_Method_StopCamera:
  205. {
  206. SpOnewayCallContext<MediaService_StopCamera_Info>::Pointer ctx;
  207. ctx.Attach(new SpOnewayCallContext<MediaService_StopCamera_Info>());
  208. SpBuffer2Object(Buf, ctx->Info);
  209. pTransactionContext->GetLinkContext(ctx->link);
  210. EntityResource::setLink(ctx->link);
  211. Handle_StopCamera(ctx);
  212. }
  213. break;
  214. case MediaService_Method_StartEnvCamera:
  215. {
  216. SpReqAnsContext<MediaService_StartEnvCamera_Req,MediaService_StartEnvCamera_Ans>::Pointer ctx;
  217. ctx.Attach(new SpReqAnsContext<MediaService_StartEnvCamera_Req,MediaService_StartEnvCamera_Ans>(pTransactionContext));
  218. SpBuffer2Object(Buf, ctx->Req);
  219. pTransactionContext->GetLinkContext(ctx->link);
  220. EntityResource::setLink(ctx->link);
  221. Handle_StartEnvCamera(ctx);
  222. }
  223. break;
  224. case MediaService_Method_StopEnvCamera:
  225. {
  226. SpOnewayCallContext<MediaService_StopEnvCamera_Info>::Pointer ctx;
  227. ctx.Attach(new SpOnewayCallContext<MediaService_StopEnvCamera_Info>());
  228. SpBuffer2Object(Buf, ctx->Info);
  229. pTransactionContext->GetLinkContext(ctx->link);
  230. EntityResource::setLink(ctx->link);
  231. Handle_StopEnvCamera(ctx);
  232. }
  233. break;
  234. case MediaService_Method_StartSpeakerRender:
  235. {
  236. SpOnewayCallContext<MediaService_StartSpeakerRender_Info>::Pointer ctx;
  237. ctx.Attach(new SpOnewayCallContext<MediaService_StartSpeakerRender_Info>());
  238. SpBuffer2Object(Buf, ctx->Info);
  239. pTransactionContext->GetLinkContext(ctx->link);
  240. EntityResource::setLink(ctx->link);
  241. Handle_StartSpeakerRender(ctx);
  242. }
  243. break;
  244. case MediaService_Method_StopSpeakerRender:
  245. {
  246. SpOnewayCallContext<MediaService_StopSpeakerRender_Info>::Pointer ctx;
  247. ctx.Attach(new SpOnewayCallContext<MediaService_StopSpeakerRender_Info>());
  248. SpBuffer2Object(Buf, ctx->Info);
  249. pTransactionContext->GetLinkContext(ctx->link);
  250. EntityResource::setLink(ctx->link);
  251. Handle_StopSpeakerRender(ctx);
  252. }
  253. break;
  254. case MediaService_Method_ManipulateMediaDevice:
  255. {
  256. SpReqAnsContext<MediaService_ManipulateMediaDevice_Req,MediaService_ManipulateMediaDevice_Ans>::Pointer ctx;
  257. ctx.Attach(new SpReqAnsContext<MediaService_ManipulateMediaDevice_Req,MediaService_ManipulateMediaDevice_Ans>(pTransactionContext));
  258. SpBuffer2Object(Buf, ctx->Req);
  259. pTransactionContext->GetLinkContext(ctx->link);
  260. EntityResource::setLink(ctx->link);
  261. Handle_ManipulateMediaDevice(ctx);
  262. }
  263. break;
  264. default:
  265. assert(0);
  266. break;
  267. }
  268. } else {
  269. pTransactionContext->SendAnswer(Error);
  270. }
  271. }
  272. };
  273. ///////////////////////////
  274. } // namespace MediaController
  275. #endif // __MEDIACONTROLLER_SERVER_G_H