home *** CD-ROM | disk | FTP | other *** search
/ HTBasic 9.3 / HTBasic 9.3.iso / 93win / data1.cab / DLL_Toolkit / Source / HTBLineChart / ChartLine.cpp next >
Encoding:
C/C++ Source or Header  |  2005-03-02  |  1.9 KB  |  106 lines

  1. // ChartLine.cpp: implementation of the CChartLine class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4.  
  5. #include "stdafx.h"
  6. #include "HTBLineChart.h"
  7. #include "ChartLine.h"
  8. #include "export.h"
  9.  
  10. #ifdef _DEBUG
  11. #undef THIS_FILE
  12. static char THIS_FILE[]=__FILE__;
  13. #define new DEBUG_NEW
  14. #endif
  15.  
  16.  
  17. short CChartLine::m_NextLineID = 0;
  18.  
  19.  
  20. //////////////////////////////////////////////////////////////////////
  21. // Construction/Destruction
  22. //////////////////////////////////////////////////////////////////////
  23.  
  24. CChartLine::CChartLine()
  25. {
  26.  
  27. }
  28.  
  29. CChartLine::~CChartLine()
  30. {
  31.  
  32. }
  33.  
  34. CChartLine::CChartLine(short LineNumber, long *pData)
  35. {    m_LineNumber = LineNumber;
  36.     m_pData = pData;
  37.     m_pNext = NULL;
  38.     m_bSignalAbove = FALSE;
  39.     m_bSignalBelow = FALSE;
  40.  
  41.  
  42.     m_LineID = m_NextLineID;
  43.     m_NextLineID++;
  44.  
  45. }
  46.  
  47. void CChartLine::AddToList(CChartLine *pNewLine)
  48. {
  49.     if (m_pNext == NULL)
  50.     {    m_pNext = pNewLine;
  51.     }
  52.     else
  53.     {    m_pNext->AddToList(pNewLine);
  54.     }
  55. }
  56.  
  57. short CChartLine::GetID()
  58. {    return(m_LineID);
  59.  
  60. }
  61.  
  62. long * CChartLine::GetDataPtr()
  63. {
  64.     return(m_pData);
  65. }
  66.  
  67. CChartLine * CChartLine::GetNextLine()
  68. {
  69.     return(m_pNext);
  70. }
  71.  
  72. void CChartLine::SendSignals()
  73. {    if (m_bSignalAbove && *m_pData > m_SignalAboveValue)
  74.     {    Signal(m_SignalAboveNumber);
  75.     }
  76.     
  77.     if (m_bSignalBelow && *m_pData < m_SignalBelowValue)
  78.     {    Signal(m_SignalBelowNumber);
  79.     }
  80.  
  81. }
  82.  
  83. void CChartLine::SetSignalAbove(short LineNumber,int Value,short Signal)
  84. {    if (m_LineNumber == LineNumber)
  85.     {    m_bSignalAbove = TRUE;
  86.         m_SignalAboveValue = Value;
  87.         m_SignalAboveNumber = Signal;
  88.     }
  89.     else
  90.     {    m_pNext->SetSignalAbove(LineNumber,Value,Signal);
  91.     }
  92.  
  93. }
  94.  
  95. void CChartLine::SetSignalBelow(short LineNumber, int Value, short Signal)
  96. {    if (m_LineNumber == LineNumber)
  97.     {    m_bSignalBelow = TRUE;
  98.         m_SignalBelowValue = Value;
  99.         m_SignalBelowNumber = Signal;
  100.     }
  101.     else
  102.     {    m_pNext->SetSignalBelow(LineNumber,Value,Signal);
  103.     }
  104.  
  105. }
  106.