FrmSamsungCameraF.cpp 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. //---------------------------------------------------------------------------
  2. #include <vcl.h>
  3. #pragma hdrstop
  4. #include "FrmSamsungCameraF.h"
  5. #include "AppGlobalF.h"
  6. //---------------------------------------------------------------------------
  7. #pragma package(smart_init)
  8. #pragma link "cxContainer"
  9. #pragma link "cxControls"
  10. #pragma link "cxEdit"
  11. #pragma link "cxGraphics"
  12. #pragma link "cxLabel"
  13. #pragma link "cxLookAndFeelPainters"
  14. #pragma link "cxLookAndFeels"
  15. #pragma link "dxSkinsCore"
  16. #pragma link "dxSkinBlack"
  17. #pragma link "dxSkinBlue"
  18. #pragma resource "*.dfm"
  19. TFrmSamsungCamera *FrmSamsungCamera = NULL;
  20. //---------------------------------------------------------------------------
  21. __fastcall TFrmSamsungCamera::TFrmSamsungCamera(TComponent* Owner, TXCctv *ACctv, bool AAutoPlay)
  22. : TForm(Owner)
  23. {
  24. FPlay = false;
  25. FAutoPlay = AAutoPlay;
  26. FConHandle = 0;
  27. FInstalled = false;
  28. InitCamera(ACctv, FAutoPlay);
  29. }
  30. //---------------------------------------------------------------------------
  31. void __fastcall TFrmSamsungCamera::MnuConnectClick(TObject *Sender)
  32. {
  33. FAutoPlay = true;
  34. Connect();
  35. }
  36. //---------------------------------------------------------------------------
  37. void __fastcall TFrmSamsungCamera::MnuDisconnectClick(TObject *Sender)
  38. {
  39. FAutoPlay = false;
  40. Disconnect();
  41. }
  42. //---------------------------------------------------------------------------
  43. void __fastcall TFrmSamsungCamera::MnuReleaseClick(TObject *Sender)
  44. {
  45. CameraRelease();
  46. }
  47. //---------------------------------------------------------------------------
  48. void __fastcall TFrmSamsungCamera::Connect()
  49. {
  50. }
  51. //---------------------------------------------------------------------------
  52. void __fastcall TFrmSamsungCamera::Disconnect()
  53. {
  54. if (!FPlay) return;
  55. try
  56. {
  57. //if (FConHandle)
  58. {
  59. //if (AcesTechXPlayer21) AcesTechXPlayer21->Close();
  60. }
  61. FConHandle = 0;
  62. }
  63. catch(...)
  64. {
  65. }
  66. PnlCamera->Caption = "Disconnected";
  67. //if (AcesTechXPlayer21) AcesTechXPlayer21->Visible = false;
  68. FConHandle = 0;
  69. FPlay = false;
  70. }
  71. //---------------------------------------------------------------------------
  72. void __fastcall TFrmSamsungCamera::CameraRelease()
  73. {
  74. Disconnect();
  75. PnlCamera->Caption = "";
  76. //if (AcesTechXPlayer21) AcesTechXPlayer21->Visible = false;
  77. }
  78. //---------------------------------------------------------------------------
  79. void __fastcall TFrmSamsungCamera::InitCamera(TXCctv *ACctv, bool AAutoPlay/*=true*/)
  80. {
  81. FAutoPlay = AAutoPlay;
  82. PopupMenu = NULL;
  83. if (!ACctv)
  84. {
  85. FId = "";
  86. FGroup = "";
  87. FName = "";
  88. FStreamingType = "";
  89. FViewAddress = "";
  90. FFullAddress = "";
  91. PnlCamera->Caption = "-Empty-";
  92. DisplayName(" ");
  93. FInstalled = false;
  94. //AcesTechXPlayer21->Visible = false;
  95. try
  96. {
  97. String sImageFile = ExtractFilePath(Application->ExeName) + "\\image\\vmscam.bmp";
  98. ImgNoData->Picture->LoadFromFile(sImageFile);
  99. ImgNoData->Align = alClient;
  100. ImgNoData->Visible = true;
  101. LblName->Visible = false;
  102. }
  103. catch(Exception &e)
  104. {
  105. ImgNoData->Visible = false;
  106. }
  107. }
  108. else
  109. {
  110. FId = ACctv->Id;
  111. FGroup = ACctv->Group;
  112. FName = ACctv->Name;
  113. FStreamingType = ACctv->StreamingType;
  114. FViewAddress = ACctv->ViewAddress;
  115. FFullAddress = ACctv->FullAddress;
  116. PnlCamera->Caption = "Disconnected";
  117. DisplayName(FName);
  118. FInstalled = true;
  119. if (FViewAddress.IsEmpty())
  120. {
  121. //AcesTechXPlayer21->Visible = false;
  122. PnlCamera->Caption = "Streamming Address Error";
  123. }
  124. else
  125. {
  126. PopupMenu = PopupMenu1;
  127. }
  128. }
  129. }
  130. //---------------------------------------------------------------------------
  131. void __fastcall TFrmSamsungCamera::DisplayName(String AName)
  132. {
  133. }
  134. //---------------------------------------------------------------------------
  135. void __fastcall TFrmSamsungCamera::TmrPlayTimer(TObject *Sender)
  136. {
  137. TmrStop->Enabled = false;
  138. TmrPlay->Enabled = false;
  139. Connect();
  140. }
  141. //---------------------------------------------------------------------------
  142. void __fastcall TFrmSamsungCamera::TmrStopTimer(TObject *Sender)
  143. {
  144. TmrPlay->Enabled = false;
  145. TmrStop->Enabled = false;
  146. Disconnect();
  147. }
  148. //---------------------------------------------------------------------------