Форум программистов, компьютерный форум CyberForum.ru

Вывод из API значения в массив. - C++

Восстановить пароль Регистрация
 
vadcom
Сообщений: n/a
25.09.2010, 17:15     Вывод из API значения в массив. #1
Уважаемые форумчане. Помогите, пожалуйста, есть стороннее API некоторый код на с++. Мне необходимо написать программу, которая записывает в массив данных close, open , low в интервале 15 минут (10.00, 10.15, 10.30, 10.45 и т.д.)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
#if !defined(__GTCHART_H__)
#define __GTCHART_H__
 
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
 
#include "..\Inc32\GTChart32.h"
#include "GTAPI_API.h"
#include "GTPtrList.h"
 
inline int CalcChartBarIndex(int nSeconds, int nChartType)
{
    if((nSeconds % nChartType) == 0)
        return nSeconds / nChartType;
    else
        return nSeconds / nChartType + 1;
}
 
/*! \ingroup cpp
*/
/*! \struct GTChart
    \brief One chart information. The same to GTChart32 or tagGTChart32.
 
    \copydoc tagGTChart32
*/
#define GTChart GTChart32
 
/*
struct GTChart : public GTChart32 
{
};
*/
/*! \struct GTChart2
    \brief [Internal used] One chart information. The same to GTChart232 or tagGTChart232.
 
    \copydoc tagGTChart232
*/
struct GTChart2 : public GTChart232
{
public:
    GTChart2()
    {
    }
 
    GTChart2(const GTChart32 &rcd)
    {
        *this = rcd;
    }
 
    GTChart2(const GTPrint32 &rcd, int nChartType)
    {
        gdate.dwDate = 0;
        minutes = CalcChartBarIndex((rcd.gtime.chHour * 60 + rcd.gtime.chMin) * 60 + rcd.gtime.chSec, nChartType) * nChartType;
 
        for(int i = valUser0; i <= valMax_Value; ++i)
            dblValue[i] = 0;
 
        dblValue[valOpen]   = rcd.dblPrice;
        dblValue[valClose]  = rcd.dblPrice;
        dblValue[valHigh]   = rcd.dblPrice;
        dblValue[valLow]    = rcd.dblPrice;
        dblValue[valVolume] = rcd.dwShares;
    }
 
    GTChart2 &operator=(const GTChart32 &rcd)
    {
        gdate.dwDate = rcd.gdate.dwDate;
        minutes = rcd.gtime.chHour * 60 + rcd.gtime.chMin;
 
        for(int i = valUser0; i <= valMax_Value; ++i)
            dblValue[i] = 0;
 
        dblValue[valOpen]   = rcd.dblOpen;
        dblValue[valClose]  = rcd.dblClose;
        dblValue[valHigh]   = rcd.dblHigh;
        dblValue[valLow]    = rcd.dblLow;
        dblValue[valVolume] = rcd.dwVolume;
 
        return *this;
    }
 
    GTChart2 &Merge(const GTChart232 &rcd)
    {
        minutes = rcd.minutes;
        dblValue[valClose] = rcd.dblValue[valClose];
        dblValue[valVolume] += rcd.dblValue[valVolume];
 
        if(dblValue[valHigh]    < rcd.dblValue[valHigh])
            dblValue[valHigh]   = rcd.dblValue[valHigh];
        if(dblValue[valLow] > rcd.dblValue[valLow])
            dblValue[valLow]    = rcd.dblValue[valLow];
 
        return *this;
    }
};
 
class GTStudy;
 
typedef CList<GTStudy *, GTStudy *> CListStudies;
typedef CArray<GTChart2, const GTChart2 &> CArrayCharts;
 
/*! \struct GTCharts
    \brief The list for chart information. 
 
    The API can generate the charts from the prints automatically. To use the API with the charts, you can:
    - 1. Create the GTStock as before;
    - 2. Set GTStock::m_bChartFromPrint=TRUE;
    - 3. Read from the GTStock::m_charts, which is a GTCharts object. The method GTCharts::GetValue() can be very helpful.
    
    GTCharts is a CArray object. So all the method of CArray can be applied.
*/
class GTAPI_API GTCharts : public CArrayCharts
{
protected:
    BOOL            m_bTransferring;
    BOOL            m_nChartType;       // Seconds
 
public:
    CListStudies    m_studies;
 
public:
    GTCharts();
    virtual ~GTCharts();
 
    virtual void ResetContent();
    virtual int Dump(FILE *fp, int nLevel) const;
 
public:
    int Refresh();
    int Display();
 
    int Add(const GTPrint32 &rcd);
    int Add(const GTChart32 &rcd);
    int Add(const GTChart2 &rcd);
 
public:
    int CalcStudiesAll();
    int CalcStudies(int index);
 
public:
    double GetValue(int nValIdx, int nIndex) const
        { return GetAt(nIndex).dblValue[nValIdx]; }
 
protected:
    int AddPrint(const GTPrint32 &rcd);
};
 
#endif // !defined(__GTCHART_H__)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.09.2010, 17:15     Вывод из API значения в массив.
Посмотрите здесь:

Вывод значения переменной на экран C++
Форматированный вывод значения переменной C++
Вывод значения C++
Вывод значения функции C++
C++ Вывод значения двух переменных
C++ Вывод больше заданного значения
C++ Массив 5х5. Вывод на печать номер строки и столбца и адреса , где они хранятся, для элементов, значения которых равны X...
Написать программу, в которой создается двухмерный массив, значения вводятся с клавиатуры,потом значения умножаются по строкам - access violation C++
Вывод максимального и минимального значения C++
C++ Вывод значения типа enum C++
C++ Вывод значения из структуры
C++ Вывод значения из функции

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 18:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru