PPanelCommand.cpp
上传用户:popouu88
上传日期:2013-02-11
资源大小:2894k
文件大小:1k
源码类别:

IP电话/视频会议

开发平台:

Visual C++

  1. // PPanelCommand.cpp: implementation of the PPanelCommand class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #include "PPanelCommand.h"
  5. //////////////////////////////////////////////////////////////////////
  6. // Construction/Destruction
  7. //////////////////////////////////////////////////////////////////////
  8. PPanelCommand::PPanelCommand()
  9. {
  10. this->Tag = PPanelCommandTAG;
  11. this->user_id = 0;
  12. this->action = 0;
  13. this->work = 0;
  14. }
  15. PPanelCommand::~PPanelCommand()
  16. {
  17. }
  18. bool PPanelCommand::assembleData( int user_id , int action , int work )
  19. {
  20. this->buffer.Resize( 5 * INT_SIZE );
  21. char * now = this->buffer.GetBuffer( );
  22. *( int * )now = this->buffer.GetSize( ); now += INT_SIZE;
  23. *( int * )now = this->Tag; now += INT_SIZE;
  24. *( int * )now = user_id; now += INT_SIZE;
  25. *( int * )now = action; now += INT_SIZE;
  26. *( int * )now = work;
  27. return true;
  28. }
  29. bool PPanelCommand::parseData( CBuffer & buffer )
  30. {
  31. if( ! buffer.GetSize( ) ) return false;
  32. char * now = buffer.GetBuffer( ) + 2 * INT_SIZE;
  33. this->user_id = *( int * )now; now += INT_SIZE;
  34. this->action = *( int * )now; now += INT_SIZE;
  35. this->work = * ( int * )now;
  36. return true;
  37. }