A hint: This file contains one or more very long lines, so maybe it is better readable using the pure text view mode that shows the contents as wrapped lines within the browser window.
1 -*- coding: utf-8 -*- 2 BRL-CAD Interface Change Policy 3 =============================== 4 5 This policy describes formal rules for changing an interface that 6 potentially impacts developers or users. The scope is limited to 7 public interfaces including developer application programming 8 interfaces (APIs), user application command-line interfaces (CLIs), 9 and graphical user interfaces (GUIs). The policy aims to balance 10 developer agility with interface stability. 11 12 All changes to BRL-CAD are expected to conform to this change policy. 13 Changes MUST either be: 14 15 A) MINIMALLY IMPACTING, or 16 B) FORMALLY DEPRECATED. 17 18 19 MINIMALLY IMPACTING 20 ------------------- 21 22 Changes deemed "minimally impacting" can be made at any time. For a 23 change to be considered as such, its effect must be strictly limited. 24 Most are itemized under MINIMALLY IMPACTING CHANGES. They MUST be: 25 26 A.1) a relatively new interface 27 28 Interfaces introduced recently are often subject to rapid 29 development change. New interfaces are not subject to formal 30 deprecation rules until they have been included in at least 31 TWO releases without change. 32 33 A.2) an appreciably broken interface 34 35 Interfaces that have been unusable for at least TWO releases 36 may be fixed, changed, or removed without notice. A broken 37 interface is one that does not perform its intended function 38 and does not have secondary utility. 39 40 A.3) an elementary change 41 42 Simple changes that are trivially accommodated without 43 conditional logic or manual inspection can be made at will. 44 It includes mechanical changes that can be automatically 45 updated by a single static regular expression substitution. 46 47 Examples include renaming, reordering parameters, adding 48 optional parameters, eliminating a duplicate equivalent 49 interface, adding parameters for implicit behavior, and 50 removing unused parameters. 51 52 53 FORMALLY DEPRECATED 54 ------------------- 55 56 Changes not minimally impacting must follow formal deprecation 57 process. This defers significant changes to major release points or 58 requires public notification in advance. Changes are documented in 59 this file first as DEPRECATED CHANGES then later as OBSOLETED CHANGES. 60 An interface may be changed: 61 62 B.1) during a major release (e.g. from 7.*.* to 8.*.*) 63 64 Any change may be made without notice. Major version number 65 releases imply intrinsic incompatibility or interface change. 66 67 B.2) during a minor release (e.g., from 7.26.* to 7.28.*) 68 69 The interface must be publicly deprecated beforehand with 70 advance notice given in at least TWO minor releases and after 71 at least 90 days elapsed since initial release announcement. 72 73 Public interfaces scheduled for change should be noted in this file 74 and visibly marked in the source code. This marking may be the 75 DEPRECATED keyword on function declarations, #warning "DEPRECATED ..." 76 pre-processor statements, @DEPRECATED source code comments, and 77 combinations thereof. 78 79 Where usage is not adversely affected, a run-time statement may be 80 displayed (typically "DEPRECATION WARNING: ..."). All call references 81 and documentation should be updated prior to obsoleting. 82 83 84 EXAMPLES 85 -------- 86 87 Example #1: rt_shootray() removal 88 89 It's decided during 7.50.3 development to remove the rt_shootray() 90 function. That does NOT qualify as "minimally impacting" because 91 there's no equivalent replacement and rt_shootray() has been published 92 and documented in more than two releases. The function gets listed as 93 DEPRECATED in the CHANGES file, marked as DEPRECATED in the API 94 header, and is published via the 7.50.4 release. 95 96 The soonest that function could be removed / obsoleted would be in 97 7.54.0 during 7.53.* development provided more than 90 days had passed 98 since the initial announcement. It could NOT be removed in 7.54.2 as 99 that's a patch version, prior to 7.54, nor during 7.54.0 if less than 100 90 days had passed since 7.50.6 was posted. 101 102 Example #2: bu_log() mod 103 104 It's decided during 7.48.1 development to modify bu_log() by adding an 105 additional optional enum parameter denoting a message type, e.g., 106 bu_log(INFO, ...). This change is considered "minimally impacting" 107 because it can be characterized by a simple regular expression (e.g., 108 "s/bu_log\(/bu_log(INFO, /g)" and calling codes are trivially 109 accommodated. All calls to bu_log() should be updated to the new form 110 prior to change announcement. 111 112 The function could be changed at any time so long as it's documented 113 under MINIMALLY IMPACTING CHANGES. 114 115 116 ********************************************************************** 117 *** DEPRECATED CHANGES *** 118 ********************************************************************** 119 (reverse chronological order) 120 121 The interfaces announced below are scheduled to significantly change 122 or be removed. They are categorized by the release in which 123 deprecation was first announced. If the interface change involved a 124 removal or transition, both the original and new interface names are 125 generally listed for reference. 126 127 Items marked with a "'" (single quote) are undocumented and may be 128 removed at any time. 129 130 7.32 131 ---- 132 include/bu/app.h 133 bu_brlcad_root: replaced by bu_dir 134 bu_brlcad_dir: replaced by bu_dir 135 136 include/bg/chull.h 137 All functions returning point arrays instead of index arrays. 138 Will be replaced by similarly named functions returning 139 indexes into provided points array, to allow the caller 140 to decide if new arrays are needed. [deprecated 7.32] 141 bg_polyline_2d_chull, bg_2d_chull, bg_3d_coplanar_chull, 142 bg_3d_chull 143 144 include/bu/exit.h 145 bu_backtrace and bu_crashreport will be replaced with versions 146 that take an optional parameter to pass in a full path from 147 the calling application. (Currently available as 148 bu_backtrace_app and bu_crashreport_app, these will 149 replace existing versions after deprecation is complete.) 150 151 MGED gui 152 The following will be removed from MGED's menu bar (unused 153 features, can be accomplished another way, or will be exposed 154 only as lower level settings when there are sensible defaults 155 that are seldom changed.) 156 157 Settings->Mouse Behavior->Pick Raytrace-Object(s) 158 159 7.30 160 ---- 161 ~/.density 162 automatic reading of .density file in home directory 163 materials need to be specified or imported [deprecated 7.28] 164 165 btclsh, bwish 166 Emacs key binding emulation 167 achieved by running btclsh in Emacs [deprecated 7.30] 168 169 include/bu/redblach.h 170 All redblack related functions, structures and macros 171 defined in libbu's redblack.h. Functions are: 172 bu_rb_create, bu_rb_delete, bu_rb_diagnose_tree, 173 bu_rb_summarize_tree, bu_rb_extreme, bu_rb_neighbor, 174 bu_rb_curr, bu_rb_free, bu_rb_insert, bu_rb_is_uniq, 175 bu_rb_set_uniqv, bu_rb_uniq_all_off, bu_rb_uniq_all_on, 176 bu_rb_uniq_on, bu_rb_uniq_off, bu_rb_rank, bu_rb_select, 177 bu_rb_search, bu_rb_walk 178 Use C++ containers set/map from std [deprecated 7.30] 179 180 nirt 181 Behavior available under the --old flag [deprecated 7.30] 182 183 7.28 184 ---- 185 include/bu/malloc.h 186 bu_ck_malloc_ptr, bu_mem_barriercheck, bu_prmem 187 replaced by modern memory analyzers [deprecated 7.28] 188 189 include/rt/mem.h 190 rt_memprint [deprecated 7.28] 191 192 include/vmath.h 193 VCOMB3, VCOMB3N, VJOIN4 194 Removed as inconsistent and unused API [deprecated 7.28] 195 196 MGED commands 197 ?devel, ?lib, aproposdevel, aproposlib, %, animmate, db_glob, 198 debugbu, debugdir, debuglib, debugmem, debugnmg, expand, 199 loadtk, match, memprint, preview, regdebug, regdef, rmats, rrt, 200 savekey, shaded_mode, sync 201 Removed as part of distillation effort [deprecated 7.28] 202 203 libtermio, libcursor 204 Public API scope reduction - any client code that needs 205 to interact with the terminal at these levels should handle 206 what is needed locally. 207 208 7.26 209 ---- 210 image tools 211 alias-pix' : incorporating into icv 212 asc2pix' : incorporating into icv 213 Removed as part of distillation effort [deprecated 7.26] 214 signal analysis tools 215 a-d', d-a', bw-a', i-a', u-a' : incorporating into cv 216 d-a', d-bw', d-f', d-i', d-u' : incorporating into cv 217 a-d', bw-d', c-d', f-d', i-d', u-d' : incorporating into cv 218 f-d', f-i', d-f', i-f', u-f', u-bw' : incorporating into cv 219 d2-c', double-asc' : incorporating into cv 220 Removed as part of distillation effort [deprecated 7.26] 221 include/bu/ptbl.h 222 BU_PTBL_BASEADDR, BU_PTBL_LASTADDR, BU_PTBL_END 223 Removed as private implementation detail [deprecated 7.26 224 include/bu/cmd.h 225 remove struct bu_cmdhist and struct bu_cmdhist_obj [deprecated 7.26] 226 BU_CMDHIST_NULL, BU_CMDHIST_OBJ_NULL, bu_cmdhist_histor, bu_cmdhist_add, 227 bu_cmdhist_curr, bu_cmdhist_nest, bu_cmdhist_prev [deprecated 7.26] 228 nirt 229 -T - use LIBRT_BOT_MINTIE environment variable instead [deprecated 7.26] 230 all global variables 231 global variables are no longer considered published public API [deprecated 7.26] 232 bn_mat_identity -> MAT_INIT_IDN or MAT_IDN() or NULL 233 include/bn.h 234 tp_setup, no longer needs to be public API [deprecated 7.26] 235 include/raytrace.h 236 curve_to_tcl_list 237 db_full_path_appendresult tcl_obj_to_int_array 238 tcl_obj_to_fastf_array tcl_list_to_int_array 239 tcl_list_to_fastf_array *_tcl_*, removal of all tcl-specific 240 API functions [deprecated 7.26] 241 include/rt/solid.h 242 shouldn't be public API - this level of detail belongs inside the display 243 manager [deprecated 7.26] 244 include/ged/defines.h 245 remove struct ged_drawable - shouldn't be public API [deprecated 7.26] 246 remove freesolid from struct ged - exposes struct solid [deprecated 7.26] 247 include/ged/view.h 248 remove current forms of dl_erasePathFromDisplay and invent_solid - they 249 expose the struct solid type [deprecated 7.26] 250 include/tclcad.h 251 tclcad_bn_mat_print tclcad_rt_parse_ray tclcad_rt_pr_cutter 252 tclcad_rt_pr_hit tclcad_rt_rt tclcad_rt_import_from_path, removal of all 253 tcl-specific API functions [deprecated 7.26] 254 librt, fast4-g 255 removal of CLINE entity support [deprecated 7.26] 256 mged 257 kill, killtree, killall, killrefs - replaced with rm command [deprecated 7.26] 258 259 rm comb obj1 obj2 comb1 ... -> new behavior: remove objects and empty combs from .g 260 original functionality replaced with rm comb/obj* comb/comb1 ... syntax [deprecated 7.26] 261 262 expand -> replaced by search -name <pattern> (previous docs indicating matching of 263 expand was regex were wrong - uses bu_fnmatch.) [deprecated 7.26] 264 265 pathlist, paths -> replaced by search [deprecated 7.26] 266 267 7.24 268 ---- 269 include/raytrace.h librt 270 RT_DBHASH and RT_DBNHASH [deprecated 7.24] 271 272 7.22 273 ---- 274 include/raytrace.h librt 275 nmg_model_break_e_on_v -> nmg_break_e_on_v [deprecation 7.22] 276 RT_GET_TREE -> BU_GET [deprecation 7.22] 277 RT_FREE_TREE -> BU_PUT [deprecation 7.22] 278 279 7.20 280 ---- 281 tclscripts/lib 282 Mged, Database, Db, Dm, Drawable, Display, QuadDisplay, View -> Ged [deprecated 7.20] 283 librt 284 bspline primitive [deprecated 7.20] 285 poly primitive [deprecated 7.20] 286 hf primitive [deprecated 7.20] 287 include/bu.h 288 bu_vls_init_if_uninit() -> bu_vls_init() [deprecated 7.20] 289 GNU Autotools configure compatibility script 290 ./configure -> cmake . [deprecated 7.20] 291 include/raytrace.h 292 rt_load_attrs() -> rt_gettrees_and_attrs() or db5_import_attributs() [deprecated 7.20] 293 294 7.18 295 ---- 296 include/raytrace.h rt_comb_internal members 297 region_id -> region_id attribute [deprecated 7.18] 298 aircode -> air attribute [deprecated 7.18] 299 GIFTmater -> material_id attribute [deprecated 7.18] 300 los -> los attribute [deprecated 7.18] 301 bu.h xdr API 302 BU_GLONGLONG() -> ntohll() [deprecated 7.18] 303 BU_GLONG() -> ntohl() [deprecated 7.18] 304 BU_GSHORT() -> ntohs() [deprecated 7.18] 305 bu_gshort() -> ntohs() [deprecated 7.18] 306 bu_glong() -> ntohl() [deprecated 7.18] 307 bu_pshort() -> htons() [deprecated 7.18] 308 bu_plong() -> htonl() [deprecated 7.18] 309 bu_plonglong() -> htonll() [deprecated 7.18] 310 db.h 311 rt_fastf_float() -> ntohf() [deprecated 7.18] 312 rt_mat_dbmat() -> htonf() [deprecated 7.18] 313 rt_dbmat_mat() -> ntohf() [deprecated 7.18] 314 mged 315 ?(*) -> ? -(*) [deprecated 7.18] 316 apropos(*) -> apropos -(*) [deprecated 7.18] 317 dbconcat -> db concat [deprecated 7.18] 318 dbupgrade -> db upgrade [deprecated 7.18] 319 dbversion -> db version [deprecated 7.18] 320 dbfind -> search [deprecated 7.18] 321 debug* -> debug [deprecated 7.18] 322 comb_std -> comb [deprecated 7.18] 323 comb_color -> comb [deprecated 7.18] 324 combmem -> comb [deprecated 7.18] 325 kill(*) -> kill [deprecated 7.18] 326 rotobj -> rot [deprecated 7.18] 327 qvrot -> rot -q -v [deprecated 7.18] 328 qorot -> rot -q [deprecated 7.18] 329 ([amov])rot -> rot -([amv]) [deprecated 7.18] 330 ([op])scale -> sca -(p) [deprecated 7.18] 331 ([op])translate -> tra -(p) [deprecated 7.18] 332 nmg_(*) -> nmg (*) [deprecated 7.18] 333 bot_(*) -> bot (*) [deprecated 7.18] 334 [so]ed -> edit [deprecated 7.18] 335 [tr]ed -> edit -t [deprecated 7.18] 336 ls -oA -> ls -O [deprecated 7.18] 337 draw -oA -> draw -O [deprecated 7.18] 338 erase -oA -> erase -O [deprecated 7.18] 339 erase_all -> erase -r [deprecated 7.18] 340 move_all -> move -r [deprecated 7.18] 341 query_ray -> nirt [deprecated 7.18] 342 vdraw -> draw -v [deprecated 7.18] 343 vnirt -> nirt -v [deprecated 7.18] 344 vquery_ray -> nirt -v [deprecated 7.18] 345 xpush -> push -x [deprecated 7.18] 346 347 7.16 348 ---- 349 struct bu_structparse 'i' format 350 'i' -> '%p' [deprecated 7.16] 351 reserved attributes and case-sensitivity 352 id -> region_id [deprecated 7.16] 353 GIFTmater -> material_id [deprecated 7.16] 354 GIFT_MATERIAL -> material_id [deprecated 7.16] 355 mat -> material_id [deprecated 7.16] 356 AIRCODE -> air [deprecated 7.16] 357 rgb -> color [deprecated 7.16] 358 oshader -> shader [deprecated 7.16] 359 include/raytrace.h 360 rt_prep_timer() -> bu_timer() [deprecated 7.16] 361 rt_get_timer() -> bu_elapsed() [deprecated 7.16] 362 363 7.14 364 ---- 365 mged 366 src/tclscripts/mged/bots.tcl [deprecated 7.14] 367 368 7.12 369 ---- 370 include/raytrace.h 371 rt_functab size -> growing ft_label and new callbacks [deprecated 7.12] 372 src/rt/viewarea.c 373 terminology and output format [deprecated 7.12] 374 375 pre 7.0 376 ------- 377 include/raytrace.h 378 struct hit.hit_point -> RT_HIT_POINT [deprecated pre-7.0] 379 struct hit.hit_normal -> RT_HIT_NORMAL [deprecated pre-7.0] 380 381 382 ********************************************************************** 383 *** OBSOLETED CHANGES *** 384 ********************************************************************** 385 (reverse chronological order) 386 387 7.30.2 388 ------ 389 ray tracing tools 390 lgt : functionally replaced by nirt 391 rtcell', rtfrac', rtpp, rtrad', rtrange, rtray, rtregis 392 Removed as part of distillation effort [deprecated 7.26] 393 converter tools 394 cy-g, euclid-g, euclid_format', euclid_unformat', g-euclid, 395 g-euclid1', g-tankill, intaval-g.py, viewpoint-g : obsolete formats 396 plot3-X, plot3-hpgl, plot3-tek : obsolete interface, see overlay command 397 plot3debug, xyz-plot3 : see plot3-asc,asc-plot3 398 bot-bldxf', bot_shell-vtk, g-nmg, nmg-bot, nmg-rib, nmg-sgp', 399 poly-bot, rt_bot_faces, : primitive-specific converters 400 Removed as part of distillation effort [deprecated 7.26] 401 image tools 402 cmap-fb, fb-cmap, fbcmrot : colormap support obsolete 403 fbed, cell-fb : outside scope 404 fbscanplot, polar-fb, bw-imp, pixinfo.sh : obsolete 405 png_info : incorporating into icv 406 pix-yuv', yuv-pix' : obsolete non-standard format 407 texturescale : obsolete implementation 408 pixcut, pixpaste : license, copyright cleanup 409 Removed as part of distillation effort [deprecated 7.26] 410 video & animation tools 411 anim_*', fbanim, chan_add', chan_mult, chan_permute, 412 pixflip-fb' : outside scope 413 pixfields', pixfieldsep' : outside scope 414 orbit.sh, rtwalk, scriptsort, script-tab', tabinterp, tabsup, 415 azel, bary 416 Removed as part of distillation effort [deprecated 7.26] 417 infrared & shapefactor tools 418 all_sf', if-X, ifdisp, pictx, showterm, firpass, secpass, shapefact 419 Removed as part of distillation effort [deprecated 7.26] 420 misc tools 421 fix_polysolids' : obsolete primitive 422 remapid : superseded by reid+remat 423 buffer : unnecessary network/stream buffering tool 424 hex : superseded by hexdump 425 Removed as part of distillation effort [deprecated 7.26] 426 fb-rle, rle-fb, bw-rle, pix-rle, rle-pix 427 All tools focused specifically on the RLE image format. [deprecated 7.26] 428 burst 429 remove termlib-based interactive menu interface [deprecated 7.26] 430 include/bu/hash.h 431 bu_hash_tbl_find, bu_set_hash_value, bu_get_hash_value, bu_get_hash_key, 432 bu_hash_tbl_add, bu_hash_tbl_print, bu_hash_tbl_free, bu_hash_tbl_first, 433 bu_hash_tbl_next, bu_hash_tbl_traverse, public structs bu_hash_entry and 434 bu_hash_tbl will be made private. 435 Replaced with new API [deprecated 7.26] 436 437 7.30.0 438 ------ 439 fbed, pp-fb 440 removes termcap use, no known users [deprecated 7.24] 441 src/irprep 442 all_sf, firpass, ir-X, irdisp, pictx, secpass, shapefact, showterm [deprecated 7.24] 443 include/raytrace librt 444 db_full_path_list_add(), db_free_full_path_list() [deprecated 7.24] 445 db_search_formplan(), db_search_freeplan(), db_search_full_paths() [deprecated 7.24] 446 db_search_unique_objects(), struct db_full_path_list [deprecated 7.24] 447 db_regexp_match() -> !bu_fnmatch() [deprecated 7.20] 448 db_regexp_match_all() -> db_ls() [deprecated 7.26] 449 mged 450 em, e_muves, l_muves, lm, read_muves, and t_muves MUVES-specific commands [deprecated 7.22] 451 include/bu.h 452 bu_parse_mm() [deprecated 7.22] 453 454 7.28.0 455 ------ 456 rt -f framerate 457 removed [minimally impacting] 458 pixdsplit, rt -d 459 removed, broken tool [minimally impacting] 460 libmultispectral, rttherm, ssamp-bw, ssampview, ssampview.tcl 461 removed, broken tools [minimally impacting] 462 dem-g 463 removed, superseded by gcv+GDAL [minimally impacting] 464 465 7.26.0 466 ------ 467 dbcp 468 dbcp -> dd [deprecated 7.18] 469 pov (mged) 470 removed, undocumented command with many alternatives [minimally impacting] 471 polybinout (mged) 472 removed, undocumented command, use plot [minimally impacting] 473 pl (mged) 474 removed, use plot [minimally impacting] 475 conf.h 476 removed - replaced with common.h [deprecated 7.0] 477 UtahRLE image tools 478 no longer installed by default with BRL-CAD - not used directly by 479 BRL-CAD tools [minimally impacting] 480 Tcl in libbu and libbn 481 no longer utilize or require Tcl [dependency eliminated] 482 Tcl/Tk man pages 483 no longer installed by default with BRL-CAD when the bundled Tcl/Tk is used 484 to build [minimally impacting] 485 include/dg.h 486 implementation detail no longer being exposed, use libged [deprecated 7.22] 487 autogen.sh && configure 488 GNU Autotools build system -> CMake build system [deprecated 7.20] 489 Dunn camera and Canon printer tools 490 dunncolor [deprecated 7.16] 491 dunnsnap [deprecated 7.16] 492 canonize [deprecated 7.16] 493 genptr_t/GENPTR_NULL 494 genptr_t -> void* [deprecated 7.16] 495 include/bu.h 496 bu_argv0() -> bu_basename(bu_argv0_full_path(), NULL) [deprecated 7.16] 497 include/dm_color.h 498 dm_color.h -> dm.h [deprecated 7.14] 499 include/fb.h 500 FB_WPIXEL -> fb_wpixel [deprecated 7.14] 501 include/raytrace.h 502 rt_fdiff -> NEAR_ZERO [deprecated 7.14] 503 rt_reldiff -> NEAR_ZERO [deprecated 7.14] 504 DIR_* -> RT_DIR_* [deprecated 7.14] 505 RT_HIT_NORM -> RT_HIT_NORMAL [deprecated 7.12] 506 include/vmath.h 507 VADD2_2D -> V2ADD2 [deprecated 7.14] 508 VSUB2_2D -> V2SUB2 [deprecated 7.14] 509 MAGSQ_2D -> MAG2SQ [deprecated 7.14] 510 VDOT_2D -> V2DOT [deprecated 7.14] 511 VMOVE_2D -> V2MOVE [deprecated 7.14] 512 VSCALE_2D -> V2SCALE [deprecated 7.14] 513 VJOIN1_2D -> V2JOIN1 [deprecated 7.14] 514 liborle 515 include/orle.h 516 remove liborle and the tools using it, fb-orle, orle-fb, orle-pix and 517 pix-orle [deprecated 7.20] 518 mged 519 make_bb -> bb [deprecated 7.16] 520 tops -g -u -> now default behavior [deprecated 7.14] 521 -n option -> -c option [deprecated 7.14] 522 per_line [deprecated 7.14] 523 SGI-specific tools 524 pl-sgi -> pl-fb [deprecated 7.16] 525 src/gtools 526 g_diff, g_lint, g_qa, g_transfer -> gdiff, glint, gqa, gtransfer [deprecated 7.14] 527 src/librt/cmd.c 528 rt_split_cmd() -> bu_argv_from_string() [deprecated 7.12] 529 any-png.sh 530 use pix tools [deprecated 7.16] 531 cadbug.sh 532 use sf.net tracker [deprecated 7.16] 533 cray.sh 534 obsolete hardware [deprecated 7.16] 535 pixwrite.sh 536 obsolete hardware [deprecated 7.16] 537 pixread.sh 538 obsolete hardware [deprecated 7.16] 539 sgisnap.sh 540 obsolete hardware [deprecated 7.16] 541 librtserver and Java Native Interface (JNI) bindings 542 removed, unused and undocumented, modern approach would be to 543 use a tool such as swig to generate bindings [minimally impacting] 544 545 7.24.2 546 ------ 547 .pl file suffix 548 .pl -> .plot3 [deprecated 7.16] 549 *-pl 550 *-pl -> *-plot3 [deprecated 7.16] 551 pl* 552 pl* -> plot3* [deprecated 7.16] 553 554 7.24.0 555 ------ 556 include/bu.h 557 bu_get_public_cpus() [deprecated 7.16] 558 bu_get_load_average() [deprecated 7.12] 559 bu_fopen_uniq() -> fopen() [deprecated 7.14] 560 src/other/jove 561 jove -> emacs [deprecated 7.14] 562 563 7.22.0 564 ------ 565 include/bu.h 566 %S format specifier -> %V format specifier for bu_vls [deprecated 7.14] 567 568 7.20.2 569 ------ 570 cat-fb 571 obsolete hardware 572 include/vmath.h 573 ELEMENTS_PER_PT -> ELEMENTS_PER_POINT [deprecated 7.12] 574 HVECT_LEN -> ELEMENTS_PER_HVECT [deprecated 7.12] 575 HPT_LEN -> ELEMENTS_PER_HPOINT [deprecated 7.12] 576 577 7.20.0 578 ------ 579 include/bu.h 580 bu_mro and related macros -> bu_attribute_value_set 581 582 7.18.2 583 ------ 584 include/raytrace.h 585 RT_HIT_NORM -> RT_HIT_NORMAL [deprecated pre-7.0] 586 g-shell.rect 587 g-shell.rect renamed to g-shell-rect [minor tool rename] 588 589 7.18.0 590 ------ 591 include/raytrace.h 592 db_free_external -> bu_free_external [deprecated pre-7.0] 593 include/wdb.h 594 mk_fastgen_region() -> mk_comb() [deprecated 7.12] 595 src/librt/bomb.c 596 rt_bomb() -> bu_bomb() [deprecated 7.10] 597 include/machine.h 598 machine.h -> common.h && bu.h [deprecated 7.10] 599 src/vas4 600 vas4 [deprecated 7.12] 601 602 7.16.4 603 ------ 604 include/raytrace.h 605 get_solidbitv() -> rt_get_solidbitv() [deprecated 7.16] 606 607 7.14.4 608 ------ 609 include/pkg.h 610 uses size_t for lengths in API calls 611 include/bu.h 612 bu_association() [unused] 613 614 7.14.0 615 ------ 616 include/raytrace.h 617 GET_HITMISS -> NMG_GET_HITMISS 618 mged 619 edcolor -> color -e 620 include/vmath.h 621 PI -> M_PI 622 M_SQRT2_DIV2 -> M_SQRT1_2 623 624 7.12.6 625 ------ 626 mged 627 binary -> bo [rename] 628 629 7.12.4 630 ------ 631 include/mater.h 632 rt_material_head -> rt_material_head() [deprecated 7.12] 633 include/raytrace.h 634 removed iterator from NMG_CK_HITMISS_LIST 635 include/bu.h 636 BU_QFLSTR -> BU_FLSTR 637 638 7.12.2 639 ------ 640 include/wdb.h 641 mk_trc() -> mk_trc_h() and mk_trc_top() [deprecated pre-7.0] 642 mk_bsolid() [deprecated pre-7.0] 643 mk_bsurf() [deprecated pre-7.0] 644 mk_strsol() -> mk_dsp(), mk_ebm(), mk_vol(), mk_submodel() [deprecated pre-7.0] 645 mk_rcomb(), mk_fcomb(), mk_memb() -> mk_lcomb() and mk_addmember() [deprecated pre-7.0] 646 mk_fwrite_internal() [deprecated pre-7.0] 647 648 7.12.0 649 ------ 650 include/common.h 651 NATURAL_IEEE -> bu_byteorder() == BU_BIG_ENDIAN || defined(WORDS_BIGENDIAN) 652 REVERSE_IEEE -> bu_byteorder() == BU_LITTLE_ENDIAN 653 include/bu.h 654 bu_log(char *, ...) -> bu_log(const char *, ...) [const] 655 bu_flog(FILE *, char *, ...) -> bu_flog(FILE *, const char *, ...) [const] 656 bu_vls_printf(struct bu_vls *, char *) -> bu_vls_printf(struct bu_vls *, const char *) [const] 657 bu_vls_sprintf(struct bu_vls *, char *) -> bu_vls_sprintf(struct bu_vls *, const char *) [const] 658 include/wdb.h 659 removed mk_poly() [deprecated pre-7.0] 660 removed mk_polysolid() [deprecated pre-7.0] 661 removed mk_fpoly() [deprecated pre-7.0] 662 removed write_shell_as_polysolid() [deprecated 6.0] 663 include/bu.h 664 char *bu_brlcad_path() -> const char *bu_brlcad_path() [const] 665 include/bn.h 666 bn_mat_zero() -> MAT_ZERO() [deprecated pre-7.0] 667 bn_mat_idn() -> MAT_IDN() [deprecated pre-7.0] 668 bn_mat_copy() -> MAT_COPY() [deprecated pre-7.0] 669 include/compat4.h 670 compat4.h -> bu.h && bn.h [deprecated 5.0] 671 include/raytrace.h 672 rt_overlap_quietly() -> struct application.a_logoverlap = rt_silent_logoverlap [deprecated pre 7.0] 673 include/bu.h 674 bu_brlcad_path() -> bu_brlcad_root() || bu_brlcad_data() [deprecated 7.4] 675 bu_tcl_brlcad_path() -> bu_tcl_brlcad_root() || bu_tcl_brlcad_data() [deprecated 7.4] 676 include/fb.h 677 fb_log(char *fmt) -> fb_log(const char *fmt) [const] 678 include/noalias-prag.h 679 removed [non-stdc] 680 include/noalias.h 681 removed [non-stdc] 682 src/librt/wdb_obj.c -> src/librt/db_obj.c 683 removed wdb_tree_cmd(), added dgo_tree_cmd() [rename] 684 mged 685 dbbinary -> binary [rename] 686 687 7.10.4 688 ------ 689 include/msr.h [pre 7.0] 690 msr.h -> bu.h 691 include/rtlist.h [pre 7.0] 692 rtlist.h -> bu.h 693 include/rtstring.h [pre 7.0] 694 rtstring.h -> bu.h 695 include/shortvect.h [pre 7.0] 696 include/shortvect-pr.h [pre 7.0] 697 698 7.10.2 699 ------ 700 include/raytrace.h 701 rt_version -> rt_version() [private] 702 include/[library].h (several) 703 [library]_version -> [library]_version() [private] 704 705 706 ********************************************************************** 707 *** MINIMALLY IMPACTING CHANGES *** 708 ********************************************************************** 709 (forward chronological order) 710 711 All minimally impacting changes are listed by release as regular 712 expressions. Unless noted otherwise, expressions are shown using Perl 713 syntax (i.e., the '(', ')', and '|' characters pertain to 714 subexpression captures, escaping with '\' matches literally. 715 Expressions should apply via: 716 717 perl -0777 -pi -e 'EXPRESSION' FILE 718 719 To apply an expression to an entire source tree, the following pattern 720 may work: 721 722 find . -type f -not -path "*.git/*" -regex '.*\(c\|cpp\|cxx\|h\|hpp\)$' -exec perl -0777 -pi -e 'EXPRESSION' {} \; 723 724 find src \( -name '*.c' -or -name '*.cxx' -or -name '*.cpp' -or -name '*.h' -or -name '*.hxx' -or -name '*.hpp' -or -name '*.java' -or -name '*.f' -or -name '*.sh' -or -name '*.tcl' -or -name '*.tk' -or -name '*.itcl' -or -name '*.itk' -or -name '*.pl' -or -name '*.php' -or -name '*.inc' -or -name '*.mged' -or -name '*.y' -or -name '*.l' -or -name '*.yy' \) -not \( -name other -or -regex '.*/other/.*' -or -name tools -or -regex '.*/misc/tools/.*' -or -regex '.*/\.[^\.].*' -or -regex '.*~' -or -regex '.*/#.*' \) 725 726 Expressions are minimally tested, use with caution. Make a backup. 727 728 729 6.0 (sed lines) 730 --- 731 g/struct structparse/s//struct bu_structparse/g 732 g/struct rt_mapped_file/s//struct bu_mapped_file/g 733 g/struct rt_list/s//struct bu_list/g 734 g/struct histogram/s//struct bu_hist/g 735 g/complex /s//bn_complex_t /g 736 g/GETSTRUCT/s//BU_GETSTRUCT/g 737 g/GETUNION/s//BU_GETUNION/g 738 g/nmg_tbl.*(\(.*\), TBL_INIT[ ]*, \(.*\))/s//bu_ptbl_init(\1, 64, "\1")/ 739 g/nmg_tbl.*(\(.*\), TBL_RST[ ]*, \(.*\))/s//bu_ptbl_reset(\1)/ 740 g/nmg_tbl.*(\(.*\), TBL_INS[ ]*, \(.*\))/s//bu_ptbl_ins(\1, \2)/ 741 g/nmg_tbl.*(\(.*\), TBL_LOC[ ]*, \(.*\))/s//bu_ptbl_locate(\1, \2)/ 742 g/nmg_tbl.*(\(.*\), TBL_ZERO[ ]*, \(.*\))/s//bu_ptbl_zero(\1, \2)/ 743 g/nmg_tbl.*(\(.*\), TBL_INS_UNIQUE[ ]*, \(.*\))/s//bu_ptbl_ins_unique(\1, \2)/ 744 g/nmg_tbl.*(\(.*\), TBL_RM[ ]*, \(.*\))/s//bu_ptbl_rm(\1, \2)/ 745 g/nmg_tbl.*(\(.*\), TBL_CAT[ ]*, \(.*\))/s//bu_ptbl_cat(\1, \2)/ 746 g/nmg_tbl.*(\(.*\), TBL_FREE[ ]*, \(.*\))/s//bu_ptbl_free(\1)/ 747 g/nmg_tbl/s//bu_ptbl/g 748 g/nmg_ptbl/s//bu_ptbl/g 749 g/MSR_UNIF/s//BN_UNIF/g 750 g/MSR_GAUSS/s//BN_GAUSS/g 751 g/MSR_CK/s//BU_CK/g 752 g/msr_unif/s//bn_unif/g 753 g/msr_gauss/s//bn_gauss/g 754 g/RT_CKMAG/s//BU_CKMAG/g 755 g/RT_TOL_MAGIC/s//BN_TOL_MAGIC/g 756 g/RT_CK_TOL/s//BN_CK_TOL/g 757 g/RT_VECT_ARE_PARALLEL/s//BN_VECT_ARE_PARALLEL/g 758 g/RT_VECT_ARE_PERP/s//BN_VECT_ARE_PERP/g 759 g/rt_badmagic/s//bu_badmagic/g 760 g/RT_SETJUMP/s//BU_SETJUMP/g 761 g/RT_UNSETJUMP/s//BU_UNSETJUMP/g 762 g/rt_twopi/s//bn_twopi/g 763 g/rt_halfpi/s//bn_halfpi/g 764 g/rt_quarterpi/s//bn_quarterpi/g 765 g/rt_invpi/s//bn_invpi/g 766 g/rt_inv2pi/s//bn_inv2pi/g 767 g/rt_inv4pi/s//bn_inv4pi/g 768 g/rt_inv255/s//bn_inv255/g 769 g/rt_degtorad/s//bn_degtorad/g 770 g/rt_radtodeg/s//bn_radtodeg/g 771 g/RT_HISTOGRAM_MAGIC/s//BU_HIST_MAGIC/g 772 g/RT_CK_HISTOGRAM/s//BU_CK_HIST/g 773 g/RT_HISTOGRAM_TALLY/s//BU_HIST_TALLY/g 774 g/rt_hist_free/s//bu_hist_free/g 775 g/rt_hist_init/s//bu_hist_init/g 776 g/rt_hist_range/s//bu_hist_range/g 777 g/rt_hist_pr/s//bu_hist_pr/g 778 g/RT_LIST_HEAD_MAGIC/s//BU_LIST_HEAD_MAGIC/g 779 g/RT_LIST_NULL/s//BU_LIST_NULL/g 780 g/RT_LIST_INSERT/s//BU_LIST_INSERT/g 781 g/RT_LIST_APPEND/s//BU_LIST_APPEND/g 782 g/RT_LIST_DEQUEUE/s//BU_LIST_DEQUEUE/g 783 g/RT_LIST_PUSH/s//BU_LIST_PUSH/g 784 g/RT_LIST_POP/s//BU_LIST_POP/g 785 g/RT_LIST_INSERT_LIST/s//BU_LIST_INSERT_LIST/g 786 g/RT_LIST_APPEND_LIST/s//BU_LIST_APPEND_LIST/g 787 g/RT_LIST_IS_EMPTY/s//BU_LIST_IS_EMPTY/g 788 g/RT_LIST_NON_EMPTY/s//BU_LIST_NON_EMPTY/g 789 g/RT_LIST_NON_EMPTY_P/s//BU_LIST_NON_EMPTY_P/g 790 g/RT_LIST_IS_CLEAR/s//BU_LIST_IS_CLEAR/g 791 g/RT_LIST_UNINITIALIZED/s//BU_LIST_UNINITIALIZED/g 792 g/RT_LIST_INIT/s//BU_LIST_INIT/g 793 g/RT_LIST_MAGIC_SET/s//BU_LIST_MAGIC_SET/g 794 g/RT_LIST_MAGIC_OK/s//BU_LIST_MAGIC_OK/g 795 g/RT_LIST_MAGIC_WRONG/s//BU_LIST_MAGIC_WRONG/g 796 g/RT_LIST_IS_HEAD/s//BU_LIST_IS_HEAD/g 797 g/RT_LIST_NOT_HEAD/s//BU_LIST_NOT_HEAD/g 798 g/RT_CK_LIST_HEAD/s//BU_CK_LIST_HEAD/g 799 g/RT_LIST_NEXT_IS_HEAD/s//BU_LIST_NEXT_IS_HEAD/g 800 g/RT_LIST_NEXT_NOT_HEAD/s//BU_LIST_NEXT_NOT_HEAD/g 801 g/RT_LIST_FOR2/s//BU_LIST_FOR2/g 802 g/RT_LIST_FOR/s//BU_LIST_FOR/g 803 g/RT_LIST_WHILE/s//BU_LIST_WHILE/g 804 g/RT_LIST_FIRST_MAGIC/s//BU_LIST_FIRST_MAGIC/g 805 g/RT_LIST_LAST_MAGIC/s//BU_LIST_LAST_MAGIC/g 806 g/RT_LIST_PNEXT_PNEXT/s//BU_LIST_PNEXT_PNEXT/g 807 g/RT_LIST_PNEXT_PLAST/s//BU_LIST_PNEXT_PLAST/g 808 g/RT_LIST_PLAST_PNEXT/s//BU_LIST_PLAST_PNEXT/g 809 g/RT_LIST_PLAST_PLAST/s//BU_LIST_PLAST_PLAST/g 810 g/RT_LIST_PNEXT_CIRC/s//BU_LIST_PNEXT_CIRC/g 811 g/RT_LIST_PPREV_CIRC/s//BU_LIST_PPREV_CIRC/g 812 g/RT_LIST_PLAST_CIRC/s//BU_LIST_PPREV_CIRC/g 813 g/RT_LIST_MAIN_PTR/s//BU_LIST_MAIN_PTR/g 814 g/RT_LIST_PNEXT/s//BU_LIST_PNEXT/g 815 g/RT_LIST_PLAST/s//BU_LIST_PLAST/g 816 g/RT_LIST_LAST/s//BU_LIST_LAST/g 817 g/RT_LIST_PREV/s//BU_LIST_PREV/g 818 g/RT_LIST_FIRST/s//BU_LIST_FIRST/g 819 g/RT_LIST_NEXT/s//BU_LIST_NEXT/g 820 g/rt_log/s//bu_log/g 821 g/rt_add_hook/s//bu_add_hook/g 822 g/rt_delete_hook/s//bu_delete_hook/g 823 g/rt_putchar/s//bu_putchar/g 824 g/rt_flog/s//bu_flog/g 825 g/rt_identify_magic/s//bu_identify_magic/g 826 g/rt_identity/s//bn_mat_identity/g 827 g/rt_prmem/s//bu_prmem/g 828 g/rt_strdup/s//bu_strdup/g 829 g/rt_malloc/s//bu_malloc/g 830 g/rt_calloc/s//bu_calloc/g 831 g/rt_free/s//bu_free/g 832 g/rt_byte_roundup/s//bu_malloc_len_roundup/g 833 g/rt_mem_barriercheck/s//bu_mem_barriercheck/g 834 g/rt_open_mapped_file/s//bu_open_mapped_file/g 835 g/rt_close_mapped_file/s//bu_close_mapped_file/g 836 g/RT_CK_MAPPED_FILE/s//BU_CK_MAPPED_FILE/g 837 g/noise_init/s//bn_noise_init/g 838 g/noise_perlin/s//bn_noise_perlin/g 839 g/noise_vec/s//bn_noise_vec/g 840 g/noise_fbm/s//bn_noise_fbm/g 841 g/noise_turb/s//bn_noise_turb/g 842 g/rt_pri_set/s//bu_nice_set/g 843 g/rt_cpuget/s//bu_cpulimit_get/g 844 g/rt_cpuset/s//bu_cpulimit_set/g 845 g/rt_avail_cpus/s//bu_avail_cpus/g 846 g/rt_parallel/s//bu_parallel/g 847 g/rt_struct_export/s//bu_struct_export/g 848 g/rt_struct_import/s//bu_struct_import/g 849 g/rt_struct_put/s//bu_struct_put/g 850 g/rt_struct_get/s//bu_struct_get/g 851 g/rt_gshort/s//bu_gshort/g 852 g/rt_glong/s//bu_glong/g 853 g/rt_pshort/s//bu_pshort/g 854 g/rt_plong/s//bu_plong/g 855 g/rt_struct_buf/s//bu_struct_wrap_buf/g 856 g/rt_structparse/s//bu_struct_parse/g 857 g/rt_structprint/s//bu_struct_print/g 858 g/rt_vls_structprint/s//bu_vls_struct_print/g 859 g/offsetofarray/s//bu_offsetofarray/g 860 g/ FUNC_NULL/s// BU_STRUCTPARSE_FUNC_NULL/g 861 g/rt_external/s//bu_external/g 862 g/RT_EXTERNAL_MAGIC/s//BU_EXTERNAL_MAGIC/g 863 g/RT_EXTERN/s//BU_EXTERN/g 864 g/RT_INIT_EXTERNAL/s//BU_INIT_EXTERNAL/g 865 g/RT_CK_EXTERNAL/s//BU_CK_EXTERNAL/g 866 g/rt_dist_pt3_lseg3/s//bn_dist_pt3_lseg3/g 867 g/rt_3pts_collinear/s//bn_3pts_collinear/g 868 g/rt_pt3_pt3_equal/s//bn_pt3_pt3_equal/g 869 g/rt_dist_pt2_lseg2/s//bn_dist_pt2_lseg2/g 870 g/rt_isect_lseg3_lseg3/s//bn_isect_lseg3_lseg3/g 871 g/rt_isect_line3_line3/s//bn_isect_line3_line3/g 872 g/rt_2line3_colinear/s//bn_2line3_colinear/g 873 g/rt_isect_pt2_lseg2/s//bn_isect_pt2_lseg2/g 874 g/rt_isect_line2_lseg2/s//bn_isect_line2_lseg2/g 875 g/rt_isect_lseg2_lseg2/s//bn_isect_lseg2_lseg2/g 876 g/rt_isect_line2_line2/s//bn_isect_line2_line2/g 877 g/rt_dist_line_point/s//bn_dist_line3_pt3/g 878 g/rt_dist_pt3_pt3/s//bn_dist_pt3_pt3/g 879 g/rt_3pts_distinct/s//bn_3pts_distinct/g 880 g/rt_mk_plane_3pts/s//bn_mk_plane_3pts/g 881 g/rt_mkpoint_3planes/s//bn_mkpoint_3planes/g 882 g/rt_isect_line3_plane/s//bn_isect_line3_plane/g 883 g/rt_isect_2planes/s//bn_isect_2planes/g 884 g/rt_isect_2lines/s//bn_isect_2lines/g 885 g/rt_isect_line_lseg/s//bn_isect_line_lseg/g 886 g/rt_dist_line3_pt3/s//bn_dist_line3_pt3/g 887 g/rt_distsq_line3_pt3/s//bn_distsq_line3_pt3/g 888 g/rt_dist_line_origin/s//bn_dist_line_origin/g 889 g/rt_dist_line2_point2/s//bn_dist_line2_point2/g 890 g/rt_distsq_line2_point2/s//bn_distsq_line2_point2/g 891 g/rt_area_of_triangle/s//bn_area_of_triangle/g 892 g/rt_isect_pt_lseg/s//bn_isect_pt_lseg/g 893 g/rt_dist_pt_lseg/s//bn_dist_pt_lseg/g 894 g/rt_rotate_bbox/s//bn_rotate_bbox/g 895 g/rt_rotate_plane/s//bn_rotate_plane/g 896 g/rt_coplanar/s//bn_coplanar/g 897 g/rt_angle_measure/s//bn_angle_measure/g 898 g/rt_dist_pt3_along_line3/s//bn_dist_pt3_along_line3/g 899 g/rt_dist_pt2_along_line2/s//bn_dist_pt2_along_line2/g 900 g/rt_between/s//bn_between/g 901 g/rt_printb/s//bu_printb/g 902 g/NMG_CK_PTBL/s//BU_CK_PTBL/g 903 g/NMG_TBL_BASEADDR/s//BU_PTBL_BASEADDR/g 904 g/NMG_TBL_LASTADDR/s//BU_PTBL_LASTADDR/g 905 g/NMG_TBL_END/s//BU_PTBL_END/g 906 g/NMG_TBL_GET/s//BU_PTBL_GET/g 907 g/RT_RAND_TABSIZE/s//BN_RAND_TABSIZE/g 908 g/RT_RANDSEED/s//BN_RANDSEED/g 909 g/RT_RANDOM/s//BN_RANDOM/g 910 g/rt_rand_table/s//bn_rand_table/g 911 g/rt_tol/s//bn_tol/g 912 g/RES_ACQUIRE(/s//bu_semaphore_acquire(/ 913 g/RES_RELEASE(/s//bu_semaphore_release(/ 914 g/&rt_g.res_syscall/s//BU_SEM_SYSCALL/ 915 g/&rt_g.res_worker/s//RT_SEM_WORKER/ 916 g/&rt_g.res_stats/s//RT_SEM_STATS/ 917 g/&rt_g.res_results/s//RT_SEM_RESULTS/ 918 g/&rt_g.res_model/s//RT_SEM_MODEL/ 919 g/RES_INIT(/s/RES_INIT.*;/bu_semaphore_init( RT_SEM_LAST );/p 920 g/RT_VLS_CHECK/s//BU_CK_VLS/g 921 g/RT_VLS_ADDR/s//bu_vls_addr/g 922 g/RT_VLS_INIT/s//bu_vls_init/g 923 g/rt_vls_init/s//bu_vls_init/g 924 g/rt_vls_vlsinit/s//bu_vls_vlsinit/g 925 g/rt_vls_addr/s//bu_vls_addr/g 926 g/rt_vls_strdup/s//bu_vls_strdup/g 927 g/rt_vls_strgrab/s//bu_vls_strgrab/g 928 g/rt_vls_extend/s//bu_vls_extend/g 929 g/rt_vls_setlen/s//bu_vls_setlen/g 930 g/rt_vls_strlen/s//bu_vls_strlen/g 931 g/rt_vls_trunc/s//bu_vls_trunc/g 932 g/rt_vls_trunc2/s//bu_vls_trunc2/g 933 g/rt_vls_nibble/s//bu_vls_nibble/g 934 g/rt_vls_free/s//bu_vls_free/g 935 g/rt_vls_vlsfree/s//bu_vls_vlsfree/g 936 g/rt_vls_strcpy/s//bu_vls_strcpy/g 937 g/rt_vls_strncpy/s//bu_vls_strncpy/g 938 g/rt_vls_strcat/s//bu_vls_strcat/g 939 g/rt_vls_strncat/s//bu_vls_strncat/g 940 g/rt_vls_vlscat/s//bu_vls_vlscat/g 941 g/rt_vls_vlscatzap/s//bu_vls_vlscatzap/g 942 g/rt_vls_from_argv/s//bu_vls_from_argv/g 943 g/rt_vls_fwrite/s//bu_vls_fwrite/g 944 g/rt_vls_gets/s//bu_vls_gets/g 945 g/rt_vls_putc/s//bu_vls_putc/g 946 g/rt_vls_printf/s//bu_vls_printf/g 947 g/CxCopy/s//bn_cx_copy/g 948 g/CxNeg/s//bn_cx_neg/g 949 g/CxReal/s//bn_cx_real/g 950 g/CxImag/s//bn_cx_imag/g 951 g/CxAdd/s//bn_cx_add/g 952 g/CxAmplSq/s//bn_cx_amplsq/g 953 g/CxAmpl/s//bn_cx_ampl/g 954 g/CxConj/s//bn_cx_conj/g 955 g/CxCons/s//bn_cx_cons/g 956 g/CxPhas/s//bn_cx_phas/g 957 g/CxScal/s//bn_cx_scal/g 958 g/CxSub/s//bn_cx_sub/g 959 g/CxMul/s//bn_cx_mul/g 960 g/CxMul2/s//bn_cx_mul2/g 961 g/CxDiv/s//bn_cx_div/g 962 g/rt_poly_scale/s//bn_poly_scale/g 963 g/rt_pr_poly/s//bn_pr_poly/g 964 g/rt_pr_roots/s//bn_pr_roots/g 965 g/TBL_INIT/s//BU_PTBL_INIT/g 966 g/TBL_INS/s//BU_PTBL_INS/g 967 g/TBL_LOC/s//BU_PTBL_LOC/g 968 g/TBL_FREE/s//BU_PTBL_FREE/g 969 g/TBL_RST/s//BU_PTBL_RST/g 970 g/TBL_CAT/s//BU_PTBL_CAT/g 971 g/TBL_RM/s//BU_PTBL_RM/g 972 g/TBL_INS_UNIQUE/s//BU_PTBL_INS_UNIQUE/g 973 g/TBL_ZERO/s//BU_PTBL_ZERO/g 974 g/rt_pi/s//bn_pi/g 975 g/matXvec/s//bn_matXvec/g 976 g/mat_ae/s//bn_mat_ae/g 977 g/mat_ae_vec/s//bn_ae_vec/g 978 g/mat_aet_vec/s//bn_aet_vec/g 979 g/mat_angles/s//bn_mat_angles/g 980 g/mat_arb_rot/s//bn_mat_arb_rot/g 981 g/mat_atan2/s//bn_atan2/g 982 g/mat_copy/s//bn_mat_copy/g 983 g/mat_degtorad/s//bn_degtorad/g 984 g/mat_dup/s//bn_mat_dup/g 985 g/mat_eigen2x2/s//bn_eigen2x2/g 986 g/mat_fromto/s//bn_mat_fromto/g 987 g/mat_htov_move/s//bn_htov_move/g 988 g/mat_identity/s//bn_mat_identity/g 989 g/mat_idn/s//MAT_IDN/g 990 g/mat_inv/s//bn_mat_inv/g 991 g/rt_mat_is_equal/s//bn_mat_is_equal/g 992 g/mat_is_identity/s//bn_mat_is_identity/g 993 g/mat_lookat/s//bn_mat_lookat/g 994 g/mat_mul/s//bn_mat_mul/g 995 g/mat_mul2/s//bn_mat_mul2/g 996 g/mat_print/s//bn_mat_print/g 997 g/mat_radtodeg/s//bn_radtodeg/g 998 g/mat_scale_about_pt/s//bn_mat_scale_about_pt/g 999 g/mat_trn/s//bn_mat_trn/g 1000 g/mat_vec_ortho/s//bn_vec_ortho/g 1001 g/mat_vec_perp/s//bn_vec_perp/g 1002 g/mat_vtoh_move/s//bn_vtoh_move/g 1003 g/mat_xform_about_pt/s//bn_mat_xform_about_pt/g 1004 g/mat_xrot/s//bn_mat_xrot/g 1005 g/mat_yrot/s//bn_mat_yrot/g 1006 g/mat_zrot/s//bn_mat_zrot/g 1007 g/mat_zero/s//bn_mat_zero/g 1008 g/rb_tree/s//bu_rb_tree/g 1009 g/RB_TREE_NULL/s//BU_RB_TREE_NULL/g 1010 g/rb_min/s//bu_rb_min/g 1011 g/rb_max/s//bu_rb_max/g 1012 g/rb_pred/s//bu_rb_pred/g 1013 g/rb_succ/s//bu_rb_succ/g 1014 g/rb_create/s//bu_rb_create/g 1015 g/rb_create1/s//bu_rb_create1/g 1016 g/rb_delete/s//bu_rb_delete/g 1017 g/rb_diagnose_tree/s//bu_rb_diagnose_tree/g 1018 g/rb_extreme/s//bu_rb_extreme/g 1019 g/rb_insert/s//bu_rb_insert/g 1020 g/rb_neighbor/s//bu_rb_neighbor/g 1021 g/rb_search/s//bu_rb_search/g 1022 g/rb_search1/s//bu_rb_search1/g 1023 g/rb_summarize_tree/s//bu_rb_summarize_tree/g 1024 g/rb_walk/s//bu_rb_walk/g 1025 g/rb_walk1/s//bu_rb_walk1/g 1026 g/RT_VLIST_CHUNK/s//BN_VLIST_CHUNK/g 1027 g/rt_vlist/s//bn_vlist/g 1028 g/RT_VLIST_NULL/s//BN_VLIST_NULL/g 1029 g/RT_VLIST_MAGIC/s//BN_VLIST_MAGIC/g 1030 g/RT_CK_VLIST/s//BN_CK_VLIST/g 1031 g/RT_VLIST_LINE_MOVE/s//BN_VLIST_LINE_MOVE/g 1032 g/RT_VLIST_LINE_DRAW/s//BN_VLIST_LINE_DRAW/g 1033 g/RT_VLIST_POLY_START/s//BN_VLIST_POLY_START/g 1034 g/RT_VLIST_POLY_MOVE/s//BN_VLIST_POLY_MOVE/g 1035 g/RT_VLIST_POLY_DRAW/s//BN_VLIST_POLY_DRAW/g 1036 g/RT_VLIST_POLY_END/s//BN_VLIST_POLY_END/g 1037 g/RT_VLIST_POLY_VERTNORM/s//BN_VLIST_POLY_VERTNORM/g 1038 g/rt_vlblock/s//bn_vlblock/g 1039 g/RT_VLBLOCK_MAGIC/s//BN_VLBLOCK_MAGIC/g 1040 g/RT_CK_VLBLOCK/s//BN_CK_VLBLOCK/g 1041 g/BU_BU_/s//BU_/g 1042 g/bu_bu_/s//bu_/g 1043 g/bn_bn_/s//bn_/g 1044 g/bn_pipe/s//rt_pipe/g 1045 major API overhaul [6.0] 1046 7.14 1047 ---- 1048 s/rt_db_free_internal\(([^,]+),[^\)]*\)/rt_db_free_internal(\1)/g 1049 struct resource pointer parameter removed [7.14] 1050 1051 7.16 1052 ---- 1053 s/rt_ptalloc\(\);/(struct rt_pt_node *)bu_malloc(sizeof(struct rt_pt_node), "rt_pt_node");/g 1054 rt_ptalloc() removed [7.16] 1055 1056 7.18 1057 ---- 1058 s/bu_ptbl\(([^,]*),[[:space:]]*BU_PTBL_INIT([^\)]*)\)/bu_ptbl_init(\1, 64, "init")/g 1059 s/bu_ptbl\(([^,]*),[[:space:]]*BU_PTBL_RST([^\)]*)\)/bu_ptbl_reset(\1)/g 1060 s/bu_ptbl\(([^,]*),[[:space:]]*BU_PTBL_INS([^\)]*)\)/bu_ptbl_ins(\1\2)/g 1061 s/bu_ptbl\(([^,]*),[[:space:]]*BU_PTBL_LOC([^\)]*)\)/bu_ptbl_locate(\1\2)/g 1062 s/bu_ptbl\(([^,]*),[[:space:]]*BU_PTBL_ZERO([^\)]*)\)/bu_ptbl_zero(\1\2/g 1063 s/bu_ptbl\(([^,]*),[[:space:]]*BU_PTBL_INS_UNIQUE([^\)]*)\)/bu_ptbl_ins_unique(\1\2)/g 1064 s/bu_ptbl\(([^,]*),[[:space:]]*BU_PTBL_RM([^\)]*)\)/bu_ptbl_rm(\1\2)/g 1065 s/bu_ptbl\(([^,]*),[[:space:]]*BU_PTBL_CAT([^\)]*)\)/bu_ptbl_cat(\1\2)/g 1066 s/bu_ptbl\(([^,]*),[[:space:]]*BU_PTBL_FREE([^\)]*)\)/bu_ptbl_free(\1)/g 1067 bu_ptbl() removed [7.18] 1068 1069 s/nmg_struct_counts\(/nmg_pr_m_struct_counts(/g 1070 nmg_struct_counts() renamed to nmg_pr_m_struct_counts() [7.18] 1071 1072 s/bu_vlb_getBuffer\(/bu_vlb_addr(/g 1073 bu_vlb_getBuffer() renamed to bu_vlb_addr() [7.18] 1074 1075 s/bu_vlb_getBufferLength\(/bu_vlb_buflen(/g 1076 bu_vlb_getBufferLength() renamed to bu_vlb_buflen() [7.18] 1077 1078 s/V2APPROXEQUAL\(/V2NEAR_EQUAL(/g 1079 V2APPROXEQUAL() renamed to V2NEAR_EQUAL() [7.18] 1080 1081 s/VAPPROXEQUAL\(/VNEAR_EQUAL(/g 1082 VAPPROXEQUAL() renamed to VNEAR_EQUAL() [7.18] 1083 1084 s/db_get_version\(/db_version(/g 1085 db_get_version() renamed to db_version() [7.18] 1086 1087 s/db_get_directory_size\(/db_directory_size(/g 1088 db_get_directory_size() renamed to db_directory_size() [7.18] 1089 1090 s/db_get_directory\(/db_alloc_directory_block(/g 1091 db_get_directory() renamed to db_alloc_directory_block() [7.18] 1092 1093 s/rt_get_seg\(/rt_alloc_sed_block(/g 1094 rt_get_seg() renamed to rt_alloc_seg_block() [7.18] 1095 1096 s/db_shader_mat\(/rt_shader_mat(/g 1097 db_shader_mat() renamed to rt_shader_mat() [7.18] 1098 1099 s/SMALL([^_])/SMALL_FAST\1/g 1100 SMALL renamed to SMALL_FASTF [7.18] 1101 1102 7.20 1103 ---- 1104 s/spm_([^\)]*)/bn_spm_\1/g 1105 spm functions and types renamed to bn_spm [7.20] 1106 1107 s/RT_CK_SPM/BN_CK_SPM_MAP/g 1108 RT_CK_SPM macro renamed to BN_CK_SPM MAP [7.20] 1109 1110 s/SPM_MAGIC/BN_SPM_MAGIC/g 1111 SPM_MAGIC renamed to BN_SPM_MAGIC [7.20] 1112 1113 s/SPM_NULL/BN_SPM_MAP_NULL/g 1114 SPM_NULL renamed to BN_SPM_MAP_NULL [7.20] 1115 1116 s/BU_EXTERN[[:space:]]*\([[:space:]]*([^,]*?)[[:space:]]*,[[:space:]]*\([[:space:]]*([^)]*)[[:space:]]*\)[[:space:]]*\)/extern \1(\2)/g 1117 BU_EXTERN() no longer necessary due to C89 minimum, use extern [7.20] 1118 1119 s/[[:space:]]*BU_ARGS[[:space:]]*\([[:space:]]*([^)]*[[:space:]]*)[[:space:]]*\)/\1/g 1120 BU_ARGS() no longer necessary due to C89 minimum, list args [7.20] 1121 1122 s/BU_LIST_UNINITIALIZED/!BU_LIST_IS_INITIALIZED/g 1123 BU_LIST_IS_INITIALIZED() removed for consistency [7.20] 1124 1125 s/BU_INIT_EXTERNAL/BU_EXTERNAL_INIT/g 1126 renamed for API consistency [7.20] 1127 1128 s/RT_CK_DBTR/RT_CK_DB_TRAVERSE/g 1129 s/RT_DBTR_MAGIC/RT_DB_TRAVERSE_MAGIC/g 1130 renamed for API consistency [7.20] 1131 1132 s/RT_INIT_([A-Z_]*)/RT_\1_INIT/g 1133 renamed all RT_INIT_[type] macros to RT_[type]_INIT for API consistency [7.20] 1134 1135 s/BU_LIST_MAGIC_OK/BU_LIST_MAGIC_EQUAL/g 1136 s/BU_LIST_MAGIC_WRONG/!BU_LIST_MAGIC_EQUAL/g 1137 renamed and consolidated to be consistent with libbn [7.20] 1138 1139 s/nmg_moveeu/nmg_je/g 1140 function has been renamed 1141 1142 7.22 1143 ---- 1144 1145 s/rt_dist_pt3_line3/bn_dist_pt3_line3/g 1146 s/rt_dist_line3_line3/bn_dist_line3_line3/g 1147 s/rt_dist_line3_lseg3/bn_dist_line3_lseg3/g 1148 functions moved from librt to libbn [7.21] 1149 s/bu_tcl_setup/Bu_Init/g 1150 removed bu_tcl_setup() in favor of Bu_Init() [7.21] 1151 s/bu_tcl_([^(]*)\([^,]*?[[:space:]]*,[^,]*?[[:space:]]*,(.*)/bu_\1(\2/g 1152 removed all bu_tcl_*() functions, leaving off interp and using native bu function [7.21] 1153 s/bu_badmagic_tcl\([^,]*?[[:space:]]*,(.*)/bu_badmagic(\1/g 1154 removed bu_badmagic_tcl() in favor of bu_badmagic() [7.21] 1155 s/(.*)_CK(.*)_TCL\([^,]*?[[:space:]]*,(.*)/\1_CK\2(\3/g 1156 removed all *_CK*_TCL() macros (e.g., BU_CKMAG_TCL, RT_CK_DBI_TCL, etc.) in favor of non-TCL macros [7.21] 1157 s/bu_image/icv_image/g 1158 moved bu_image* functions to libicv as icv_image* [7.21] 1159 s/BU_IMAGE/ICV_IMAGE/g 1160 moved BU_IMAGE* macros to icv.h as ICV_IMAGE* [7.21] 1161 s/bu_cmd\(([^,]*?),[[:space:]]*([^,]*?),[[:space:]]*([^,]*?),[[:space:]]*([^,)]*?),[[:space:]]*([^)]*?)\)/bu_cmd(\4, \2, \3, \5, \1, NULL)/g 1162 inputs then outputs. swapped bu_cmd's 4th parameter to 1st, 1st to 5th, and added a new return value hook last. [7.21] 1163 s/V3(.*)_TOL\(([^,]*,)([^,]*,)([^,]*,)([^)]*)\)/V3\1_TOL(\1\2\3(\4)->dist)/g 1164 V3RPP_OVERLAP_TOL(), V3PT_IN_RPP_TOL(), and V3PT_OUT_RPP_TOL() tol parameter changed to value [7.21] 1165 s/BU_GETSTRUCT\([[:space:]]*([^,)]+,)[[:space:]]*([^)]+)[[:space:]]*\)/BU_GET(\1 struct \2)/g 1166 BU_GETSTRUCT(ptr, struct_type) changed to BU_GET(ptr, struct struct_t) [7.21] 1167 s/BU_GETUNION\([[:space:]]*([^,)]+,)[[:space:]]*([^)]+)[[:space:]]*\)/BU_GET(\1 union \2)/g 1168 s/BU_GETTYPE\([[:space:]]*([^,)]+,)[[:space:]]*([^)]+)[[:space:]]*\)/BU_GET(\1 \2)/g 1169 BU_GETUNION() and BU_GETTYPE() macros changed to BU_GET() [7.21] 1170 s/CMD_NULL/BU_CMD_NULL/g 1171 s/CMDHIST/BU_CMDHIST/g 1172 prefix the cmd.h defines with BU_ since they are part of libbu [7.21] 1173 s/bu_shader_to_tcl_list/bu_shader_to_list/g 1174 renamed as it applies to any list in {} form, tcl or otherwise [7.21] 1175 s/bu_(add|delete|call)_hook/bu_hook_\1/g 1176 renamed hook functions to be consistent with other libbu API [7.21] 1177 s/bu_file_exists\(([^)]*)\)/bu_file_exists(\1, NULL)/g 1178 new file descriptor parameter added [7.21] 1179 s/bu_list_path\(([^,]*),([^,]*),[[:space:]]([^)]*)\)/bu_dir_list(\1,\2, &(\3))/g 1180 s/bu_count_path(.*)\);/bu_dir_list\1, NULL);/g 1181 made bu_dir_list() return the number of entries [7.21] 1182 s/bu_strcmpm\((.*),([^,]*)\)/bu_strcmp(\1)/g 1183 no use for label parameter, convert to bu_strcmp() [7.21] 1184 bu_set_realtime() [deprecated 7.22] 1185 1186 7.24 1187 ---- 1188 s/bu_set_realtime\([[:space:]]\);//g 1189 didn't do anything [7.23] 1190 s/.*bu_cpulimit_[sg]et\([[:space:]]\);//g 1191 didn't do anything [7.23] 1192 s/rt_g\./RTG\./g 1193 renamed rt_g global to RTG so it doesn't match the struct name [7.24] 1194 s/rt_functab\[/OBJ\[/g 1195 renamed rt_functab global to OBJ so it doesn't match the struct name [7.24] 1196 s/redraw_vlist/draw/g 1197 removed redraw_vlist mged command, just call draw or refresh [7.24] 1198 s/RT_BADNUM/INVALID/g 1199 s/RT_BADVAL/VINVALID/g 1200 moved RT_BADNUM and RT_BADVEC to vmath.h as INVALID and VINVALID [7.24] 1201 s/bu_create_hash_tbl/bu_hash_tbl_create/g 1202 s/bu_find_hash_entry/bu_hash_tbl_find/g 1203 s/bu_hash_add_entry/bu_hash_tbl_add/g 1204 s/bu_hash_tbl_pr/bu_hash_tbl_print/g 1205 renamed for better consistency in hash table API and with other libbu API [7.24] 1206 s/dm_applicationfocus\([[:space:]]*\);//g 1207 only useful in older os x versions, users can now do the same thing via XQuartz preferences [7.24] 1208 s/bu_vls_trunc2/bu_vls_trunc/g 1209 removed duplicitous function in favor of more general version [7.24] 1210 s/bn_pi/M_PI/g 1211 s/bn_twopi/M_2PI/g 1212 s/bn_halfpi/M_PI_2/g 1213 s/bn_quarterpi/M_PI_4/g 1214 s/bn_invpi/M_1_PI/g 1215 s/bn_inv2pi/M_1_2PI/g 1216 s/bn_inv4pi/M_1_4PI)/g 1217 s/bn_inv255/(1.0 \/ 255.0)/g 1218 s/bn_degtorad/DEG2RAD/g 1219 s/bn_radtodeg/RAD2DEG/g 1220 s/bn_sin_scale/(BN_SINTABSIZE \/ M_2PI)/g 1221 eliminated a number of libbn globals in favor of existing constants [7.24] 1222 s/(#[[:space:]]*include[[:space:]]+["<])vfont-if\.h/\1bu\/vfont.h/g 1223 s/(#[[:space:]]*include[[:space:]]+["<])cmd\.h/\1bu\/cmd.h/g 1224 s/(#[[:space:]]*include[[:space:]]+["<])hist\.h/\1bu\/hist.h/g 1225 s/(#[[:space:]]*include[[:space:]]+["<])magic\.h/\1bu\/magic.h/g 1226 library-specific public headers moved into a subdir [7.24] 1227 s/([^_])([nh]to[hn][fd])/\1bu_cv_\2/g 1228 ntohf, ntohd, htonf, htond renamed with bu_cv_ prefix [7.24] 1229 1230 7.26 1231 ---- 1232 s/bu_kill_parallel\([[:space:]]*\);//g 1233 didn't do anything unless called from forked process, use bu_terminate() [7.25] 1234 s/bu_jmpbuf/bu_jmpbuf[0]/g 1235 s/bu_setjmp_valid/bu_setjmp_valid[0]/g 1236 can replace 0 with bu_parallel_id() to get thread-safe jumping [7.25] 1237 s/bu_semaphore_reinit/bu_semaphore_init/g 1238 no longer need to manually reinitialize (or initialize) semaphores [7.25] 1239 s/(#[[:space:]]*include[[:space:]]+["<])fbio\.h/\1bu\/fb.h/g 1240 fbio.h is now part of fb.h [7.25] 1241 s/UNION/'u'/g 1242 s/SUBTRACT/'-'/g 1243 s/INTERSECT/'+'/g 1244 old db.h db4 preprocessor symbols removed, use char or DB_OP_* [7.25] 1245 s/(#[[:space:]]*include[[:space:]]+["<])bselect\.h/\1bsocket.h/g 1246 s/(#[[:space:]]*include[[:space:]]+["<])bin\.h/\1bnetwork.h/g 1247 rename bselect.h and bin.h public headers to be more declaratively named [7.25] 1248 s/db5_enc_len\[(.*)\]/DB5_ENC_LEN(\1)/g 1249 replaced db5_enc_len[] global array with DB5_ENC_LEN() macro [7.25] 1250 s/db_normalize/bu_normalize/g 1251 move the path normalization routine to libbu [7.25] 1252 s/(#[[:space:]]*include[[:space:]]+["<])bot\.h/\1rt\/primitives\/bot.h/g 1253 consolidate bot header contents [7.25] 1254 s/(#[[:space:]]*include[[:space:]]+["<])anim\.h/\1bn\/anim.h/g 1255 consolidate anim header contents [7.25] 1256 s/(#[[:space:]]*include[[:space:]]+["<])plot3\.h/\1bn.h/g 1257 plot3 implementation is in libbn, move header and replace plot3.h with bn.h [7.25] 1258 s/(#[[:space:]]*include[[:space:]]+["<])vectfont\.h/#define LAST -128\n\1bn\/vectfont.h/g 1259 consolidate vectfont.h files [7.25] 1260 s/(#[[:space:]]*include[[:space:]]+["<])spm\.h/\1bn\/spm.h/g 1261 move spm.h into bn subheader directory [7.25] 1262 s/(#[[:space:]]*include[[:space:]]+["<])dvec\.h/\1bn\/dvec.h/g 1263 s/(#[[:space:]]*include[[:space:]]+["<])vector_fpu\.h/\1bn\/vector_fpu.h/g 1264 s/(#[[:space:]]*include[[:space:]]+["<])vector_x86\.h/\1bn\/vector_x86.h/g 1265 move dvec.h and friends into bn subheader directory [7.25] 1266 s/(#[[:space:]]*include[[:space:]]+["<])db\.h/\1rt\/db4.h/g 1267 move db.h to rt/db4.h [7.25] 1268 s/(#[[:space:]]*include[[:space:]]+["<])db5\.h/\1rt\/db5.h/g 1269 move db5.h to rt/db5.h [7.25] 1270 s/(#[[:space:]]*include[[:space:]]+["<])mater\.h/\1raytrace.h/g 1271 merge mater.h with rt/mater.h [7.25] 1272 s/(#[[:space:]]*include[[:space:]]+["<])nurb\.h/#include "raytrace.h"\n\1rt\/nurb.h/g 1273 move nurb.h to rt/nurb.h [7.25] 1274 s/(#[[:space:]]*include[[:space:]]+["<])rtfunc\.h/#include "raytrace.h"\n\1rt\/func.h/g 1275 move rtfunc.h to rt/func.h [7.25] 1276 s/(#[[:space:]]*include[[:space:]]+["<])tol\.h/#include "bn.h"\n#include "raytrace.h"\n\1rt\/tol.h/g 1277 consolidate tol.h and rt/tol.h [7.25] 1278 s/(#[[:space:]]*include[[:space:]]+["<])tie\.h/\1rt\/tie.h/g 1279 move tie.h to rt/tie.h [7.25] 1280 s/(#[[:space:]]*include[[:space:]]+["<])solid\.h/#include "raytrace.h"\n\1rt\/solid.h/g 1281 move solid.h to rt/solid.h [7.25] 1282 s/(#[[:space:]]*include[[:space:]]+["<])shadework\.h/\1optical\/shadework.h/g 1283 move shadework.h to optical/shadework.h [7.25] 1284 s/(#[[:space:]]*include[[:space:]]+["<])shadefuncs\.h/\1optical.h/g 1285 move shadefuncs.h to optical/shadefuncs.h [7.25] 1286 s/(#[[:space:]]*include[[:space:]]+["<])light\.h/#include "bn.h"\n#include "raytrace.h"\n\1optical\/light.h/g 1287 move light.h to optical/light.h [7.25] 1288 s/(#[[:space:]]*include[[:space:]]+["<])plastic\.h/\1optical\/plastic.h/g 1289 move plastic.h to optical/plastic.h [7.25] 1290 s/(#[[:space:]]*include[[:space:]]+["<])rtgeom\.h/\1rt\/geom.h/g 1291 move rtgeom.h to rt/geom.h [7.25] 1292 s/rt_vlist_get_cmd_description/bn_vlist_get_cmd_description/g 1293 s/rt_ck_vlist/bn_ck_vlist/g 1294 s/rt_vlist_export/bn_vlist_export/g 1295 s/rt_vlblock_free/bn_vlblock_free/g 1296 s/rt_vlblock_find/bn_vlblock_find/g 1297 move vlist functions from librt to libbn [7.25] 1298 s/([[:space:],\(,"])bn_tcl/\1tclcad_bn/g 1299 s/([[:space:],\(,"])rt_tcl_rt/\1tclcad_rt/g 1300 s/([[:space:],\(,"])rt_tcl/\1tclcad_rt/g 1301 tcl library registrations moved to libtclcad [7.25] 1302 s/rt_grow_boolstack/rt_bool_growstack/g 1303 rename with consistent prefixes [7.25] 1304 s/(#[[:space:]]*include[[:space:]]+["<])obj\.h/\1dm\/bview.h/g 1305 s/GED_VIEW_OBJ_NULL/VIEW_OBJ_NULL/g 1306 move view_obj to dm/bview.h [7.25] 1307 s/BU_PTBL_CLEAR_I\((.*)\)/BU_PTBL_SET(\1, (long*)0)/g 1308 replace BU_PTBL_CLEAR_I into the BU_PTBL_SET command [7.25] 1309 s/BU_PTBL_END\(([^\)]*)\)/(\1)->end/g 1310 replace BU_PTBL_END with direct ptbl peek or BU_PTBL_LEN [7.25] 1311 s/bu_free_argv/bu_argv_free/g 1312 s/bu_dup_argv/bu_argv_dup/g 1313 s/bu_dupinsert_argv/bu_argv_dupinsert/g 1314 bu_*_argv -> bu_argv_* [7.25] 1315 s/bu_dir_list/bu_file_list/g 1316 bu_dir_list -> bu_file_list [7.25] 1317 s/BU_FNMATCH_NOMATCH/1/g 1318 don't use an explicit define for the non-matching case [7.25] 1319 s/bu_basename\(([^\)]*)\)/bu_basename(\1, NULL)/g 1320 pass NULL argument to get a dynamically allocated buffer back [7.25] 1321 1322 7.28 1323 ---- 1324 s/bu_free_array/bu_free_args/g 1325 fixed misleading name [7.26] 1326 s/(#[[:space:]]*include[[:space:]]+["<])bu\/rb\.h/\1bu\/redblack.h/g 1327 clearer header name [7.26] 1328 s/rt_plot_vlblock/bn_plot_vlblock/g 1329 s/rt_vlist_to_uplot/bn_vlist_to_uplot/g 1330 move vlist functions to libbn [7.26] 1331 s/rt_nurb_bezier/nmg_nurb_bezier/g 1332 s/rt_nurb_c_split/nmg_nurb_c_split/g 1333 s/rt_nurb_free_cnurb/nmg_nurb_free_cnurb/g 1334 s/rt_nurb_free_snurb/nmg_nurb_free_snurb/g 1335 s/rt_nurb_intersect/nmg_nurb_intersect/g 1336 s/rt_nurb_new_cnurb/nmg_nurb_new_cnurb/g 1337 s/rt_nurb_new_snurb/nmg_nurb_new_snurb/g 1338 s/rt_nurb_s_eval/nmg_nurb_s_eval/g 1339 s/rt_nurb_s_norm/nmg_nurb_s_norm/g 1340 s/rt_nurb_uv_hit/nmg_nurb_uv_hit/g 1341 s/rt_arc2d_to_cnurb/nmg_arc2d_to_cnurb/g 1342 s/rt_join_cnurbs/nmg_join_cnurbs/g 1343 s/rt_nurb_c_eval/nmg_nurb_c_eval/g 1344 s/rt_nurb_c_print/nmg_nurb_c_print/g 1345 s/rt_nurb_kvgen/nmg_nurb_kvgen/g 1346 s/rt_nurb_kvmerge/nmg_nurb_kvmerge/g 1347 s/rt_nurb_s_print/nmg_nurb_s_print/g 1348 s/rt_nurb_s_refine/nmg_nurb_s_refine/g 1349 s/rt_bez_check/nmg_bez_check/g 1350 s/rt_nurb_back_solve/nmg_nurb_back_solve/g 1351 s/rt_nurb_basis_eval/nmg_nurb_basis_eval/g 1352 s/rt_nurb_c_bound/nmg_nurb_c_bound/g 1353 s/rt_nurb_c_check/nmg_nurb_c_check/g 1354 s/rt_nurb_c_diff/nmg_nurb_c_diff/g 1355 s/rt_nurb_c_refine/nmg_nurb_c_refine/g 1356 s/rt_nurb_c_xsplit/nmg_nurb_c_xsplit/g 1357 s/rt_nurb_calc_oslo/nmg_nurb_calc_oslo/g 1358 s/rt_nurb_cinterp/nmg_nurb_cinterp/g 1359 s/rt_nurb_clean_cnurb/nmg_nurb_clean_cnurb/g 1360 s/rt_nurb_clip_srf/nmg_nurb_clip_srf/g 1361 s/rt_nurb_crv_copy/nmg_nurb_crv_copy/g 1362 s/rt_nurb_crv_flat/nmg_nurb_crv_flat/g 1363 s/rt_nurb_curvature/nmg_nurb_curvature/g 1364 s/rt_nurb_doolittle/nmg_nurb_doolittle/g 1365 s/rt_nurb_eval_crv/nmg_nurb_eval_crv/g 1366 s/rt_nurb_forw_solve/nmg_nurb_forw_solve/g 1367 s/rt_nurb_free_oslo/nmg_nurb_free_oslo/g 1368 s/rt_nurb_gen_knot_vector/nmg_nurb_gen_knot_vector/g 1369 s/rt_nurb_knot_index/nmg_nurb_knot_index/g 1370 s/rt_nurb_kvcheck/nmg_nurb_kvcheck/g 1371 s/rt_nurb_kvcopy/nmg_nurb_kvcopy/g 1372 s/rt_nurb_kvextract/nmg_nurb_kvextract/g 1373 s/rt_nurb_kvknot/nmg_nurb_kvknot/g 1374 s/rt_nurb_kvmult/nmg_nurb_kvmult/g 1375 s/rt_nurb_kvnorm/nmg_nurb_kvnorm/g 1376 s/rt_nurb_map_oslo/nmg_nurb_map_oslo/g 1377 s/rt_nurb_mesh_diff/nmg_nurb_mesh_diff/g 1378 s/rt_nurb_mk_poly/nmg_nurb_mk_poly/g 1379 s/rt_nurb_p_mat/nmg_nurb_p_mat/g 1380 s/rt_nurb_plot_cnurb/nmg_nurb_plot_cnurb/g 1381 s/rt_nurb_plot_snurb/nmg_nurb_plot_snurb/g 1382 s/rt_nurb_poly/nmg_nurb_poly/g 1383 s/rt_nurb_pr_crv/nmg_nurb_pr_crv/g 1384 s/rt_nurb_pr_kv/nmg_nurb_pr_kv/g 1385 s/rt_nurb_pr_mesh/nmg_nurb_pr_mesh/g 1386 s/rt_nurb_pr_oslo/nmg_nurb_pr_oslo/g 1387 s/rt_nurb_print_pt_type/nmg_nurb_print_pt_type/g 1388 s/rt_nurb_project_srf/nmg_nurb_project_srf/g 1389 s/rt_nurb_region_from_srf/nmg_nurb_region_from_srf/g 1390 s/rt_nurb_s_bound/nmg_nurb_s_bound/g 1391 s/rt_nurb_s_check/nmg_nurb_s_check/g 1392 s/rt_nurb_s_diff/nmg_nurb_s_diff/g 1393 s/rt_nurb_s_flat/nmg_nurb_s_flat/g 1394 s/rt_nurb_s_plot/nmg_nurb_s_plot/g 1395 s/rt_nurb_s_split/nmg_nurb_s_split/g 1396 s/rt_nurb_s_xsplit/nmg_nurb_s_xsplit/g 1397 s/rt_nurb_scopy/nmg_nurb_scopy/g 1398 s/rt_nurb_sinterp/nmg_nurb_sinterp/g 1399 s/rt_nurb_solve/nmg_nurb_solve/g 1400 s/rt_nurb_to_poly/nmg_nurb_to_poly/g 1401 rename old nurbs functions intertwined with nmg to use nmg prefix [7.27] 1402 s/RTG.NMG_debug/nmg_debug/g 1403 make nmg debug flag top level, like libbu's [7.27] 1404 s/BU_ASSERT(_[A-Z_]+)\(([^,]+|.*\(.*,.*\)),([^,]+|.*\(.*,.*\)),([^,]+|.*\(.*,.*\))\);/BU_ASSERT(\2\3\4);/g 1405 consolidated BU_ASSERT_PTR, BU_ASSERT_LONG, BU_ASSERT_SIZE_T, BU_ASSERT_SSIZE_T, BU_ASSERT_DOUBLE [7.27] 1406 s/BU_FLSTR/CPP_FILELINE/g 1407 symbol now owned by common.h, not specific to libbu [7.27] 1408 s/vert_root/bn_vert_tree/g 1409 s/create_vert_tree[[:space:]]*\(/bn_vert_tree_create\(/g 1410 s/create_vert_tree_w_norms[[:space:]]*\(/bn_vert_tree_create_w_norms\(/g 1411 s/free_vert_tree[[:space:]]*\(/bn_vert_tree_destroy\(/g 1412 s/Add_vert[[:space:]]*\(([^,]*,)([^,]*,)([^,]*,)([^,]*,)/bn_vert_tree_add\(\4\1\2\3/g 1413 s/Add_vert_and_norm[[:space:]]*\(([^,]*,)([^,]*,)([^,]*,)([^,]*,)([^,]*,)([^,]*,)([^,]*,)/bn_vert_tree_add_w_norm\(\7\1\2\3\4\5\6/g 1414 s/clean_vert_tree[[:space:]]*\(/bn_vert_tree_clean\(/g 1415 symbols renamed per convention with their library prefix [7.27] 1416 s/BU_DEBUG_MEM_CHECK/0/g 1417 s/DEBUG_MEM_FULL/0/g 1418 developer debugging symbols removed [7.27] 1419 s/bu_dirname\(/bu_path_dirname\(/g 1420 s/bu_basename\(/bu_path_basename\(/g 1421 s/bu_normalize\(/bu_path_normalize\(/g 1422 s/bu_argv_from_path\(/bu_path_to_argv\(/g 1423 renamed path functons with proper group label [7.27] 1424 s/bu_fnmatch\(/bu_path_match\(/g 1425 s/BU_FNMATCH_LEADING_DIR/0x0/g 1426 s/BU_FNMATCH_/BU_PATH_MATCH/g 1427 renamed for consistency, simplified [7.27] 1428 s/bu_path_canonicalize[[:space:]]*\(([^,]*)/bu_realpath(\1, NULL/g 1429 duplicate functionality consolidated to bu_realpath() [7.27] 1430 s/gqa(.*)-p/gqa\1-p ""/g 1431 gqa now takes a prefix for plot file output 1432 s/bu_same_file/bu_file_same/g 1433 s/bu_realpath/bu_file_realpath/g 1434 s/bu_suspend_interrupts/bu_interrupt_suspend/g 1435 s/bu_restore_interrupts/bu_interrupt_restore/g 1436 renamed for API consistency [7.27] 1437 s/bu_brlcad_data[[:space:]]*\(/bu_brlcad_root("share/"/g 1438 replaced by new BU API 1439 s/struct[[:space:]]*ged_run_rt/struct ged_subprocess/g 1440 1441 7.30 1442 ---- 1443 s/BU_DEBUG_MEM_LOG/0/g 1444 bu memory debugging API removed [7.29] 1445 s/ged_count_tops/ged_who_argc/g 1446 s/ged_build_tops/ged_who_argv/g 1447 functions renamed as they pertain to 'who' listings, not 'tops' [7.30] 1448 s/rt_tess_tol/bg_tess_tol/g 1449 s/RT_TESS_TOL_MAGIC/BG_TESS_TOL_MAGIC/g 1450 s/RT_TESS_TOL_INIT_ZERO/BG_TESS_TOL_INIT_ZERO/g 1451 s/RT_CK_TESS_TOL/BG_CK_TESS_TOL/g 1452 moved librt tolerances to libbg [7.30] 1453 s/DEBUG_PT_FU/DEBUG_PNT_FU/g 1454 s/DIST_PT2_PT2/DIST_PNT2_PNT2/g 1455 s/DIST_PT2_PT2_SQ/DIST_PNT2_PNT2_SQ/g 1456 s/DIST_PT_PLANE/DIST_PNT_PLANE/g 1457 s/DIST_PT_PT/DIST_PNT_PNT/g 1458 s/DIST_PT_PT_SQ/DIST_PNT_PNT_SQ/g 1459 s/V3PT_IN_RPP/V3PNT_IN_RPP/g 1460 s/V3PT_IN_RPP_TOL/V3PNT_IN_RPP_TOL/g 1461 s/V3PT_OUT_RPP_TOL/V3PNT_OUT_RPP_TOL/g 1462 s/WDB_METABALLPT_NULL/WDB_METABALL_PNT_NULL/g 1463 s/_ged_cm_lookat_pt/_ged_cm_lookat_pnt/g 1464 s/_ged_get_metaball_i_pt/_ged_get_metaball_i_pnt/g 1465 s/add_metaballpt/metaball_add_pnt/g 1466 s/add_pipept/pipe_add_pnt/g 1467 s/append_pipept/pipe_append_pnt/g 1468 s/bg_3d_polygon_mk_pts_planes/bg_3d_polygon_make_pnts_planes/g 1469 s/bg_pt_in_polygon/bg_pnt_in_polygon/g 1470 s/bn_3pts_collinear/bn_3pnts_collinear/g 1471 s/bn_3pts_distinct/bn_3pnts_distinct/g 1472 s/bn_dist_line3_pt3/bn_dist_line3_pnt3/g 1473 s/bn_dist_pt2_along_line2/bn_dist_pnt2_along_line2/g 1474 s/bn_dist_pt2_lseg2/bn_dist_pnt2_lseg2/g 1475 s/bn_dist_pt3_along_line3/bn_dist_pnt3_along_line3/g 1476 s/bn_dist_pt3_line3/bn_dist_pnt3_line3/g 1477 s/bn_dist_pt3_lseg3/bn_dist_pnt3_lseg3/g 1478 s/bn_dist_pt3_pt3/bn_dist_pnt3_pnt3/g 1479 s/bn_dist_pt_lseg/bn_dist_pnt_lseg/g 1480 s/bn_distsq_line3_pt3/bn_distsq_line3_pnt3/g 1481 s/bn_distsq_pt3_lseg3_v2/bn_distsq_pnt3_lseg3_v2/g 1482 s/bn_isect_pt2_lseg2/bn_isect_pnt2_lseg2/g 1483 s/bn_isect_pt_lseg/bn_isect_pnt_lseg/g 1484 s/bn_mat_scale_about_pt/bn_mat_scale_about_pnt/g 1485 s/bn_mat_xform_about_pt/bn_mat_xform_about_pnt/g 1486 s/bn_mk_plane_3pts/bn_make_plane_3pnts/g 1487 s/bn_mkpoint_3planes/bn_make_pnt_3planes/g 1488 s/bn_npts_distinct/bn_npnts_distinct/g 1489 s/bn_pt2_pt2_equal/bn_pnt2_pnt2_equal/g 1490 s/bn_pt3_pt3_equal/bn_pnt3_pnt3_equal/g 1491 s/bn_sph_pts/bn_sph_pnts/g 1492 s/bn_table_delete_sample_pts/bn_table_delete_sample_pnts/g 1493 s/del_pipept/pipe_del_pnt/g 1494 s/delete_metaballpt/metaball_delete_pnt/g 1495 s/delete_pipept/pipe_pnt_delete/g 1496 s/exported_pipept/exported_pipe_pnt/g 1497 s/find_arb_edge_nearest_pt/find_arb_edge_nearest_pnt/g 1498 s/find_botpt_nearest_pt/find_bot_pnt_nearest_pnt/g 1499 s/find_metaballpt_nearest_pt/find_metaball_pnt_nearest_pnt/g 1500 s/find_nearest_ars_pt/find_ars_nearest_pnt/g 1501 s/find_pipept_nearest_pt/find_pipe_pnt_nearest_pnt/g 1502 s/ged_add_metaballpt/ged_metaball_add_pnt/g 1503 s/ged_append_pipept/ged_pipe_append_pnt/g 1504 s/ged_delete_metaballpt/ged_metaball_delete_pnt/g 1505 s/ged_delete_pipept/ged_pipe_pnt_delete/g 1506 s/ged_find_arb_edge_nearest_pt/ged_find_arb_edge_nearest_pnt/g 1507 s/ged_find_botpt_nearest_pt/ged_find_bot_pnt_nearest_pnt/g 1508 s/ged_find_metaballpt_nearest_pt/ged_find_metaball_pnt_nearest_pnt/g 1509 s/ged_find_pipept_nearest_pt/ged_find_pipe_pnt_nearest_pnt/g 1510 s/ged_mat_scale_about_pt/ged_mat_scale_about_pnt/g 1511 s/ged_move_botpt/ged_bot_move_pnt/g 1512 s/ged_move_botpts/ged_bot_move_pnts/g 1513 s/ged_move_metaballpt/ged_metaball_move_pnt/g 1514 s/ged_move_pipept/ged_pipe_move_pnt/g 1515 s/ged_prepend_pipept/ged_pipe_prepend_pnt/g 1516 s/ins_pipept/pipe_ins_pnt/g 1517 s/jitter_start_pt/jitter_start_pnt/g 1518 s/kdtree_get_pt/kdtree_get_pnt/g 1519 s/mat_scale_about_pt/mat_scale_about_pnt/g 1520 s/metaballpt/metaball_pnt/g 1521 s/mk_add_pipe_pt/mk_add_pipe_pnt/g 1522 s/move_botpt/bot_move_pnt/g 1523 s/move_botpts/bot_move_pnts/g 1524 s/move_metaballpt/metaball_move_pnt/g 1525 s/move_pipept/pipe_move_pnt/g 1526 s/move_pipept/pipe_move_pnt/g 1527 s/nmg_class_pt_f/nmg_class_pnt_f/g 1528 s/nmg_class_pt_fu_except/nmg_class_pnt_fu_except/g 1529 s/nmg_class_pt_l/nmg_class_pnt_l/g 1530 s/nmg_class_pt_lu_except/nmg_class_pnt_lu_except/g 1531 s/nmg_class_pt_s/nmg_class_pnt_s/g 1532 s/nmg_classify_pt_loop/nmg_classify_pnt_loop/g 1533 s/nmg_find_pt_in_face/nmg_find_pnt_in_face/g 1534 s/nmg_find_pt_in_lu/nmg_find_pnt_in_lu/g 1535 s/nmg_find_pt_in_model/nmg_find_pnt_in_model/g 1536 s/nmg_find_pt_in_shell/nmg_find_pnt_in_shell/g 1537 s/nmg_get_interior_pt/nmg_get_interior_pnt/g 1538 s/nmg_move_edge_thru_pt/nmg_move_edge_thru_pnt/g 1539 s/nmg_nurb_print_pt_type/nmg_nurb_print_pnt_type/g 1540 s/pipept/pipe_pnt/g 1541 s/prepend_pipept/pipe_prepend_pnt/g 1542 s/rt_arb_add_pt/rt_arb_add_pnt/g 1543 s/rt_ell_16pts/rt_ell_16pnts/g 1544 s/rt_metaballpt_print/rt_metaball_pnt_print/g 1545 s/rt_pipept_print/rt_pipe_pnt_print/g 1546 s/rt_pr_pt/rt_pr_partition/g 1547 s/rt_pr_pt_vls/rt_pr_partition_vls/g 1548 s/rt_pt_node/rt_pnt_node/g 1549 s/rt_pt_sort/rt_pnt_sort/g 1550 s/rt_vls_metaballpt/rt_metaball_pnt_vls/g 1551 s/rt_vls_pipept/rt_pipe_pnt_vls/g 1552 s/split_pipept/pipe_split_pnt/g 1553 s/tclcad_bn_dist_pt2_lseg2/tclcad_bn_dist_pnt2_lseg2/g 1554 s/tclcad_bn_mat_xform_about_pt/tclcad_bn_mat_xform_about_pnt/g 1555 s/wdb_metaballpt/wdb_metaball_pnt/g 1556 s/wdb_pipept/wdb_pipe_pnt/g 1557 renamed points from pt to pnt for consistency [7.30] 1558 s/proe-brl/creo-brl/g 1559 replaced by newer creo plugin [7.30] 1560 1561 7.32 1562 ---- 1563 s/facetall.sh/mged -c facetize/g 1564 replaced by more improved facetize command [7.30] 1565 s/pixcmp -s/pixcmp -q/g 1566 s/pixcmp -l/pixcmp -d/g 1567 changed pixcmp options for consistency with new options [7.32]