Global.cpp 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. //---------------------------------------------------------------------------
  2. #include <CorePCH.h>
  3. #pragma hdrstop
  4. //---------------------------------------------------------------------------
  5. const UnicodeString EmptyString(TraceInitStr(L"\1\1\1")); // magic
  6. //---------------------------------------------------------------------------
  7. UnicodeString NormalizeString(const UnicodeString & S)
  8. {
  9. UnicodeString Result = S;
  10. if (Result == EmptyString)
  11. {
  12. Result = UnicodeString();
  13. }
  14. return Result;
  15. }
  16. //---------------------------------------------------------------------------
  17. UnicodeString DenormalizeString(const UnicodeString & S)
  18. {
  19. UnicodeString Result = S;
  20. if (Result.IsEmpty())
  21. {
  22. Result = EmptyString;
  23. }
  24. return Result;
  25. }
  26. //---------------------------------------------------------------------------
  27. // TGuard
  28. //---------------------------------------------------------------------------
  29. __fastcall TGuard::TGuard(TCriticalSection * ACriticalSection) :
  30. FCriticalSection(ACriticalSection)
  31. {
  32. DebugAssert(ACriticalSection != NULL);
  33. FCriticalSection->Enter();
  34. }
  35. //---------------------------------------------------------------------------
  36. __fastcall TGuard::~TGuard()
  37. {
  38. FCriticalSection->Leave();
  39. }
  40. //---------------------------------------------------------------------------
  41. // TUnguard
  42. //---------------------------------------------------------------------------
  43. __fastcall TUnguard::TUnguard(TCriticalSection * ACriticalSection) :
  44. FCriticalSection(ACriticalSection)
  45. {
  46. DebugAssert(ACriticalSection != NULL);
  47. FCriticalSection->Leave();
  48. }
  49. //---------------------------------------------------------------------------
  50. __fastcall TUnguard::~TUnguard()
  51. {
  52. FCriticalSection->Enter();
  53. }
  54. //---------------------------------------------------------------------------