Files
Leviathan/Library/External/XTToolkitPro/include/Chart/XTPChartTrendline.h
T
2026-06-01 12:46:52 +02:00

139 lines
3.7 KiB
C++

// XTPChartTrendline.h
//
// This file is a part of the XTREME TOOLKIT PRO MFC class library.
// (c)1998-2013 Codejock Software, All Rights Reserved.
//
// THIS SOURCE FILE IS THE PROPERTY OF CODEJOCK SOFTWARE AND IS NOT TO BE
// RE-DISTRIBUTED BY ANY MEANS WHATSOEVER WITHOUT THE EXPRESSED WRITTEN
// CONSENT OF CODEJOCK SOFTWARE.
//
// THIS SOURCE CODE CAN ONLY BE USED UNDER THE TERMS AND CONDITIONS OUTLINED
// IN THE XTREME TOOLKIT PRO LICENSE AGREEMENT. CODEJOCK SOFTWARE GRANTS TO
// YOU (ONE SOFTWARE DEVELOPER) THE LIMITED RIGHT TO USE THIS SOFTWARE ON A
// SINGLE COMPUTER.
//
// CONTACT INFORMATION:
// support@codejock.com
// http://www.codejock.com
//
/////////////////////////////////////////////////////////////////////////////
//{{AFX_CODEJOCK_PRIVATE
#if !defined(__XTPCHARTTRENDLINE_H__)
#define __XTPCHARTTRENDLINE_H__
//}}AFX_CODEJOCK_PRIVATE
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
enum XTPChartSeriesTrendlineType
{
xtpChartSeriesTrendlineTypeNone,
xtpChartSeriesTrendlineTypeLinear,
xtpChartSeriesTrendlineTypeMovingAverageSimple,
// xtpChartSeriesTrendlineTypeMovingAverageCumulative,
// xtpChartSeriesTrendlineTypeMovingAverageWeighted,
// xtpChartSeriesTrendlineTypeMovingAverageExponential,
xtpChartSeriesTrendlineTypeMinimum,
xtpChartSeriesTrendlineTypeMaximum,
};
class _XTP_EXT_CLASS CXTPChartSeriesTrendline : public CXTPChartSeries
{
DECLARE_DYNAMIC(CXTPChartSeriesTrendline)
public:
//-----------------------------------------------------------------------
// Summary:
// Constructs a CXTPChartSeriesTrendline object.
// Remarks:
//-----------------------------------------------------------------------
CXTPChartSeriesTrendline();
//-------------------------------------------------------------------------
// Summary:
// Destroys a CXTPChartSeriesTrendline object, handles cleanup
//-------------------------------------------------------------------------
virtual ~CXTPChartSeriesTrendline();
public:
CXTPChartSeries* GetSource() const;
void SetSource(CXTPChartSeries *pSeries);
XTPChartSeriesTrendlineType GetType() const;
void SetType(XTPChartSeriesTrendlineType type);
int GetPeriod() const;
void SetPeriod(int nPeriod);
protected:
void Release();
protected:
XTPChartSeriesTrendlineType m_type;
int m_nPeriod;
CXTPChartSeries *m_pSource;
};
AFX_INLINE CXTPChartSeries* CXTPChartSeriesTrendline::GetSource() const
{
return m_pSource;
}
AFX_INLINE XTPChartSeriesTrendlineType CXTPChartSeriesTrendline::GetType() const
{
return m_type;
}
AFX_INLINE int CXTPChartSeriesTrendline::GetPeriod() const
{
return m_nPeriod;
}
AFX_INLINE void CXTPChartSeriesTrendline::SetPeriod(int nPeriod)
{
m_nPeriod = nPeriod;
}
class _XTP_EXT_CLASS CXTPChartSeriesTrendlinePointCollection : public CXTPChartSeriesVirtualPointCollection
{
DECLARE_DYNAMIC(CXTPChartSeriesTrendlinePointCollection)
public:
//-----------------------------------------------------------------------
// Summary:
// Constructs a CXTPChartSeriesTrendlinePointCollection object.
// Remarks:
//-----------------------------------------------------------------------
CXTPChartSeriesTrendlinePointCollection();
//-------------------------------------------------------------------------
// Summary:
// Destroys a CXTPChartSeriesTrendlinePointCollection object, handles cleanup
//-------------------------------------------------------------------------
virtual ~CXTPChartSeriesTrendlinePointCollection();
public:
virtual CXTPChartSeriesPoint* GetAt(int nIndex) const;
virtual int GetCount() const;
protected:
CXTPChartSeriesTrendline *m_pTrendline;
friend class CXTPChartSeriesTrendline;
};
#endif //#if !defined(__XTPCHARTTRENDLINE_H__)