/tomo/pyhst

To get this branch, use:
bzr branch http://darksoft.org/webbzr/tomo/pyhst

« back to all changes in this revision

Viewing changes to hst_cpu/cpumain.c

  • Committer: Suren A. Chilingaryan
  • Date: 2011-04-06 09:59:26 UTC
  • Revision ID: csa@dside.dyndns.org-20110406095926-e5w5zgtcwsl3cr75
Add COPYING and fix license statements

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
 
2
1
/* ##  The PyHST program   is Copyright (C) 2002-2008 of the  */
3
2
/* ##  European Synchrotron Radiation Facility (ESRF). */
4
3
 
5
4
/* ##  You may use, distribute and copy the PyMCA XRF Toolkit under the terms of */
6
 
/* ##  GNU General Public License version 2, which is displayed below, or (at your */
 
5
/* ##  GNU General Public License version 3, which is displayed below, or (at your */
7
6
/* ##  option) any later version. */
8
7
 
9
 
/* ## ------------------------------------------------------------------------- */
10
 
 
11
 
/* ##               GNU GENERAL PUBLIC LICENSE */
12
 
/* ##                  Version 2, June 1991 */
13
 
 
14
 
/* ##  Copyright (C) 1989, 1991 Free Software Foundation, Inc. */
15
 
/* ##                        51 Franklin Steet, Fifth Floor, Boston, MA 02110-1301, USA */
16
 
/* ##  Everyone is permitted to copy and distribute verbatim copies */
17
 
/* ##  of this license document, but changing it is not allowed. */
18
 
 
19
 
/* ##                       Preamble */
20
 
 
21
 
/* ##   The licenses for most software are designed to take away your */
22
 
/* ## freedom to share and change it.  By contrast, the GNU General Public */
23
 
/* ## License is intended to guarantee your freedom to share and change free */
24
 
/* ## software--to make sure the software is free for all its users.  This */
25
 
/* ## General Public License applies to most of the Free Software */
26
 
/* ## Foundation's software and to any other program whose authors commit to */
27
 
/* ## using it.  (Some other Free Software Foundation software is covered by */
28
 
/* ## the GNU Library General Public License instead.)  You can apply it to */
29
 
/* ## your programs, too. */
30
 
 
31
 
/* ##   When we speak of free software, we are referring to freedom, not */
32
 
/* ## price.  Our General Public Licenses are designed to make sure that you */
33
 
/* ## have the freedom to distribute copies of free software (and charge for */
34
 
/* ## this service if you wish), that you receive source code or can get it */
35
 
/* ## if you want it, that you can change the software or use pieces of it */
36
 
/* ## in new free programs; and that you know you can do these things. */
37
 
 
38
 
/* ##   To protect your rights, we need to make restrictions that forbid */
39
 
/* ## anyone to deny you these rights or to ask you to surrender the rights. */
40
 
/* ## These restrictions translate to certain responsibilities for you if you */
41
 
/* ## distribute copies of the software, or if you modify it. */
42
 
 
43
 
/* ##   For example, if you distribute copies of such a program, whether */
44
 
/* ## gratis or for a fee, you must give the recipients all the rights that */
45
 
/* ## you have.  You must make sure that they, too, receive or can get the */
46
 
/* ## source code.  And you must show them these terms so they know their */
47
 
/* ## rights. */
48
 
 
49
 
/* ##   We protect your rights with two steps: (1) copyright the software, and */
50
 
/* ## (2) offer you this license which gives you legal permission to copy, */
51
 
/* ## distribute and/or modify the software. */
52
 
 
53
 
/* ##   Also, for each author's protection and ours, we want to make certain */
54
 
/* ## that everyone understands that there is no warranty for this free */
55
 
/* ## software.  If the software is modified by someone else and passed on, we */
56
 
/* ## want its recipients to know that what they have is not the original, so */
57
 
/* ## that any problems introduced by others will not reflect on the original */
58
 
/* ## authors' reputations. */
59
 
 
60
 
/* ##   Finally, any free program is threatened constantly by software */
61
 
/* ## patents.  We wish to avoid the danger that redistributors of a free */
62
 
/* ## program will individually obtain patent licenses, in effect making the */
63
 
/* ## program proprietary.  To prevent this, we have made it clear that any */
64
 
