2
Copyright (c) 1993-2008, Cognitive Technologies
5
����������� ��������� ��������������� � ������������� ��� � ���� ��������� ����,
6
��� � � �������� �����, � ����������� ��� ���, ��� ���������� ��������� �������:
8
* ��� ��������� ��������������� ��������� ���� ������ ���������� ���������
9
���� ����������� �� ��������� �����, ���� ������ ������� � �����������
11
* ��� ��������� ��������������� ��������� ���� � ������������ �/��� �
12
������ ����������, ������������ ��� ���������������, ������ �����������
13
��������� ���� ���������� �� ��������� �����, ���� ������ ������� �
14
����������� ����� �� ��������.
15
* �� �������� Cognitive Technologies, �� ����� �� ����������� �� �����
16
���� ������������ � �������� �������� ��������� �/��� �����������
17
���������, ���������� �� ���� ��, ��� ���������������� �����������
20
��� ��������� ������������� ����������� ��������� ���� �/��� ������� ������ "���
21
��� ����" ��� ������-���� ���� ��������, ���������� ���� ��� ���������������,
22
������� �������� ������������ �������� � ����������� ��� ���������� ����, �� ��
23
������������� ���. �� �������� ��������� ���� � �� ���� ������ ����, �������
24
����� �������� �/��� �������� �������������� ���������, �� � ���� ������ ��
25
��Ѩ� ���������������, ������� ����� �����, ���������, ����������� ���
26
������������� ������, ��������� � �������������� ��� ���������� ����������
27
������������� ������������� ��������� (������� ������ ������, ��� ������,
28
������� ���������, ��� ������ �/��� ������ �������, ���������� ��-�� ��������
29
������� ��� �/��� ������ ��������� �������� ��������� � ������� �����������,
30
�� �� ������������� ����� ��������), �� �� ������������� ���, ���� ���� �����
31
�������� ��� ������ ���� ���� �������� � ����������� ����� ������� � ������.
33
Redistribution and use in source and binary forms, with or without modification,
34
are permitted provided that the following conditions are met:
36
* Redistributions of source code must retain the above copyright notice,
37
this list of conditions and the following disclaimer.
38
* Redistributions in binary form must reproduce the above copyright notice,
39
this list of conditions and the following disclaimer in the documentation
40
and/or other materials provided with the distribution.
41
* Neither the name of the Cognitive Technologies nor the names of its
42
contributors may be used to endorse or promote products derived from this
43
software without specific prior written permission.
45
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
46
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
47
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
48
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
49
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
50
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
51
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
52
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
53
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
54
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
60
#include "clinedefs.h"
67
#define CLINE_FUNC FUN_EXPO
69
#define CLINE_FUNC FUN_IMPO
78
#define CLINE_MAXNAME 260
81
// #define Handle void *
84
CLINE_FUNC(Bool32) CLINE_Init(Word16 wHeightCode,Handle parent);
85
CLINE_FUNC(Bool32) CLINE_Done();
86
CLINE_FUNC(Word32) CLINE_GetReturnCode();
87
CLINE_FUNC(Int8 *) CLINE_GetReturnString(Word32 dwError);
88
CLINE_FUNC(Bool32) CLINE_GetExportData(Word32 dwType, void * pData);
89
CLINE_FUNC(Bool32) CLINE_SetImportData(Word32 dwType, void * pData);
90
/////////////////////////////////////////////////////////////
97
CLINE_FNCLINE_Reset = 1,
98
CLINE_FNCLINE_CreateContainer,
99
CLINE_FNCLINE_DeleteContainer,
100
CLINE_FNCLINE_GetFirstContainer,
101
CLINE_FNCLINE_GetNextContainer,
102
CLINE_FNCLINE_GetMainContainer,
103
CLINE_FNCLINE_CleanContainer,
104
CLINE_FNCLINE_GetLineCount,
105
CLINE_FNCLINE_GetFirstLine,
106
CLINE_FNCLINE_GetNextLine,
107
CLINE_FNCLINE_AddNewLine,
108
CLINE_FNCLINE_DelLine,
109
CLINE_FNCLINE_DelAllLines,
110
CLINE_FNCLINE_GetLineData,
111
CLINE_FNCLINE_SetLineData,
112
CLINE_FNCLINE_GetEventCount,
113
CLINE_FNCLINE_GetFirstEvent,
114
CLINE_FNCLINE_GetNextEvent,
115
CLINE_FNCLINE_AddNewEvent,
116
CLINE_FNCLINE_DelEvent,
117
CLINE_FNCLINE_DelAllEvents,
118
CLINE_FNCLINE_GetEventData,
119
CLINE_FNCLINE_SetEventData,
120
CLINE_FNCLINE_GetCutPointCount,
121
CLINE_FNCLINE_GetFirstCutPoint,
122
CLINE_FNCLINE_GetNextCutPoint,
123
CLINE_FNCLINE_AddNewCutPoint,
124
CLINE_FNCLINE_DelCutPoint,
125
CLINE_FNCLINE_DelAllCutPoints,
126
CLINE_FNCLINE_GetCutPointData,
127
CLINE_FNCLINE_SetCutPointData,
128
CLINE_FNCLINE_GetCompCount,
129
CLINE_FNCLINE_GetFirstComp,
130
CLINE_FNCLINE_GetNextComp,
131
CLINE_FNCLINE_AddNewComp,
132
CLINE_FNCLINE_DelComp,
133
CLINE_FNCLINE_DelAllComps,
134
CLINE_FNCLINE_GetCompData,
135
CLINE_FNCLINE_SetCompData,
136
CLINE_FNCLINE_GetEventInvCount,
137
CLINE_FNCLINE_GetFirstEventInv,
138
CLINE_FNCLINE_GetNextEventInv,
139
CLINE_FNCLINE_AddNewEventInv,
140
CLINE_FNCLINE_DelEventInv,
141
CLINE_FNCLINE_DelAllEventInvs,
142
CLINE_FNCLINE_GetEventInvData,
143
CLINE_FNCLINE_SetEventInvData,
144
CLINE_FNCLINE_GetCutPointInvCount,
145
CLINE_FNCLINE_GetFirstCutPointInv,
146
CLINE_FNCLINE_GetNextCutPointInv,
147
CLINE_FNCLINE_AddNewCutPointInv,
148
CLINE_FNCLINE_DelCutPointInv,
149
CLINE_FNCLINE_DelAllCutPointInvs,
150
CLINE_FNCLINE_GetCutPointInvData,
151
CLINE_FNCLINE_SetCutPointInvData,
152
CLINE_FNCLINE_CopyData
153
} CLINE_EXPORT_ENTRIES;
156
/* �������� ������� */
157
#define DEC_FUN(a,b,c) typedef a (*FN##b)c; CLINE_FUNC(a) b c
158
DEC_FUN(void, CLINE_Reset, (void));
159
DEC_FUN(CLINE_handle, CLINE_CreateContainer, (Bool32 Main));
160
DEC_FUN(void, CLINE_DeleteContainer, (CLINE_handle container));
161
DEC_FUN(CLINE_handle, CLINE_GetFirstContainer, (void));
162
DEC_FUN(CLINE_handle, CLINE_GetNextContainer, (CLINE_handle container));
163
DEC_FUN(CLINE_handle, CLINE_GetMainContainer, (void));
164
DEC_FUN(void, CLINE_CleanContainer, (CLINE_handle container));
166
DEC_FUN(int, CLINE_GetLineCount, (CLINE_handle container));
167
DEC_FUN(CLINE_handle, CLINE_GetFirstLine, (CLINE_handle container));
168
DEC_FUN(CLINE_handle, CLINE_GetNextLine, (CLINE_handle line_prev));
169
DEC_FUN(CLINE_handle, CLINE_AddNewLine, (CLINE_handle container));
170
DEC_FUN(void, CLINE_DelLine, (CLINE_handle container,CLINE_handle line));
171
DEC_FUN(void, CLINE_DelAllLines, (CLINE_handle container));
172
DEC_FUN(CPDLine, CLINE_GetLineData, (CLINE_handle line));
173
DEC_FUN(Bool32, CLINE_SetLineData, (CLINE_handle line,CPDLine cpdata));
175
DEC_FUN(int, CLINE_GetEventCount, (CLINE_handle line));
176
DEC_FUN(CLINE_handle, CLINE_GetFirstEvent, (CLINE_handle line));
177
DEC_FUN(CLINE_handle, CLINE_GetNextEvent, (CLINE_handle event));
178
DEC_FUN(CLINE_handle, CLINE_AddNewEvent, (CLINE_handle line));
179
DEC_FUN(void, CLINE_DelEvent, (CLINE_handle line,CLINE_handle event));
180
DEC_FUN(void, CLINE_DelAllEvents, (CLINE_handle line));
181
DEC_FUN(CPDEvent, CLINE_GetEventData, (CLINE_handle event));
182
DEC_FUN(Bool32, CLINE_SetEventData, (CLINE_handle event,CPDEvent cpdata));
184
DEC_FUN(int, CLINE_GetCutPointCount, (CLINE_handle line));
185
DEC_FUN(CLINE_handle, CLINE_GetFirstCutPoint, (CLINE_handle line));
186
DEC_FUN(CLINE_handle, CLINE_GetNextCutPoint, (CLINE_handle cupoint));
187
DEC_FUN(CLINE_handle, CLINE_AddNewCutPoint, (CLINE_handle line));
188
DEC_FUN(void, CLINE_DelCutPoint, (CLINE_handle line,CLINE_handle cupoint));
189
DEC_FUN(void, CLINE_DelAllCutPoints, (CLINE_handle line));
190
DEC_FUN(CPDCutPoint, CLINE_GetCutPointData, (CLINE_handle cupoint));
191
DEC_FUN(Bool32, CLINE_SetCutPointData, (CLINE_handle cupoint,CPDCutPoint cpdata));
193
DEC_FUN(int, CLINE_GetCompCount, (CLINE_handle line));
194
DEC_FUN(CLINE_handle, CLINE_GetFirstComp, (CLINE_handle line));
195
DEC_FUN(CLINE_handle, CLINE_GetNextComp, (CLINE_handle comp));
196
DEC_FUN(CLINE_handle, CLINE_AddNewComp, (CLINE_handle line));
197
DEC_FUN(void, CLINE_DelComp, (CLINE_handle line,CLINE_handle comp));
198
DEC_FUN(void, CLINE_DelAllComps, (CLINE_handle line));
199
DEC_FUN(CPDComponent, CLINE_GetCompData, (CLINE_handle comp));
200
DEC_FUN(Bool32, CLINE_SetCompData, (CLINE_handle comp,CPDComponent cpdata));
202
DEC_FUN(int, CLINE_GetEventInvCount, (CLINE_handle event));
203
DEC_FUN(CLINE_handle, CLINE_GetFirstEventInv, (CLINE_handle event));
204
DEC_FUN(CLINE_handle, CLINE_GetNextEventInv, (CLINE_handle inv));
205
DEC_FUN(CLINE_handle, CLINE_AddNewEventInv, (CLINE_handle event));
206
DEC_FUN(void, CLINE_DelEventInv, (CLINE_handle event,CLINE_handle inv));
207
DEC_FUN(void, CLINE_DelAllEventInvs, (CLINE_handle event));
208
DEC_FUN(CPDInterval, CLINE_GetEventInvData, (CLINE_handle inv));
209
DEC_FUN(Bool32, CLINE_SetEventInvData, (CLINE_handle inv,CPDInterval cpdata));
211
DEC_FUN(int, CLINE_GetCutPointInvCount, (CLINE_handle cupoint));
212
DEC_FUN(CLINE_handle, CLINE_GetFirstCutPointInv, (CLINE_handle cupoint));
213
DEC_FUN(CLINE_handle, CLINE_GetNextCutPointInv, (CLINE_handle inv));
214
DEC_FUN(CLINE_handle, CLINE_AddNewCutPointInv, (CLINE_handle cupoint));
215
DEC_FUN(void, CLINE_DelCutPointInv, (CLINE_handle cupoint,CLINE_handle inv));
216
DEC_FUN(void, CLINE_DelAllCutPointInvs, (CLINE_handle cupoint));
217
DEC_FUN(CPDInterval, CLINE_GetCutPointInvData, (CLINE_handle inv));
218
DEC_FUN(Bool32, CLINE_SetCutPointInvData, (CLINE_handle inv,CPDInterval cpdata));
219
DEC_FUN(Bool32, CLINE_MoveLine, (CLINE_handle container_to, CLINE_handle container_from, CLINE_handle line));
220
DEC_FUN(Bool32, CLINE_CopyData, (void* to,const void* from,int size));