08 March 2002: * added plug_crender.c 21 May 2002: * added rickr directory containing r_idisp.[ch], r_misc.[ch], r_new_resam_dset.[ch] and Makefile * added new program 3dresample (rickr/3dresample.c) * modified Makefile.INCLUDE to build rickr directory 06 June 2002: * added @SUMA_Make_Spec_FS 20 June 2002: * added @make_stim_file 21 June 2002: * modified afni_plugin.c, NLfit_model.c and thd_get1D.c to validate directories * added rickr/AFNI.changes.rickr 01 July 2002: * added rai orientation to plug_crender.c * added plug_crender.so target to Makefile.INCLUDE for use of librickr.a 02 July 2002: * modified 3dresample - fully align dataset to the master (not just dxyz and orient) - removed '-zeropad' option (no longer useful with new alignment) * modified r_new_resma_dset.[ch] - r_new_resam_dset() now takes an additional mset argument, allowing a master alignment dataset (overriding dxyz and orient inputs) * modified plug_crender.c to pass NULL for the new mset argument to r_new_resam_dset() * modified @SUMA_AlignToExperiment, removing '-zeropad' argument when running program 3dresample 15 July 2002: * added @SUMA_Make_Spec_SF and @make_stim_file to SCRIPTS in Makefile.INCLUDE 29 July 2002: * modified plug_crender.c to allow arbitrary orientation and grid spacing of functional overlay (no longer needs to match underlay) * modified r_new_resam_dset.c to set view type to that of the master * updated VERSION of 3dresample to 1.2 (to note change to r_new_resam_dset) 05 August 2002: * modified plug_crender.c (rv 1.5) to align crosshairs with master grid * added ENTRY() and RETURN() statements 11 September 2002: * added rickr/file_tool.[ch] * modified rickr/Makefile and Makefile.INCLUDE to be able to build file_tool (note that file_tool will not yet be built automatically) * modified r_idisp.c to include r_idisp_vec3f() 20 September 2002: * modified thd_opendset.c so that HEAD/BRIK are okay in directory names (see 'fname' and 'offset' in THD_open_one_dataset()) 26 September 2002: * modified plug_crender.c - calculate and draw crosshairs directly - added debugging interface (access via 'dh' in opacity box) * modified cox_render.[ch] - pass rotation matrix pointer to CREN_render() * modified testcox.c - pass NULL to CREN_render() for rotation matrix pointer 01 October 2002: * modified Makefile.INCLUDE to build file_tool automatically 23 October 2002: * modified plug_crender.c so that Incremental rotation is the default 29 October 2002: * modified plug_second_dataset.c and plug_nth_dataset.c to update dataset pointers from idcodes on a RECEIVE_DSETCHANGE notification 22 November 2002: * added new program Hfile, including files rickr/Hfile.[ch] * modified rickr/Makefile and Makefile.INCLUDE to build Hfile 27 November 2002: * Hfile is now Imon * many modifications to Imon.[ch] (formerly Hfile.[ch]) - see rickr/Imon.c : history for version 1.2 * renamed Hfile.[ch] to Imon.[ch] * modified rickr/Makefile to reflect the name change to Imon * modified Makefile.INCLUDE to reflect the name change to Imon 13 December 2002: * Imon no longer depends on Motif - mcw_glob.[ch] are used locally as l_mcw_glob.[ch] - Imon.c now depends only on l_mcw_glob.[ch] - rickr/Makefile now compiles Imon.c and l_mcw_glob.c with -DDONT_USE_MCW_MALLOC 14 January 2003: * update 3dresample to clear warp info before writing to disk 15 January 2003: * The highly anticipated release of Imon 2.0!! - Imon now has optional rtfeedme functionality. - add files rickr/realtime.[ch] - modified rickr/Imon.[ch] - modified rickr/Makefile o to build .o files with -DDONT_USE_MCW_MALLOC o to use $(EXTRA_LIBS) for sockets on solaris machines - modified Makefile.INCLUDE o Imon now also depends on rickr/realtime.[ch] o pass $(EXTRA_LIBS) to the make under rickr 27 January 2003: * modified Makefile.solaris28_gcc : defined EXTRA_LIBS_2 (is EXTRA_LIBS without -lgen and -ldl) * modified Makefile.INCLUDE for Imon to use EXTRA_LIBS_2 * modified rickr/Makefile for Imon to use EXTRA_LIBS_2 28 January 2003: * modified Imon.[ch] to add '-nt VOLUMES_PER_RUN' option (revision 2.1) 02 February 2003: * modified Imon.[ch] to fail only after 4 I-file read failures (rv 2.2) 10 February 2003: * added a new SUMA program, 3dSurfMaskDump o added files SUMA/SUMA_3dSurfMaskDump.[ch] o modified SUMA_Makefile to make 3dSurfMaskDump o modified Makefile.INCLUDE, targets: suma_exec, suma_clean, suma_link, suma_install * modified Makefile.solaris2[67]_gcc, defining EXTRA_LIBS_2 11 February 2003: * minor updates to SUMA/SUMA_3dSurfMaskDump.c (for -help) * 3dSurfMaskDump rv 1.2: do not free structs at the end 13 February 2003: * 3dSurfMaskDump rv 1.2: redo rv1.2: free structs conditionally (and init) 14 February 2003: * 3dSurfMaskDump rv 1.3: optionally enable more SUMA debugging * modified Imon.[ch] (rv 2.3): added '-start_file' option 18 February 2003: * modified Imon.[ch] (rv 2.4), realtime.[ch] o added DRIVE_AFNI command to open a graph window (-nt points) o added '-drive_afni' option, to add to the above command o pass Imon command as a dataset NOTE * modified rickr/Makefile - added WARN_OPT 20 February 2003: * modified rickr/Imon.[ch] rickr/realtime.c (Imon rv 2.5) o appropriately deal with missing first slice of first volume o separate multiple DRIVE_AFNI commands o minor modifications to error messages 28 February 2003: * modified rickr/file_tool.[ch]: added '-quiet' option 25 March 2003: * modified Imon to version 2.6: Imon.[ch] realtime.[ch] o added -GERT_Reco2 option to output script o RT: only send good volumes to afni o RT: added -rev_byte_order option o RT: also open relevant image window o RT: mention starting file in NOTE command 01 May 2003: * modified mcw_glob.c and rickr/l_mcw_glob.c - removed #ifdef around #include * modified imseq.c - added #include 06 May 2003: * file_tool 1.3 - added interface for GEMS 4.x image files o added ge4_header.[ch] - all of the processing for 4.x images o added options for raw data display (disp_int2, disp_int4, disp_real4) o modified file_tool.[ch] - interface to ge4 o modified rickr/Makefile - file_tool depends on ge4_header.o o modified Makefile.INCLUDE - file_tool depends on ge4_header.o 09 May 2003: * modified 3dmaskdump.c o added -index option for Mike B o combined changes with Bob's 28 May 2003: * added SUMA/SUMA_3dSurf2Vol.[ch] 29 May 2003: * modified Makefile.INCLUDE and SUMA/SUMA_Makefile to build 3dSurf2Vol * 3dSurf2Vol (version 1.0) is now part of the suma build * file_tool version 2.0 : added ge4 study header info o modified ge4_header.[ch] rickr/file_tool.[ch] 03 June 2003: * modified ge4_header.[ch] to be called from mri_read.c * modified mri_read.c - added mri_read_ge4 and call from mri_read_file() * modified mrilib.h - added declaration for mri_read_ge4() * modified Makefile.INCLUDE - added ge4_header.o to MRI_OBJS for mri_read_file * modified file_tool (version 2.1) for slight change to ge4_read_header() 06 June 2003: * modified SUMA_3dSurfMaskDump.[ch] o now 3dSurfMaskDump version 2.0 o re-wrote program in terms of 3dSurf2Vol, to handle varying map types o added 'midpoint' map function 12 June 2003: * modifed SUMA_3dSurf2Vol.c - minor changes to help and s2v_fill_mask2() * modifed ge4_header.c to remove "static" warnings 17 June 2003: * modified SUMA_3dSurfMaskDump.[ch] -> version 2.1 o added 'ave' map function 19 June 2003: * modified SUMA_3dSurfMaskDump.[ch] -> version 2.2 o added -m2_index INDEX_TYPE for the option of indexing across nodes o set the default of -m2_steps to 2 o replace S2V with SMD in macros * modified SUMA_ParseCommands.c o In SUMA_FreeMessageListData(), do not free Message or Source, as they are added as static or local strings (but never alloc'd). 26 June 2003: * modified Imon.[ch], realtime.c to add axis offset functionality -> Imon version 2.7 27 June 2003: * modified Imon.c, realtime.c to pass BYTEORDER command to realtime plugin -> Imon version 2.8 * modified plug_realtime.c to handle BYTEORDER command 30 June 2003: * modified README.realtime to provide details of the BYTEORDER command * modified plug_realtime.c to accept BYTEORDER for MRI_complex images 21 July 2003: * modified SUMA_3dSurfMaskDump.[ch] -> version 2.3 - fixed a problem: voxels outside gpar dataset should be skipped (or get a special value, like 0) - added min/max distance output (at debug level > 0) 22 July 2003: * modified plug_crender.c to handle bigmode color bar (version 1.8) ** need to add bigmode information to widget storage * modified SUMA_3dSurf2Vol.[ch] -> version 1.2 - see 3dSurfMaskDump: skip nodes outside dataset space 27 July 2003: * modified 3dresample.c (v1.4), file_tool.[ch] (v2.2), Imon.c (v2.9), realtime.[ch] (v2.9), r_idisp.[ch] (v1.2) - added CHECK_NULL_STR() to questionable strings for printing (old glibc doesn't print (nil)) * modified Imon.h - increase IFM_EPSILON to 0.01 and IFM_MAX_DEBUG to 4 05 August 2003: * renamed SUMA_3dSurfMaskDump.[ch] to SUMA_3dVol2Surf.[ch] * modified Makefile.INCLUDE and SUMA/SUMA_Makefile_NoDev for 3dVol2Surf * modified SUMA_3dVol2Surf (major re-write -> version 3.0) - all output functions now go through dump_surf_3dt - dump_surf_3dt() is a generalized function to get an MRI_IMARR for one or a pair of nodes, by converting to a segment of points - added v2s_adjust_endpts() to apply segment endpoint modifications - added segment_imarr() to get the segment of points and fill the MRI_IMARR list (along with other info) - filter functions have been taken to v2s_apply_filter() - added min, max and seg_vals map functions (filters) - added options of the form -f_pX_XX to adjust segment endpoints - added -dnode option for specific node debugging - changed -output option to -out_1D - added new debug info - added checking of surface order (process from inner to outer) * modified Imon (-> v2.10): added '-sp SLICE_PATTERN' option 14 August 2003: * modified Imon.[ch], realtime.h: - added '-quit' option - allow both 'I.*' and 'i.*' filenames 15 August 2003: * modified 3dDeconvolve.c - only output timing with -jobs option * modified Makefile.INCLUDE - fix cygwin compile - created PROGRAM_EXE targets for Imon.exe, file_tool.exe, 3dresample.exe 20 August 2003: * modified Imon.c (-> v3.0) - retest errors before reporting them - major version change for high numbers, plus new warning output 02 September 2003: * modified Imon.c (->v3.1) - added '-gert_outdir OUTPUT_DIR' option 08 September 2003: * modified L_CREATE_SPEC write error to name correct directory 11 September 2003: * modified 3dfim+.c: read_one_time_series() was still using old 'filename' 17 September 2003: * modified SUMA_3dVol2Surf.c: fixed help info for '-cmask option' 21 September 2003: * modifited SUMA_3dVol2Surf.c: - added max_abs mapping function - added '-oob_index' and '-oob_value' options - added CHECK_NULL_STR macro 23 September 2003: * modifited SUMA_3dVol2Surf.c: added help for -no_header option 01 October 2003: * modified SUMA_3dVol2Surf.c: added -oom_value option and help example 02 October 2003: * major upgrades to 3dSurf2Vol (-> v2.0) - changes accepting surface data, surface coordinates, output data type, debug options, multiple sub-brick output, and segment alterations - added the following options: '-surf_xyz_1D', '-sdata_1D', '-data_expr', '-datum', '-dnode', '-dvoxel', '-f_index', '-f_p1_fr', '-f_pn_fr', '-f_p1_mm', '-f_pn_mm' 06 October 2003: * modified 2dImReg.c: is nsl == 0, use nzz for num_slices 07 October 2003: * modified plug_roiedit.[ch]: old/new -> Bold/Bnew for C++ compilation 08 October 2003: * modified @SUMA_AlignToExperiment to use tcsh instead of csh (for $#) 20 October 2003: * modified SUMA files SUMA_Load_Surface_Object.[ch] SUMA_MiscFunc.[ch] and SUMA_Surface_IO.[ch] to make non-error output optional via a debug flag - renamed the following functions to XXX_eng (engine functions): SUMA_Load_Surface_Object, SUMA_LoadSpec, SUMA_SurfaceMetrics, SUMA_Make_Edge_List, SUMA_FreeSurfer_Read - wrote functions with original names to call engines with debug flags set * modified SUMA_3dVol2Surf.c to call the new SUMA_LoadSpec_eng() (-> v3.5) * modified SUMA_3dSurf2Vol.c to call the new SUMA_LoadSpec_eng() (-> v2.1) * modified rickr/r_idisp.c to handle new ALLOW_DATASET_VLIST macro (-> v1.3) 21 October 2003: * modified SUMA_3dVol2Surf.c to complete the -f_keep_surf_order option (-> v3.6) 30 October 2003: * modifited 3dbucket.c to search for trailing view type extension from end (under -glueto option processing) * modified plug_realtime.c to compute function on registered data 05 November 2003: * modified SUMA_3dVol2Surf.c to include ENTRY() stuff (3dVol2Surf -> v3.7) 07 November 2003: * checked in an initial version of SurfMeasures (v0.2) - this is not a release version (this checkin is for backup) - supported functions are coord_A, coord_B, n_area_A, n_area_B, nodes, node_vol and thick 14 November 2003: * updates to SurfMeasures (v0.3 - not yet released) 19 November 2003: * more updates to SurfMeasures (v0.5) 01 December 2003: * finally!! SurfMeasures is ready for release (v1.0) - checked in v1.0 of SUMA/SUMA_SurfMeasures.[ch] * modified Makefile.INCLUDE for SurfMeasures * modified SUMA/SUMA_Makefile_NoDev for SurfMeasures 03 December 2003 * modified SUMA/SUMA_SurfMeasures.[ch] (v1.2) - added '-cmask' and '-nodes_1D' options 16 December 2003 * modified SUMA_Load_Surface_Object.[ch] - added functions: SUMA_spec_select_surfs(), SUMA_swap_spec_entries(), SUMA_unique_name_ind(), SUMA_coord_file(), swap_strings() - made change to restrict spec struct (and therefore surface loading) to surfaces named in a list * modified SUMA_SurfMeasures.[ch] (-> SurfMeasures v1.3) - added '-surf_A' and '-surf_B' to specify surfaces from the spec file (goes through new function SUMA_spec_select_surfs()) - fixed loss of default node indices (from -nodes_1D change) - added '-hist' option - display angle averages only if at least 1 total is computed * modified SUMA_3dVol2Surf.[ch] (-> 3dVol2Surf v3.8) - added '-surf_A' and '-surf_B' to specify surfaces from the spec file - depreciated option '-kso' - added '-hist' option 18 December 2003 * modified SUMA_3dSurf2Vol[ch] (-> 3dSurf2Vol v2.2) - added '-surf_A' and '-surf_B' to specify surfaces from the spec file - added '-hist' option * modified SUMA_3dSurf2Vol[ch] (-> 3dSurf2Vol v3.0) - removed requirement of 2 surfaces for most functions (this was not supposed to be so easy) 22 December 2003 * modified afni_graph.[ch] to add Mean and Sigma to bottom of graph window 07 January 2004 * modified 3dresample.c - added suggestion of 3dfractionize to -help output - added -hist option 13 January 2004 * modified Imon.[ch] realtime.[ch] - added '-zorder ORDER' option for slice patterns in real-time mode (the default has been changed from 'seq' to 'alt') - add '-hist' option 22 January 2004 * modified SUMA_3dVol2Surf.[ch] (-> 3dVol2Surf v3.9) - added use of normals to compute segments, instead of second surface (see options '-use_norms', '-norm_len', '-keep_norm_dir') - reversed order of '-hist' output * modified SUMA_SurfMeasures.[ch] (-> SurfMeasures v1.4) - fixed node coord output error when '-nodes_1D' gets used - added '-sv' option to examples (recommended) - reversed order of '-hist' output 23 January 2004 * modified SUMA_3dVol2Surf.c, SUMA_3dSurf2Vol.c and SUMA_SurfMeasures.c ( -> v4.0 -> v3.1 -> v 1.5 ) - SUMA_isINHmappable() is depricated, check with AnatCorrect field 29 January 2004 * modified plug_realtime.c : - allow 100 chars in root_prefix via PREFIX (from 31) - x-axis of 3-D motion graphs changed from time to reps - plot_ts_... functions now use reg_rep for x-axis values - reg_graph_xr is no longer scaled by TR - added (float *)reg_rep, for graphing with x == rep num - added RT_set_grapher_pinnums(), to call more than once - added GRAPH_XRANGE and GRAPH_YRANGE command strings for control over the scales of the motion graph - if GRAPH_XRANGE and GRAPH_YRANGE commands are both passed, do not display the final (scaled) motion graph * modified README.realtime with details on GRAPH_XRANGE and GRAPH_YRANGE 10 February 2004: * modified SUMA_3dSurf2Vol.c (-> v3.2) to add debug output for AnatCorrect * modified SUMA_3dVol2Surf.c (-> v4.1) to add debug output for AnatCorrect 11 February 2004: * modified SUMA_SurfMeasures.c (-> v1.6) to add debug output for AnatCorrect 13 February 2004: * modified README.realtime to include the GRAPH_EXPR command * modified plug_realtime.c: - added RT_MAX_PREFIX for incoming PREFIX command - if GRAPH_XRANGE or GRAPH_YRANGE is given, disable respective 'pushing' - added GRAPH_EXPR command, as explained in README.realtime - added parser functionality to convert 6 graphs to 1 via the expression * modified Imon.[ch], realtime.[ch] -> (Imon v3.3) - added '-rt_cmd' option for passing commands to the realtime plugin - the '-drive_cmd' option can now be used multiple times - the realtime zorder is defaulting to seq again (affects physical order) - passed lists of drive and RT commands to realtime plugin 18 February 2004: * modified SUMA_3dVol2Surf.[ch] (->v4.2) - add functionality for mapping functions that require sorting - added mapping functions 'median' and 'mode' 19 February 2004: * modified SUMA_3dVol2Surf.[ch] (->v4.3) to track 1dindex sources 20 February 2004: * modified plug_maxima.c - added ENTRY/RETURN calls - error: do not process last plane in find_local_maxima() 23 February 2004: * modified mri_dup.c to allow NN interpolation if AFNI_IMAGE_ZOOM_NN is Y * modified afni_pplug_env.c to add control for AFNI_IMAGE_ZOOM_NN * modified README.environment to add a description of AFNI_IMAGE_ZOOM_NN * modified SUMA_SurfMeasures.[ch] to add functions: 'n_avearea_A', 'n_avearea_B', 'n_ntri'