/* ## patent must be licensed for everyone's free use or not licensed at all. */
65
 
 
66
 
/* ##   The precise terms and conditions for copying, distribution and */
67
 
/* ## modification follow. */
68
 
 
69
 
/* ##               GNU GENERAL PUBLIC LICENSE */
70
 
/* ##    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION */
71
 
 
72
 
/* ##   0. This License applies to any program or other work which contains */
73
 
/* ## a notice placed by the copyright holder saying it may be distributed */
74
 
/* ## under the terms of this General Public License.  The "Program", below, */
75
 
/* ## refers to any such program or work, and a "work based on the Program" */
76
 
/* ## means either the Program or any derivative work under copyright law: */
77
 
/* ## that is to say, a work containing the Program or a portion of it, */
78
 
/* ## either verbatim or with modifications and/or translated into another */
79
 
/* ## language.  (Hereinafter, translation is included without limitation in */
80
 
/* ## the term "modification".)  Each licensee is addressed as "you". */
81
 
 
82
 
/* ## Activities other than copying, distribution and modification are not */
83
 
/* ## covered by this License; they are outside its scope.  The act of */
84
 
/* ## running the Program is not restricted, and the output from the Program */
85
 
/* ## is covered only if its contents constitute a work based on the */
86
 
/* ## Program (independent of having been made by running the Program). */
87
 
/* ## Whether that is true depends on what the Program does. */
88
 
 
89
 
/* ##   1. You may copy and distribute verbatim copies of the Program's */
90
 
/* ## source code as you receive it, in any medium, provided that you */
91
 
/* ## conspicuously and appropriately publish on each copy an appropriate */
92
 
/* ## copyright notice and disclaimer of warranty; keep intact all the */
93
 
/* ## notices that refer to this License and to the absence of any warranty; */
94
 
/* ## and give any other recipients of the Program a copy of this License */
95
 
/* ## along with the Program. */
96
 
 
97
 
/* ## You may charge a fee for the physical act of transferring a copy, and */
98
 
/* ## you may at your option offer warranty protection in exchange for a fee. */
99
 
 
100
 
/* ##   2. You may modify your copy or copies of the Program or any portion */
101
 
/* ## of it, thus forming a work based on the Program, and copy and */
102
 
/* ## distribute such modifications or work under the terms of Section 1 */
103
 
/* ## above, provided that you also meet all of these conditions: */
104
 
 
105
 
/* ##     a) You must cause the modified files to carry prominent notices */
106
 
/* ##     stating that you changed the files and the date of any change. */
107
 
 
108
 
/* ##     b) You must cause any work that you distribute or publish, that in */
109
 
/* ##     whole or in part contains or is derived from the Program or any */
110
 
/* ##     part thereof, to be licensed as a whole at no charge to all third */
111
 
/* ##     parties under the terms of this License. */
112
 
 
113
 
/* ##     c) If the modified program normally reads commands interactively */
114
 
/* ##     when run, you must cause it, when started running for such */
115
 
/* ##     interactive use in the most ordinary way, to print or display an */
116
 
/* ##     announcement including an appropriate copyright notice and a */
117
 
/* ##     notice that there is no warranty (or else, saying that you provide */
118
 
/* ##     a warranty) and that users may redistribute the program under */
119
 
/* ##     these conditions, and telling the user how to view a copy of this */
120
 
/* ##     License.  (Exception: if the Program itself is interactive but */
121
 
/* ##     does not normally print such an announcement, your work based on */
122
 
/* ##     the Program is not required to print an announcement.) */
123
 
 
124
 
/* ## These requirements apply to the modified work as a whole.  If */
125
 
/* ## identifiable sections of that work are not derived from the Program, */
126
 
/* ## and can be reasonably considered independent and separate works in */
127
 
/* ## themselves, then this License, and its terms, do not apply to those */
128
 
/* ## sections when you distribute them as separate works.  But when you */
129
 
/* ## distribute the same sections as part of a whole which is a work based */
130
 
/* ## on the Program, the distribution of the whole must be on the terms of */
131
 
/* ## this License, whose permissions for other licensees extend to the */
132
 
/* ## entire whole, and thus to each and every part regardless of who wrote it. */
133
 
 
134
 
