-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
2060 lines (1357 loc) · 54 KB
/
ChangeLog
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
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Mon Jul 24 22:07:36 2017 Ossama Othman <[email protected]>
* MaRC 0.9.8 released.
* This ChangeLog will no longer be maintained. See the NEWS file
for high level descriptions of changes, and git logs
(https://github.com/ossama-othman/MaRC or
https://sourceforge.net/projects/marc/) for specific change
details.
Fri Nov 11 23:53:43 2005 Ossama Othman <[email protected]>
* THANKS:
Updated list of contributors.
Fri Nov 11 23:36:39 2005 Ossama Othman <[email protected]>
* NEWS:
Updated with latest noteworthy changes.
* configure.ac:
Bumped up MaRC version.
* lib/MaRC/Makefile.am (pkginclude_HEADERS):
Moved `Interpolation_Strategy.h' from noinst_HEADERS to this
list of headers so that it is installed.
From Nathanael Nerode <neroden at astro dot cornell dot edu>.
* lib/MaRC/PhotoImage.cc (latlon2pix):
Determine visibility of given latitude/longitude by verifying
that the corresponding computed observation vector component
along the optical axis is not greater than the distance from the
observer to the body along the optical axis. This takes into
account an observer optical axis that is not in line with the
sub-observation point. The old calculation in the is_visible()
method assumed that the observer was pointed directly at the
sub-observation point.
(is_visible):
Removed old latitude/longitude visibility determination code.
It did not take into account the case where the observer was not
looking directly at the sub-observation point.
* lib/MaRC/PhotoImage.h (normal_range_):
Reintroduced this class attribute.
Wed Nov 9 10:59:33 2005 Ossama Othman <[email protected]>
* MaRC 0.9.6 released.
Wed Nov 9 10:56:38 2005 Ossama Othman <[email protected]>
* NEWS:
Updated with latest noteworthy changes.
* configure.ac:
Bumped up MaRC version.
* lib/MaRC/InterpolationStrategy.cpp:
New source file containing virtual InterpolatationStrategy
destructor.
* lib/MaRC/InterpolationStrategy.h (InterpolationStrategy):
Added virtual destructor, addresses memory management problems
when delete()ing subclasses through an InterpolationStrategy
base class pointer.
* lib/MaRC/Makefile.am (libMaRC_la_SOURCES):
Add new `InterpolationStrategy.cpp' file to list of sources.
* lib/MaRC/NullInterpolationStrategy.cpp:
* lib/MaRC/NullInterpolationStrategy.h:
* lib/MaRC/PhotoInterpolationStrategy.cpp:
* lib/MaRC/PhotoInterpolationStrategy.h:
Added virtual destructors since the InterpolationStrategy base
class now has one.
* lib/MaRC/PhotoImage.cc (PhotoImage):
Removed "normal_range_" from base member initializer list. It
is no longer a class member.
(finalize_setup):
Do not set "focal_length_pixels_" value from computed values if
focal length and scale are available. Reduces floating point
computation error. Thanks to Nathanael Nerode for pointing out
this problem and suggesting a fix.
* lib/MaRC/PhotoImage.h (normal_range_):
Removed this field. Since it is only used to compute a
temporary/intermediate value, it need not be a class member.
* lib/MaRC/misc.h (check):
Fixed logic error where result of "false" was returned in most
cases. Addresses incorrect configuration in PhotoImage class
and potentially use cases.
Tue Feb 8 12:34:16 2005 Ossama Othman <[email protected]>
* MaRC 0.9.5 released.
Tue Feb 8 12:25:38 2005 Ossama Othman <[email protected]>
* NEWS:
Updated with latest noteworthy changes.
* THANKS:
Added Krzysztof Findeisen.
* configure.ac:
Bumped up MaRC version.
Require Automake 1.9.4 or better.
* src/MapCommand.cpp (execute):
Cosmetic improvement to map progress output.
* src/marc.cc (main):
Fixed map corruption and redundant mapping problems that
occured when specifying more than one MaRC input file on the
command line to parse. Thanks to Krzysztof Findeisen
<kpf4 at cornell dot edu> for pointing out the problem.
Mon Nov 8 13:36:15 2004 Ossama Othman <[email protected]>
* configure.ac:
Removed check for document generation tools. Users shouldn't be
concerned with whether or not they exist, and maintainers should
know which tools are required.
* doc/Makefile.am:
Removed custom PDF, PostScript and HTML document generation
rules. Automake already generates rules for such document
types. This causes PDF documentation to be generated by
"texi2dvi --pdf" which is a good thing since the resulting PDF
file will contain a section menu and hyperlinks within the
document text.
Don't generate PostScript and HTML documentation by default.
Users can generate them if they want by invoking "make ps" or
"make html".
* doc/examples/Makefile.am (example_DATA, EXTRA_DIST):
Replaced these variables with the equivalent single variable
"dist_example_DATA".
Mon Nov 8 02:22:02 2004 Ossama Othman <[email protected]>
* MaRC 0.9.4 released.
Mon Nov 8 02:21:21 2004 Ossama Othman <[email protected]>
* NEWS:
Updated list of noteworthy changes for MaRC 0.9.4.
* configure.ac:
Bumped MaRC version to 0.9.4.
* src/Makefile.am:
Commented out MaRC-specific lexer file compilation rule. It is
no longer needed due to changes described below.
* src/calc.cc:
Improved const-correctness.
* src/lexer.ll:
* src/parse_scan.h:
* src/parse_scan.cc (yylex):
Disabled generation of a C++ scanner. It forced a dependency on
the FlexLexer.h header, which may not be installed on all
user platforms.
Moved actions in old yylex code to scanner lexer.ll file, and
removed yylex() implementation. The scanner generated yylex()
function will now suffice.
* src/marc.cc:
Replaced all C++ scanner related calls with the C-based scanner
calls.
* tests/MaRC_Prog_Test.sh:
New shell script that executes the MaRC program with a test
input file. This is also used as another regression test.
* tests/Makefile.am:
Added support for new MaRC_Prog_Test.sh script.
* tests/test.fits.gz:
* tests/test_map.inp:
Test source FITS file and MaRC input file to be used by
MaRC_Prog_Test.sh regression test.
Fri Nov 5 16:21:22 2004 Ossama Othman <[email protected]>
* Makefile.am (SUBDIRS):
Added "tests" directory to the subdirectory list.
* configure.ac:
Added "tests/Makefile" to the list of files to generate.
* tests/Data_Type_Test.cpp:
New regression test that verifies data types supported by MaRC
have sizes expected by the FITS standard.
* tests/NaN_Test.cpp:
New regression test that verifies the MaRC::NaN constant is
actually "Not-A-Number".
* tests/Makefile.am (TESTS, check_PROGRAMS):
Added new regression tests to the list of tests to build and run
when performing a "make check".
Wed Nov 3 22:24:04 2004 Ossama Othman <[email protected]>
* MaRC 0.9.3 released.
Wed Nov 3 22:15:01 2004 Ossama Othman <[email protected]>
* configure.ac:
Enhanced C library NaN constant detection to support additional
ways of retrieving the NaN constant. Addresses build errors on
Solaris.
Bumped MaRC version to 0.9.3.
* NEWS:
Updated list of noteworthy changes for MaRC 0.9.3.
* lib/MaRC/Makefile.am:
Added new NaN.cpp file to the MaRC library source list.
* lib/MaRC/NaN.h:
The MaRC::NaN constant is now defined externally rather than in
this header.
* lib/MaRC/NaN.cpp:
New source file containing MaRC::NaN constant definition.
Tue Nov 2 23:19:46 2004 Ossama Othman <[email protected]>
* MaRC 0.9.2 released.
Tue Nov 2 23:15:24 2004 Ossama Othman <[email protected]>
* NEWS:
Updated list of noteworthy changes for MaRC 0.9.2.
Tue Nov 2 21:06:48 2004 Ossama Othman <[email protected]>
* lib/MaRC/PolarStereographic.h:
* lib/MaRC/PolarStereographic.cpp:
* lib/MaRC/Makefile.am (pkginclude_HEADERS):
New Polar Stereographic projection.
* src/parse.yy:
Re-enabled Polar Stereographic projection support.
Tue Nov 2 14:11:46 2004 Ossama Othman <[email protected]>
* configure.ac:
Check if socket and nsl libraries must be linked to pull in
socket support. CFITSIO needs socket support for FTP and HTTP
file access. These libraries are generally needed on Solaris.
Issue an error message if NaN support was not found.
Bumped MaRC version to 0.9.2.
Tue Nov 2 09:19:21 2004 Ossama Othman <[email protected]>
* lib/MaRC/root_find.h:
New function template that determines the root of an equation
using the Newton-Raphson root finding method.
* lib/MaRC/Makefile.am (pkginclude_HEADERS):
Added new root_find.h header to the list of package headers.
Thu Oct 14 01:43:07 2004 Ossama Othman <[email protected]>
* lib/MaRC/Makefile.am (pkginclude_HEADERS):
Added new Mercator projection files to this list.
* lib/MaRC/Mercator.cpp:
* lib/MaRC/Mercator.h:
New Transverse Mercator (conformal) projection.
* lib/MaRC/OblateSpheroid.h (min_rad):
Removed this method. It wasn't very useful since determining
the minimum of two radii is very easy.
* lib/MaRC/Orthographic.cc:
Use std::{min,max}() rather than MaRC's deprecated {min,max}()
templates.
* lib/MaRC/SimpleCylindrical.cc (get_longitude):
* lib/MaRC/SimpleCylindrical.h (get_longitude):
Made this method "const". There is no reason why shouldn't be
so.
* lib/MaRC/misc.h:
Removed min() and max() function templates. No need to
reproduce functionality already provided by their STL
counterparts std::min() and std::max().
* src/parse.yy:
Enabled Mercator projection support.
Wed Oct 13 21:16:29 2004 Ossama Othman <[email protected]>
* MaRC 0.9.1 released.
Wed Oct 13 21:09:01 2004 Ossama Othman <[email protected]>
* lib/MaRC/Makefile.am (pkginclude_HEADERS):
Added missing "Matrix.h" and "Vector.h" headers.
Wed Oct 13 20:52:58 2004 Ossama Othman <[email protected]>
* configure.ac (MARC_BIN_VERSION, MARC_LIB_VERSION):
Do not hardcode these variable to "0.9". Use the
AC_PACKAGE_VERSION macro instead. Addresses problem where
incorrect version strings would be embedded in MaRC binaries.
Wed Oct 13 20:32:37 2004 Ossama Othman <[email protected]>
* NEWS:
Updated list of noteworthy changes for MaRC 0.9.1.
* configure.ac:
Bumped MaRC version to 0.9.1.
Wed Oct 13 16:43:20 2004 Ossama Othman <[email protected]>
* lib/MaRC/MapFactory.cc (plot):
Documented that data is clipped to fit within the map data type
range.
* lib/MaRC/MosaicImage.h (is_zero):
New static method that determines if a datum should be
considered zero (i.e. zero if less than some very small
threshold).
* lib/MaRC/MosaicImage.cc (is_zero):
Likewise.
(read_data):
Only average data point if it is non-zero since zero valued data
points generally correspond to "blank" areas in the image.
Addresses an averaging regression.
* lib/MaRC/Orthographic.cc (make_map):
Shortened body/planet center output.
* lib/MaRC/PhotoImage.cc (remove_sky):
Mask on-body zero/NaN image data points off the body. Improves
quality of maps when mosaicing a set of images of which a given
image may contain gaps in the on-body data. Note that the
source image data itself remains unchanged.
(read_data):
Fixed problem where disabling interpolation resulted in no data
being found in the image.
* lib/MaRC/PhotoImage.h (read_data):
Use "true" instead of "1" as the default boolean argument for
this method. They are equivalent but the former is more
modern.
Do not consider NaN data points as valid data.
Fixed weight computation code so that a weight is always
computed if weighted averaging is enabled by the user,
regardless of whether or not sky removal is enabled. The
weights computed without sky removal are generally suitable for
most mosaic maps, and are determined very quickly. Addresses
seams in image overlap regions in a mosaic map.
Simplified removed-sky scanning code by taking advantage of
the standard std::min() algorithm rather than use custom code
that did the same thing.
* lib/MaRC/PhotoInterpolationStrategy.cpp (interpolate):
Do not perform interpolation on image pixels containing a
"not-a-number" (NaN) value.
* lib/MaRC/Vector.h:
Cleaned up whitespace.
* src/PhotoImageFactory.cpp:
Disable interpolation by default, as documented.
* src/parse.yy:
Fixed a memory leak.
* doc/MaRC_input.texi:
Updated documentation for "AVERAGING: NONE" feature to
correspond to the new behavior detailed above.
Wed Oct 13 02:22:27 2004 Ossama Othman <[email protected]>
* configure.ac:
* lib/Makefile.am (SUBDIRS, DIST_SUBDIRS):
Removed TNT directory from the directory list. It is no longer
used.
* lib/MaRC/Matrix.h:
* lib/MaRC/Vector.h:
New mathematical matrix and vector implementations. They are
designed to be simple and fast, and are replacements for the
Template Numerical Toolkit implementations. The new
implementations have are slightly faster than the TNT
implementations.
* lib/MaRC/BodyData.h:
Updated doxygen documentation.
* lib/MaRC/Geometry.cc:
* lib/MaRC/Geometry.h:
* lib/MaRC/OblateSpheroid.cc:
* lib/MaRC/OblateSpheroid.h:
* lib/MaRC/PhotoImage.cc:
* lib/MaRC/PhotoImage.h:
Use new MaRC-specific matrix and vector implementations rather
than the slightly slower TNT implementations.
* lib/imageio/Makefile.am:
* lib/imageio/src/Makefile.am:
* lib/imageio/src/image_io.cc:
* lib/imageio/src/image_io.h:
Removed these files. They are no longer used or needed.
* lib/popt/AUTHORS:
* lib/popt/COPYING:
* lib/popt/COPYING.LIB:
* lib/popt/ChangeLog:
* lib/popt/INSTALL:
* lib/popt/Makefile.am:
* lib/popt/NEWS:
* lib/popt/README:
* lib/popt/aclocal.m4:
* lib/popt/config.cache:
* lib/popt/configure:
* lib/popt/configure.in:
* lib/popt/missing:
* lib/popt/mkinstalldirs:
* lib/popt/popt.c:
* lib/popt/popt.h:
* lib/popt/popt.ps:
* lib/popt/popt.spec:
Removed these files. They were never used.
* lib/tnt/Makefile.am:
* lib/tnt/tnt_cmat.h:
* lib/tnt/tnt_subscript.h:
* lib/tnt/tnt_vec.h:
Removed these files. MaRC no longer uses any Template Numerical
Toolkit files.
Mon Oct 11 02:20:54 2004 Ossama Othman <[email protected]>
* TODO
Removed items that have been completed.
* lib/MaRC/MapFactory.h:
Nuked trailing whitespace.
* lib/MaRC/OblateSpheroid.cc:
* lib/MaRC/Orthographic.cc:
* lib/MaRC/PhotoImage.cc:
* src/parse.yy:
Improved error messages so that they include invalid values when
applicable.
* src/PhotoImageFactory.cpp:
Likewise.
Fixed incorrect memory management of source and flat field image
arrays, i.e. use vector operator delete(), not scalar operator
delete() since the image arrays were allocated using the vector
(not to be confused with std::vector<>) version of operator
new().
Sun Oct 10 23:10:50 2004 Ossama Othman <[email protected]>
* configure.ac:
Require GNU Automake 1.9.2 or better. 1.9.2 has greatly
improved Makefile.in templates.
No longer any need to determine and define 32 bit integer type.
That is now done at compile-time using C++ partial template
specialization techniques.
* lib/MaRC/IfThenElse.h:
New template that allows one to select a type at compile-time
base on a given condition.
* lib/MaRC/Long.h:
New header containing MaRC::Long typedef. MaRC::Long is now
determined at compile-time rather than when the `configure'
script is executed.
* lib/MaRC/Makefile.am (pkginclude_HEADERS):
Added new IfThenElse.h and Long.h headers to the list of
MaRC package headers.
* src/FITS_traits.h:
Include "MaRC/Long.h" to pull in MaRC::Long typedef.
* src/lexer.ll:
Removed duplicate "IDENTITY" rule.
* src/parse_scan.h:
#undef yyFlexLexer before including "FlexLexer.h". This is
necessary to make it possible to use GNU Flex 2.5.31 generated
C++ scanners without "redefinition" compile-time errors.
Appears to be some "issues" with GNU Flex 2.5.31 generated C++
scanners.
Sun Oct 10 21:47:30 2004 Ossama Othman <[email protected]>
* configure.ac:
Issue an error message and exit immediately if the CFITSIO
library is not found. MaRC requires the CFITSIO library.
Tue Aug 3 17:06:38 2004 Ossama Othman <[email protected]>
* lib/MaRC/GLLGeometricCorrection.h:
* lib/MaRC/Image.h:
* lib/MaRC/InterpolationStrategy.h:
* lib/MaRC/MapFactory.h:
* lib/MaRC/MosaicImage.h:
* lib/MaRC/PhotoImage.h:
* lib/MaRC/SimpleCylindrical.h:
Updated Doxygen documentation.
* lib/MaRC/LongitudeImage.cc (read_data_i):
Wrap longitudes less than 0 and greater than or equal 360 into
the 0 to 360 degree longitude range.
* src/MapCommand.cpp (execute):
Added FITS HISTORY comment regarding the type of projection the
grid extension image corresponds to.
Commented out FITS BLANK keyword support for grid image. It
currently doesn't work as expected.
Tue Jul 6 20:44:34 2004 Ossama Othman <[email protected]>
* lib/MaRC/InterpolationStrategy.h:
Improved Doxygen documentation.
* lib/MaRC/LongitudeImage.cc (read_data_i):
Ensure that returned data falls within the 0-360 degree range.
* lib/MaRC/NullInterpolationStrategy.cpp:
* lib/MaRC/NullInterpolationStrategy.h:
Return data from given image without peforming interpolation
rather than do nothing at all. Addresses problem where no data
was mapped when interpolation is disabled.
* lib/MaRC/Orthographic.cc (initialized_):
* lib/MaRC/Orthographic.h (initialized_):
New flag that is set to "true" if the Orthographic projection
instance has been fully initialized.
* lib/MaRC/PhotoImage.cc:
Updated NullInterpolationStrategy constructor arguments to match
the latest updates to that class constructor.
(read_data):
Verify that retrieved data is not the NaN "not-a-number"
constant before returning it to the caller.
* lib/MaRC/PhotoInterpolationStrategy.cpp:
Verify that the data being interpolated is not the NaN
"not-a-number" constant before interpolating it.
* src/MapCommand.cpp (execute):
Added HISTORY keyword to grid extension image containing
projection name.
Tue Jul 6 02:12:27 2004 Ossama Othman <[email protected]>
* MaRC 0.9 released.
Tue Jul 6 01:56:45 2004 Ossama Othman <[email protected]>
* configure.ac:
Updated bug reporting address to my SourceForge e-mail address.
Do not require that the user have GNU Bison and Flex installed.
Only maintainers need those tools.
* NEWS:
Updated with summary of changes in MaRC 0.9.
* src/Command.h:
Removed this unused file.
* src/Makefile.am (noinst_HEADERS):
Added missing headers. Addresses "distcheck" make target
failures.
* src/MapCommand.cpp:
Include <unistd.h> to pull in unlink() function prototype.
* src/parse_scan.h:
Corrected "ValuePtr.h" include. "MaRC/ValuePtr.h", not
"ValuePtr.h".
Tue Jul 6 00:46:25 2004 Ossama Othman <[email protected]>
* src/MapCommand.cpp (execute):
Fixed FITS "AUTHOR" and "ORIGIN" keyword creation CFITSIO
calls. The code incorrectly took the address of the pointer to
the string. There was no need to take the address.
* src/lexer.ll:
Fixed "AUTHOR" and "ORIGIN" token actions so that a string
containing spaces is considered a single lexeme rather than
multiple ones.
Tue Jul 6 00:12:32 2004 Ossama Othman <[email protected]>
* lib/MaRC/PhotoImage.cc (read_data):
Corrected code flow so that weighted average scan is executed
when requested. Addresses some mosaic artifacts.
* lib/MaRC/PhotoInterpolationStrategy.cpp:
Fixed right sample and bottom line limits. There is no need to
subtract one from them.
* src/MapCommand.cpp (execute):
Unlink (erase) the output FITS file before attempting to create
it. CFITSIO complains about existing files.
* src/MapCommand_T.cpp (make_map_planes):
Update the FITS array offset "fpixel" after writing each image
plane by the number of elements in each plane. Fixes a problem
where map data was only written to the first plane in the FITS
array.
Mon Jul 5 23:04:10 2004 Ossama Othman <[email protected]>
* lib/MaRC/Orthographic.cc:
* lib/MaRC/Orthographic.h:
Updated to conform to current MapFactory<> base class
interface.
* lib/MaRC/SimpleCylindrical.cc:
* lib/MaRC/SimpleCylindrical.h:
Cleaned up BodyData memory management by taking of ValuePtr<>
template class.
* src/PhotoImageFactory.cpp (make):
Added FITS routine error reporting.
* src/parse.yy:
Reenabled orthographic correction.
Updated type of BodyData argument passed to SimpleCylindrical<>
template class constructor to match changes described above.
Mon Jul 5 17:01:08 2004 Ossama Othman <[email protected]>
* configure.ac (AC_CONFIG_SRCDIR):
Changed source file argument to this autoconf macro to
"lib/MaRC/PhotoImage.h". The previously used file no longer
exists.
* lib/MaRC/CosPhaseImage.cc:
* lib/MaRC/Mu0Image.cc:
* lib/MaRC/MuImage.cc:
Convert degree values to radians. Fixes problem where no data
could be mapped.
Initialize VirtualImage base class with a scale value of 10000.
This will be hardcoded for now. Flexibility will be addressed
at a later date.
* lib/MaRC/CosPhaseImage.h:
* lib/MaRC/Mu0Image.h:
* lib/MaRC/MuImage.h:
Improved constructor parameter documentation.
* lib/MaRC/GeometricCorrection.h:
* lib/MaRC/InterpolationStrategy.h:
* lib/MaRC/PhotometricCorrection.h:
Added MaRC::VP_traits<>::clone() template specialization that
copies objects polymorphically, thus avoiding "slicing".
* lib/MaRC/GLLGeometricCorrection.cc (clone):
* lib/MaRC/GLLGeometricCorrection.h (clone):
* lib/MaRC/NullGeometricCorrection.cc:
* lib/MaRC/NullGeometricCorrection.h:
* lib/MaRC/NullInterpolationStrategy.cpp:
* lib/MaRC/NullInterpolationStrategy.h:
* lib/MaRC/NullPhotometricCorrection.cc:
* lib/MaRC/NullPhotometricCorrection.h:
* lib/MaRC/PhotoInterpolationStrategy.cpp:
* lib/MaRC/PhotoInterpolationStrategy.h:
Added this method to allow the corresponding class to be used
correctly in a MaRC::ValuePtr<> template class.
* lib/MaRC/Grid.cc:
* lib/MaRC/Grid.h:
* lib/MaRC/Map.cc:
* lib/MaRC/Map.h:
* lib/MaRC/Image.cpp:
* lib/MaRC/Image.h:
* lib/MaRC/MapFactory.h:
Renamed MaRC::Map<> template class to MaRC::Image<>. There was
nothing map-specific about the class.
* lib/MaRC/MapFactory.cc:
Cast unsigned char percentage value to an unsigned int before
printing it to make sure a numerical value is printed, not the
corresponding ASCII character.
Reset cached old percentage value to zero upon reaching 100% to
allow progress output to be displayed in subsequent mapping
calls through the same MapFactory<> concrete instance.
* lib/MaRC/Map_traits.h:
New file containing traits used by MapFactory<> class when
plotting data.
* lib/MaRC/Orthographic.cc:
* lib/MaRC/Orthographic.h:
* lib/MaRC/SimpleCylindrical.cc:
* lib/MaRC/SimpleCylindrical.h:
Samples and lines are now passed to the make_make() method
rather than stored in the object itself.
Implemented clone() method as now required by the MapFactory<>
base class.
* lib/MaRC/PhotoImage.h:
Replaced strategy pointer members with their corresponding
"ValuePtr-ified" counterparts. Addresses memory management
issues that occur when using the compiler generated copy
constructor or assignment operator.
* lib/MaRC/PhotoImage.cc:
Fixed error that prevented the correct rotation matrix from
being selected.
* lib/MaRC/SourceImage.cc:
* lib/MaRC/SourceImage.h:
Removed unused minimum/maximum attributes and corresponding
accessor and mutator methods. They were unused and don't belong
in this class.
* lib/MaRC/VirtualImage.cc:
* lib/MaRC/VirtualImage.h:
Scale and offset retrieved data by configured amounts.
Allows fractional data values to be stored in integer type
maps.
* lib/MaRC/Makefile.am:
Removed obsolete Map.* files and added new Image.* and
Map_traits.h files to the appropriate source/header lists.
* lib/tnt/tnt_cmat.h:
* lib/tnt/tnt_vec.h:
Improved efficiency slightly and removed redundant null pointer
checks.
* src/MapCommand.cpp:
Corrected order of CFITSIO calls. Addresses problem where image
was not written to the output FITS file.
* src/MapCommand.h (initialize_FITS_image):
New pure virtual method all concrete MapCommand classes must
implement.
* src/MapCommand_T.cpp:
* src/MapCommand_T.h:
Implemented type-specific initialize_FITS_image() virtual
method.
Improved map progress output.
* src/PhotoImageFactory.cpp (make):
Removed debugging output.
* src/lexer.ll:
Corrected problem where generated scanner did not recognize
LATITUDE_TYPE keyword token and/or its arguments.
* src/marc.cc:
Nuked trailing whitespace.
* src/parse.yy:
Removed debugging output.
Deallocate string lexeme memory since such lexemes are copied
from the scanner's lexeme string buffer.
Fixed problem where minimum/maximum values were set to zero when
no such values were by the user.
* src/parse_scan.cc:
Copy the string lexeme from the scanner before returning the
token. Fixes problem where string values were overwritten
during subsequent scanner calls by the parser.
Sat Jul 3 23:39:23 2004 Ossama Othman <[email protected]>
* lib/MaRC/Map.h (minimum, maximum):
Added these Map_traits<> functions. The idea behind this trait
is to prevent data that is actually outside the valid data range
of the map data type from being * mapped. In particular, the
minimum value is "clipped" if necessary.
* lib/MaRC/MapFactory.h:
Cosmetic change. Renamed template parameter from "DATA_TYPE" to
"T". The former cluttered the code too much.
* lib/MaRC/MapFactory.cc (plot):
Clip the minimum and maximum values if necessary via the new
Map_traits<>::{minimum,maximum}() to make sure the retrieved
data can actually be represented properly in the map data type,
i.e. falls within the map data type range of valid values.
Cast the percent_complete unsigned char variable to an unsigned
int when outputing the progress message at the 20% intervals.
Fixes a problem ASCII characters were printed instead of the
numerical values.
* lib/MaRC/PhotoImage.cc:
Cosmetic change. Indent code according to MaRC conventions.
* src/PhotoImageFactory.cpp (make):
Corrected first column and row pixel values. Addresses an error
issued by CFITSIO.
* src/lexer.ll:
Removed spurious spaces that were causing GNU Flex to generate
incorrect token values in the generated scanner.
* src/marc.cc (main):
Catch C++ exceptions and display the message contained with
them. Return -1 immediately after.
* src/parse.yy:
* src/parse_scan.cc:
* src/parse_scan.h:
Updated to work with GNU Bison 1.875 generated parsers. The
changes are not backward compatible with most earlier versions