Globals.pas 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. unit Globals;
  2. interface
  3. uses OpenProjectManager, SupportUnit, ProjectManagerDm, ReportManager, LogUtils;
  4. function OpenProjectManager: TOpenProjectManager;
  5. function SupportManager: TSupportManager;
  6. function ProjectManager: TProjectManagerData;
  7. function ReportTemplateManager: TTemplateManager;
  8. function ReportConfig: TReportConfig;
  9. function MemoryReportManager: TMemoryReportManager;
  10. function MeasureLog: TLogUtils;
  11. implementation
  12. var
  13. _OpenProjectManager: TOpenProjectManager;
  14. _SupportManager: TSupportManager;
  15. _ProjectManager: TProjectManagerData;
  16. _ReportTemplateManager: TTemplateManager;
  17. _ReportConfig: TReportConfig;
  18. _MemoryReportManager: TMemoryReportManager;
  19. _MeasureLog: TLogUtils;
  20. function OpenProjectManager: TOpenProjectManager;
  21. begin
  22. if not Assigned(_OpenProjectManager) then
  23. _OpenProjectManager := TOpenProjectManager.Create;
  24. Result := _OpenProjectManager;
  25. end;
  26. function SupportManager: TSupportManager;
  27. begin
  28. if not Assigned(_SupportManager) then
  29. _SupportManager := TSupportManager.Create;
  30. Result := _SupportManager;
  31. end;
  32. function ProjectManager: TProjectManagerData;
  33. begin
  34. if not Assigned(_ProjectManager) then
  35. _ProjectManager := TProjectManagerData.Create;
  36. Result := _ProjectManager;
  37. end;
  38. function ReportTemplateManager: TTemplateManager;
  39. begin
  40. if not Assigned(_ReportTemplateManager) then
  41. _ReportTemplateManager := TTemplateManager.Create;
  42. Result := _ReportTemplateManager;
  43. end;
  44. function ReportConfig: TReportConfig;
  45. begin
  46. if not Assigned(_ReportConfig) then
  47. _ReportConfig := TReportConfig.Create;
  48. Result := _ReportConfig;
  49. end;
  50. function MemoryReportManager: TMemoryReportManager;
  51. begin
  52. if not Assigned(_MemoryReportManager) then
  53. _MemoryReportManager := TMemoryReportManager.Create;
  54. Result := _MemoryReportManager;
  55. end;
  56. function MeasureLog: TLogUtils;
  57. begin
  58. if not Assigned(_MeasureLog) then
  59. _MeasureLog := TLogUtils.Create;
  60. Result := _MeasureLog;
  61. end;
  62. initialization
  63. finalization
  64. _OpenProjectManager.Free;
  65. _SupportManager.Free;
  66. _ProjectManager.Free;
  67. _ReportTemplateManager.Free;
  68. _ReportConfig.Free;
  69. _MemoryReportManager.Free;
  70. _MeasureLog.Free;
  71. end.