/* ## Thus, it is not the intent of this section to claim rights or contest */
135
 
/* ## your rights to work written entirely by you; rather, the intent is to */
136
 
/* ## exercise the right to control the distribution of derivative or */
137
 
/* ## collective works based on the Program. */
138
 
 
139
 
/* ## In addition, mere aggregation of another work not based on the Program */
140
 
/* ## with the Program (or with a work based on the Program) on a volume of */
141
 
/* ## a storage or distribution medium does not bring the other work under */
142
 
/* ## the scope of this License. */
143
 
 
144
 
/* ##   3. You may copy and distribute the Program (or a work based on it, */
145
 
/* ## under Section 2) in object code or executable form under the terms of */
146
 
/* ## Sections 1 and 2 above provided that you also do one of the following: */
147
 
 
148
 
/* ##     a) Accompany it with the complete corresponding machine-readable */
149
 
/* ##     source code, which must be distributed under the terms of Sections */
150
 
/* ##     1 and 2 above on a medium customarily used for software interchange; or, */
151
 
 
152
 
/* ##     b) Accompany it with a written offer, valid for at least three */
153
 
/* ##     years, to give any third party, for a charge no more than your */
154
 
/* ##     cost of physically performing source distribution, a complete */
155
 
/* ##     machine-readable copy of the corresponding source code, to be */
156
 
/* ##     distributed under the terms of Sections 1 and 2 above on a medium */
157
 
/* ##     customarily used for software interchange; or, */
158
 
 
159
 
/* ##     c) Accompany it with the information you received as to the offer */
160
 
/* ##     to distribute corresponding source code.  (This alternative is */
161
 
/* ##     allowed only for noncommercial distribution and only if you */
162
 
/* ##     received the program in object code or executable form with such */
163
 
/* ##     an offer, in accord with Subsection b above.) */
164
 
 
165
 
/* ## The source code for a work means the preferred form of the work for */
166
 
/* ## making modifications to it.  For an executable work, complete source */
167
 
/* ## code means all the source code for all modules it contains, plus any */
168
 
/* ## associated interface definition files, plus the scripts used to */
169
 
/* ## control compilation and installation of the executable.  However, as a */
170
 
/* ## special exception, the source code distributed need not include */
171
 
/* ## anything that is normally distributed (in either source or binary */
172
 
/* ## form) with the major components (compiler, kernel, and so on) of the */
173
 
/* ## operating system on which the executable runs, unless that component */
174
 
/* ## itself accompanies the executable. */
175
 
 
176
 
/* ## If distribution of executable or object code is made by offering */
177
 
/* ## access to copy from a designated place, then offering equivalent */
178
 
/* ## access to copy the source code from the same place counts as */
179
 
/* ## distribution of the source code, even though third parties are not */
180
 
/* ## compelled to copy the source along with the object code. */
181
 
 
182
 
/* ##   4. You may not copy, modify, sublicense, or distribute the Program */
183
 
/* ## except as expressly provided under this License.  Any attempt */
184
 
/* ## otherwise to copy, modify, sublicense or distribute the Program is */
185
 
/* ## void, and will automatically terminate your rights under this License. */
186
 
/* ## However, parties who have received copies, or rights, from you under */
187
 
/* ## this License will not have their licenses terminated so long as such */
188
 
/* ## parties remain in full compliance. */
189
 
 
190
 
/* ##   5. You are not required to accept this License, since you have not */
191
 
/* ## signed it.  However, nothing else grants you permission to modify or */
192
 
/* ## distribute the Program or its derivative works.  These actions are */
193
 
/* ## prohibited by law if you do not accept this License.  Therefore, by */
194
 
/* ## modifying or distributing the Program (or any work based on the */
195
 
/* ## Program), you indicate your acceptance of this License to do so, and */
196
 
/* ## all its terms and conditions for copying, distributing or modifying */
197
 
/* ## the Program or works based on it. */
198
 
 
199
 
/* ##   6. Each time you redistribute the Program (or any work based on the */
200
 
/* ## Program), the recipient automatically receives a license from the */
201
 
/* ## original licensor to copy, distribute or modify the Program subject to */
202
 
/* ## these terms and conditions.  You may not impose any further */
203
 
