Scheduled service maintenance on November 22


On Friday, November 22, 2024, between 06:00 CET and 18:00 CET, GIN services will undergo planned maintenance. Extended service interruptions should be expected. We will try to keep downtimes to a minimum, but recommend that users avoid critical tasks, large data uploads, or DOI requests during this time.

We apologize for any inconvenience.

CCFUtilsXmlItemsParse.h 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. /* =STS=> CCFUtilsXmlItemsParse.h[4881].aa02 open SMID:2 */
  2. //////////////////////////////////////////////////////////////////////
  3. //
  4. // (c) Copyright 2012 - 2013 Blackrock Microsystems
  5. //
  6. // $Workfile: CCFUtilsXmlItemsParse.h $
  7. // $Archive: /Cerebus/Human/WindowsApps/cbhwlib/CCFUtilsXmlItemsParse.h $
  8. // $Revision: 1 $
  9. // $Date: 4/16/12 10:49a $
  10. // $Author: Ehsan $
  11. //
  12. // $NoKeywords: $
  13. //
  14. //////////////////////////////////////////////////////////////////////
  15. //
  16. // Purpose: Interface to parse different versions of CCF XML items
  17. //
  18. #ifndef CCFUTILSXMLITEMSPARSE_H_INCLUDED
  19. #define CCFUTILSXMLITEMSPARSE_H_INCLUDED
  20. #include "XmlFile.h"
  21. #include "CCFUtilsXml.h"
  22. // Namespace for Cerebus Config Files
  23. namespace ccf
  24. {
  25. //-------------------------------------------------
  26. // Abstract interface for reading CCFUtilsXmlItems
  27. //-------------------------------------------------
  28. template <typename T>
  29. void ReadItem(XmlFile * const xml, T item[], int count);
  30. template<>
  31. void ReadItem(XmlFile * const xml, char item[], int count);
  32. template <typename T>
  33. void ReadItem(XmlFile * const xml, T item[], int count, QString strName);
  34. template <typename T>
  35. void ReadItem(XmlFile * const xml, T item[], int count1, int count2, QString strName);
  36. template <typename T>
  37. void ReadItem(XmlFile * const xml, T & item, QString strName);
  38. // Enumerate items that can be counted
  39. template <typename T>
  40. int ItemNumber(XmlFile * const xml, T & item, QString strName);
  41. template <typename T>
  42. int ItemNumber(XmlFile * const xml, T & item);
  43. template<>
  44. int ItemNumber(XmlFile * const xml, cbPKT_CHANINFO & item);
  45. template<>
  46. int ItemNumber(XmlFile * const xml, cbPKT_NTRODEINFO & item);
  47. template<>
  48. int ItemNumber(XmlFile * const xml, cbPKT_SS_NOISE_BOUNDARY & item);
  49. template<>
  50. int ItemNumber(XmlFile * const xml, cbPKT_AOUT_WAVEFORM & item);
  51. // This is for basic types
  52. template <typename T>
  53. void ReadItem(XmlFile * const xml, T & item);
  54. // All specialized types come after here
  55. template<>
  56. void ReadItem(XmlFile * const xml, cbPKT_CHANINFO & item);
  57. template<>
  58. void ReadItem(XmlFile * const xml, cbPKT_SYSINFO & item);
  59. template<>
  60. void ReadItem(XmlFile * const xml, cbPKT_NTRODEINFO & item);
  61. template<>
  62. void ReadItem(XmlFile * const xml, cbPKT_ADAPTFILTINFO & item);
  63. template<>
  64. void ReadItem(XmlFile * const xml, cbPKT_SS_STATISTICS & item);
  65. template<>
  66. void ReadItem(XmlFile * const xml, cbPKT_SS_NOISE_BOUNDARY & item);
  67. template<>
  68. void ReadItem(XmlFile * const xml, cbPKT_SS_DETECT & item);
  69. template<>
  70. void ReadItem(XmlFile * const xml, cbPKT_SS_ARTIF_REJECT & item);
  71. template<>
  72. void ReadItem(XmlFile * const xml, cbPKT_SS_STATUS & item);
  73. template<>
  74. void ReadItem(XmlFile * const xml, cbPKT_LNC & item);
  75. template<>
  76. void ReadItem(XmlFile * const xml, cbPKT_FILTINFO & item);
  77. template<>
  78. void ReadItem(XmlFile * const xml, cbPKT_AOUT_WAVEFORM & item);
  79. template<>
  80. void ReadItem(XmlFile * const xml, cbSCALING & item);
  81. template<>
  82. void ReadItem(XmlFile * const xml, cbFILTDESC & item);
  83. template<>
  84. void ReadItem(XmlFile * const xml, cbMANUALUNITMAPPING & item);
  85. template<>
  86. void ReadItem(XmlFile * const xml, cbHOOP & item);
  87. template<>
  88. void ReadItem(XmlFile * const xml, cbAdaptControl & item);
  89. template<>
  90. void ReadItem(XmlFile * const xml, cbWaveformData & item);
  91. }; // namespace ccf
  92. #endif // include guard