/* ## restrictions on the recipients' exercise of the rights granted herein. */
204
 
/* ## You are not responsible for enforcing compliance by third parties to */
205
 
/* ## this License. */
206
 
 
207
 
/* ##   7. If, as a consequence of a court judgment or allegation of patent */
208
 
/* ## infringement or for any other reason (not limited to patent issues), */
209
 
/* ## conditions are imposed on you (whether by court order, agreement or */
210
 
/* ## otherwise) that contradict the conditions of this License, they do not */
211
 
/* ## excuse you from the conditions of this License.  If you cannot */
212
 
/* ## distribute so as to satisfy simultaneously your obligations under this */
213
 
/* ## License and any other pertinent obligations, then as a consequence you */
214
 
/* ## may not distribute the Program at all.  For example, if a patent */
215
 
/* ## license would not permit royalty-free redistribution of the Program by */
216
 
/* ## all those who receive copies directly or indirectly through you, then */
217
 
/* ## the only way you could satisfy both it and this License would be to */
218
 
/* ## refrain entirely from distribution of the Program. */
219
 
 
220
 
/* ## If any portion of this section is held invalid or unenforceable under */
221
 
/* ## any particular circumstance, the balance of the section is intended to */
222
 
/* ## apply and the section as a whole is intended to apply in other */
223
 
/* ## circumstances. */
224
 
 
225
 
/* ## It is not the purpose of this section to induce you to infringe any */
226
 
/* ## patents or other property right claims or to contest validity of any */
227
 
/* ## such claims; this section has the sole purpose of protecting the */
228
 
/* ## integrity of the free software distribution system, which is */
229
 
/* ## implemented by public license practices.  Many people have made */
230
 
/* ## generous contributions to the wide range of software distributed */
231
 
/* ## through that system in reliance on consistent application of that */
232
 
/* ## system; it is up to the author/donor to decide if he or she is willing */
233
 
/* ## to distribute software through any other system and a licensee cannot */
234
 
/* ## impose that choice. */
235
 
 
236
 
/* ## This section is intended to make thoroughly clear what is believed to */
237
 
/* ## be a consequence of the rest of this License. */
238
 
 
239
 
/* ##   8. If the distribution and/or use of the Program is restricted in */
240
 
/* ## certain countries either by patents or by copyrighted interfaces, the */
241
 
/* ## original copyright holder who places the Program under this License */
242
 
/* ## may add an explicit geographical distribution limitation excluding */
243
 
/* ## those countries, so that distribution is permitted only in or among */
244
 
/* ## countries not thus excluded.  In such case, this License incorporates */
245
 
/* ## the limitation as if written in the body of this License. */
246
 
 
247
 
/* ##   9. The Free Software Foundation may publish revised and/or new versions */
248
 
/* ## of the General Public License from time to time.  Such new versions will */
249
 
/* ## be similar in spirit to the present version, but may differ in detail to */
250
 
/* ## address new problems or concerns. */
251
 
 
252
 
/* ## Each version is given a distinguishing version number.  If the Program */
253
 
/* ## specifies a version number of this License which applies to it and "any */
254
 
/* ## later version", you have the option of following the terms and conditions */
255
 
/* ## either of that version or of any later version published by the Free */
256
 
/* ## Software Foundation.  If the Program does not specify a version number of */
257
 
/* ## this License, you may choose any version ever published by the Free Software */
258
 
/* ## Foundation. */
259
 
 
260
 
/* ##   10. If you wish to incorporate parts of the Program into other free */
261
 
/* ## programs whose distribution conditions are different, write to the author */
262
 
/* ## to ask for permission.  For software which is copyrighted by the Free */
263
 
/* ## Software Foundation, write to the Free Software Foundation; we sometimes */
264
 
/* ## make exceptions for this.  Our decision will be guided by the two goals */
265
 
/* ## of preserving the free status of all derivatives of our free software and */
266
 
/* ## of promoting the sharing and reuse of software generally. */
267
 
 
268
 
/* ##                       NO WARRANTY */
269
 
 
270
 
/* ##   11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY */
271
 
/* ## FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN */
272
 
/* ## OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES */
273
 
/* ## PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED */
274
 
/* ## OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF */
275
 
/* ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS */
276
 
/* ## TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE */
277
 
/* ## PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, */
278
 
/* ## REPAIR OR CORRECTION. */
279
 
 
280
 
/* ##   12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING */
281
 
/* ## WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR */
282
 
/* ## REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, */
283
 
/* ## INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING */
284
 
/* ## OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED */
285
 
/* ## TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY */
286
 
/* ## YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER */
287
 
/* ## PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE */
288
 
/* ## POSSIBILITY OF SUCH DAMAGES. */
289
 
 
290
 
/* ##                END OF TERMS AND CONDITIONS */
291
 
 
292
 
/* ##       How to Apply These Terms to Your New Programs */
293
 
 
294
 
/* ##   If you develop a new program, and you want it to be of the greatest */
295
 
/* ## possible use to the public, the best way to achieve this is to make it */
296
 
/* ## free software which everyone can redistribute and change under these terms. */
297
 
 
298
 
/* ##   To do so, attach the following notices to the program.  It is safest */
299
 
/* ## to attach them to the start of each source file to most effectively */
300
 
/* ## convey the exclusion of warranty; and each file should have at least */
301
 
/* ## the "copyright" line and a pointer to where the full notice is found. */
302
 
 
303
 
/* ##     <one line to give the program's name and a brief idea of what it does.> */
304
 
/* ##     Copyright (C) <year>  <name of author> */
305
 
 
306
 
/* ##     This program is free software; you can redistribute it and/or modify */
307
 
/* ##     it under the terms of the GNU General Public License as published by */
308
 
/* ##     the Free Software Foundation; either version 2 of the License, or */
309
 
/* ##     (at your option) any later version. */
310
 
 
311
 
/* ##     This program is distributed in the hope that it will be useful, */
312
 
/* ##     but WITHOUT ANY WARRANTY; without even the implied warranty of */
313
 
/* ##     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the */
314
 
/* ##     GNU General Public License for more details. */
315
 
 
316
 
/* ##     You should have received a copy of the GNU General Public License */
317
 
/* ##     along with this program; if not, write to the Free Software */
318
 
/* ##     Foundation, Inc., 51 Franklin Steet, Fifth Floor, */
319
 
/* ##     Boston, MA 02110-1301, USA. */
320
 
 
321
 
 
322
 
/* ## Also add information on how to contact you by electronic and paper mail. */
323
 
 
324
 
/* ## If the program is interactive, make it output a short notice like this */
325
 
/* ## when it starts in an interactive mode: */
326
 
 
327
 
/* ##     Gnomovision version 69, Copyright (C) year name of author */
328
 
/* ##     Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. */
329
 
/* ##     This is free software, and you are welcome to redistribute it */
330
 
/* ##     under certain conditions; type `show c' for details. */
331
 
 
332
 
/* ## The hypothetical commands `show w' and `show c' should show the appropriate */
333
 
/* ## parts of the General Public License.  Of course, the commands you use may */
334
 
/* ## be called something other than `show w' and `show c'; they could even be */
335
 
/* ## mouse-clicks or menu items--whatever suits your program. */
336
 
 
337
 
/* ## You should also get your employer (if you work as a programmer) or your */
338
 
/* ## school, if any, to sign a "copyright disclaimer" for the program, if */
339
 
/* ## necessary.  Here is a sample; alter the names: */
340
 
 
341
 
/* ##   Yoyodyne, Inc., hereby disclaims all copyright interest in the program */
342
 
/* ##   `Gnomovision' (which makes passes at compilers) written by James Hacker. */
343
 
 
344
 
/* ##   <signature of Ty Coon>, 1 April 1989 */
345
 
/* ##   Ty Coon, President of Vice */
346
 
 
347
 
/* ## This General Public License does not permit incorporating your program into */
348
 
/* ## proprietary programs.  If your program is a subroutine library, you may */
349
 
/* ## consider it more useful to permit linking proprietary applications with the */
350
 
/* ## library.  If this is what you want to do, use the GNU Library General */
351
 
/* ## Public License instead of this License. */
352
 
 
353
 
/* ## ------------------------------------------------------------------------- */
354
 
 
355
 
 
356
8
#include<string.h>
357
9
#include <stdio.h>
358
10
#include <stdlib.h>