Main Page | Modules | Data Structures | File List | Data Fields | Globals | Related Pages

call_rend_f_include.c

Go to the documentation of this file.
00001 { 00002 BOOLEAN one_slice; 00003 one_slice = ( n_slices1 == 1 && weights1[0] == 1.0 && 00004 (volume_data2 == (void *) NULL || 00005 (n_slices2 == 1 && weights2[0] == 1.0)) ); 00006 00007 switch( volume1_type ) 00008 { 00009 case UNSIGNED_BYTE: 00010 if( volume_data2 == NULL ) 00011 { 00012 if( one_slice ) 00013 { 00014 if( pixels->pixel_type == RGB_PIXEL ) 00015 { 00016 render_one_rgb_unsigned_char( 00017 volume_data1, 00018 y, 00019 start_x, 00020 end_x, 00021 y_offsets1, 00022 row_offsets1, 00023 rgb_colour_map, 00024 rgb_pixel_ptr 00025 ); 00026 } 00027 else 00028 { 00029 render_one_cmap_unsigned_char( 00030 volume_data1, 00031 y, 00032 start_x, 00033 end_x, 00034 y_offsets1, 00035 row_offsets1, 00036 cmode_colour_map, 00037 cmap_pixel_ptr 00038 ); 00039 } 00040 } 00041 else 00042 { 00043 if( pixels->pixel_type == RGB_PIXEL ) 00044 { 00045 render_many_rgb_unsigned_char( 00046 volume_data1, 00047 y, 00048 start_x, 00049 end_x, 00050 y_offsets1, 00051 row_offsets1, 00052 start_slices1, 00053 n_slices1, 00054 weights1, 00055 rgb_colour_map, 00056 rgb_pixel_ptr 00057 ); 00058 } 00059 else 00060 { 00061 render_many_cmap_unsigned_char( 00062 volume_data1, 00063 y, 00064 start_x, 00065 end_x, 00066 y_offsets1, 00067 row_offsets1, 00068 start_slices1, 00069 n_slices1, 00070 weights1, 00071 cmode_colour_map, 00072 cmap_pixel_ptr 00073 ); 00074 } 00075 } 00076 } 00077 else 00078 { 00079 switch( volume2_type ) 00080 { 00081 case UNSIGNED_BYTE: 00082 if( one_slice ) 00083 { 00084 if( pixels->pixel_type == RGB_PIXEL ) 00085 { 00086 render_one_rgb_unsigned_char_unsigned_char( 00087 volume_data1, 00088 y, 00089 start_x, 00090 end_x, 00091 y_offsets1, 00092 row_offsets1, 00093 volume_data2, 00094 y_offsets2, 00095 row_offsets2, 00096 rgb_colour_map, 00097 rgb_pixel_ptr 00098 ); 00099 } 00100 else 00101 { 00102 render_one_cmap_unsigned_char_unsigned_char( 00103 volume_data1, 00104 y, 00105 start_x, 00106 end_x, 00107 y_offsets1, 00108 row_offsets1, 00109 volume_data2, 00110 y_offsets2, 00111 row_offsets2, 00112 cmode_colour_map, 00113 cmap_pixel_ptr 00114 ); 00115 } 00116 } 00117 else 00118 { 00119 if( pixels->pixel_type == RGB_PIXEL ) 00120 { 00121 render_many_rgb_unsigned_char_unsigned_char( 00122 volume_data1, 00123 y, 00124 start_x, 00125 end_x, 00126 y_offsets1, 00127 row_offsets1, 00128 start_slices1, 00129 n_slices1, 00130 weights1, 00131 volume_data2, 00132 y_offsets2, 00133 row_offsets2, 00134 start_slices2, 00135 n_slices2, 00136 weights2, 00137 rgb_colour_map, 00138 rgb_pixel_ptr 00139 ); 00140 } 00141 else 00142 { 00143 render_many_cmap_unsigned_char_unsigned_char( 00144 volume_data1, 00145 y, 00146 start_x, 00147 end_x, 00148 y_offsets1, 00149 row_offsets1, 00150 start_slices1, 00151 n_slices1, 00152 weights1, 00153 volume_data2, 00154 y_offsets2, 00155 row_offsets2, 00156 start_slices2, 00157 n_slices2, 00158 weights2, 00159 cmode_colour_map, 00160 cmap_pixel_ptr 00161 ); 00162 } 00163 } 00164 break; 00165 case UNSIGNED_SHORT: 00166 if( one_slice ) 00167 { 00168 if( pixels->pixel_type == RGB_PIXEL ) 00169 { 00170 render_one_rgb_unsigned_char_unsigned_short( 00171 volume_data1, 00172 y, 00173 start_x, 00174 end_x, 00175 y_offsets1, 00176 row_offsets1, 00177 volume_data2, 00178 y_offsets2, 00179 row_offsets2, 00180 rgb_colour_map, 00181 rgb_pixel_ptr 00182 ); 00183 } 00184 else 00185 { 00186 render_one_cmap_unsigned_char_unsigned_short( 00187 volume_data1, 00188 y, 00189 start_x, 00190 end_x, 00191 y_offsets1, 00192 row_offsets1, 00193 volume_data2, 00194 y_offsets2, 00195 row_offsets2, 00196 cmode_colour_map, 00197 cmap_pixel_ptr 00198 ); 00199 } 00200 } 00201 else 00202 { 00203 if( pixels->pixel_type == RGB_PIXEL ) 00204 { 00205 render_many_rgb_unsigned_char_unsigned_short( 00206 volume_data1, 00207 y, 00208 start_x, 00209 end_x, 00210 y_offsets1, 00211 row_offsets1, 00212 start_slices1, 00213 n_slices1, 00214 weights1, 00215 volume_data2, 00216 y_offsets2, 00217 row_offsets2, 00218 start_slices2, 00219 n_slices2, 00220 weights2, 00221 rgb_colour_map, 00222 rgb_pixel_ptr 00223 ); 00224 } 00225 else 00226 { 00227 render_many_cmap_unsigned_char_unsigned_short( 00228 volume_data1, 00229 y, 00230 start_x, 00231 end_x, 00232 y_offsets1, 00233 row_offsets1, 00234 start_slices1, 00235 n_slices1, 00236 weights1, 00237 volume_data2, 00238 y_offsets2, 00239 row_offsets2, 00240 start_slices2, 00241 n_slices2, 00242 weights2, 00243 cmode_colour_map, 00244 cmap_pixel_ptr 00245 ); 00246 } 00247 } 00248 break; 00249 case UNSIGNED_INT: 00250 if( one_slice ) 00251 { 00252 if( pixels->pixel_type == RGB_PIXEL ) 00253 { 00254 render_one_rgb_unsigned_char_unsigned_int( 00255 volume_data1, 00256 y, 00257 start_x, 00258 end_x, 00259 y_offsets1, 00260 row_offsets1, 00261 volume_data2, 00262 y_offsets2, 00263 row_offsets2, 00264 rgb_colour_map, 00265 rgb_pixel_ptr 00266 ); 00267 } 00268 else 00269 { 00270 render_one_cmap_unsigned_char_unsigned_int( 00271 volume_data1, 00272 y, 00273 start_x, 00274 end_x, 00275 y_offsets1, 00276 row_offsets1, 00277 volume_data2, 00278 y_offsets2, 00279 row_offsets2, 00280 cmode_colour_map, 00281 cmap_pixel_ptr 00282 ); 00283 } 00284 } 00285 else 00286 { 00287 if( pixels->pixel_type == RGB_PIXEL ) 00288 { 00289 render_many_rgb_unsigned_char_unsigned_int( 00290 volume_data1, 00291 y, 00292 start_x, 00293 end_x, 00294 y_offsets1, 00295 row_offsets1, 00296 start_slices1, 00297 n_slices1, 00298 weights1, 00299 volume_data2, 00300 y_offsets2, 00301 row_offsets2, 00302 start_slices2, 00303 n_slices2, 00304 weights2, 00305 rgb_colour_map, 00306 rgb_pixel_ptr 00307 ); 00308 } 00309 else 00310 { 00311 render_many_cmap_unsigned_char_unsigned_int( 00312 volume_data1, 00313 y, 00314 start_x, 00315 end_x, 00316 y_offsets1, 00317 row_offsets1, 00318 start_slices1, 00319 n_slices1, 00320 weights1, 00321 volume_data2, 00322 y_offsets2, 00323 row_offsets2, 00324 start_slices2, 00325 n_slices2, 00326 weights2, 00327 cmode_colour_map, 00328 cmap_pixel_ptr 00329 ); 00330 } 00331 } 00332 break; 00333 case SIGNED_BYTE: 00334 if( one_slice ) 00335 { 00336 if( pixels->pixel_type == RGB_PIXEL ) 00337 { 00338 render_one_rgb_unsigned_char_signed_char( 00339 volume_data1, 00340 y, 00341 start_x, 00342 end_x, 00343 y_offsets1, 00344 row_offsets1, 00345 volume_data2, 00346 y_offsets2, 00347 row_offsets2, 00348 rgb_colour_map, 00349 rgb_pixel_ptr 00350 ); 00351 } 00352 else 00353 { 00354 render_one_cmap_unsigned_char_signed_char( 00355 volume_data1, 00356 y, 00357 start_x, 00358 end_x, 00359 y_offsets1, 00360 row_offsets1, 00361 volume_data2, 00362 y_offsets2, 00363 row_offsets2, 00364 cmode_colour_map, 00365 cmap_pixel_ptr 00366 ); 00367 } 00368 } 00369 else 00370 { 00371 if( pixels->pixel_type == RGB_PIXEL ) 00372 { 00373 render_many_rgb_unsigned_char_signed_char( 00374 volume_data1, 00375 y, 00376 start_x, 00377 end_x, 00378 y_offsets1, 00379 row_offsets1, 00380 start_slices1, 00381 n_slices1, 00382 weights1, 00383 volume_data2, 00384 y_offsets2, 00385 row_offsets2, 00386 start_slices2, 00387 n_slices2, 00388 weights2, 00389 rgb_colour_map, 00390 rgb_pixel_ptr 00391 ); 00392 } 00393 else 00394 { 00395 render_many_cmap_unsigned_char_signed_char( 00396 volume_data1, 00397 y, 00398 start_x, 00399 end_x, 00400 y_offsets1, 00401 row_offsets1, 00402 start_slices1, 00403 n_slices1, 00404 weights1, 00405 volume_data2, 00406 y_offsets2, 00407 row_offsets2, 00408 start_slices2, 00409 n_slices2, 00410 weights2, 00411 cmode_colour_map, 00412 cmap_pixel_ptr 00413 ); 00414 } 00415 } 00416 break; 00417 case SIGNED_SHORT: 00418 if( one_slice ) 00419 { 00420 if( pixels->pixel_type == RGB_PIXEL ) 00421 { 00422 render_one_rgb_unsigned_char_signed_short( 00423 volume_data1, 00424 y, 00425 start_x, 00426 end_x, 00427 y_offsets1, 00428 row_offsets1, 00429 volume_data2, 00430 y_offsets2, 00431 row_offsets2, 00432 rgb_colour_map, 00433 rgb_pixel_ptr 00434 ); 00435 } 00436 else 00437 { 00438 render_one_cmap_unsigned_char_signed_short( 00439 volume_data1, 00440 y, 00441 start_x, 00442 end_x, 00443 y_offsets1, 00444 row_offsets1, 00445 volume_data2, 00446 y_offsets2, 00447 row_offsets2, 00448 cmode_colour_map, 00449 cmap_pixel_ptr 00450 ); 00451 } 00452 } 00453 else 00454 { 00455 if( pixels->pixel_type == RGB_PIXEL ) 00456 { 00457 render_many_rgb_unsigned_char_signed_short( 00458 volume_data1, 00459 y, 00460 start_x, 00461 end_x, 00462 y_offsets1, 00463 row_offsets1, 00464 start_slices1, 00465 n_slices1, 00466 weights1, 00467 volume_data2, 00468 y_offsets2, 00469 row_offsets2, 00470 start_slices2, 00471 n_slices2, 00472 weights2, 00473 rgb_colour_map, 00474 rgb_pixel_ptr 00475 ); 00476 } 00477 else 00478 { 00479 render_many_cmap_unsigned_char_signed_short( 00480 volume_data1, 00481 y, 00482 start_x, 00483 end_x, 00484 y_offsets1, 00485 row_offsets1, 00486 start_slices1, 00487 n_slices1, 00488 weights1, 00489 volume_data2, 00490 y_offsets2, 00491 row_offsets2, 00492 start_slices2, 00493 n_slices2, 00494 weights2, 00495 cmode_colour_map, 00496 cmap_pixel_ptr 00497 ); 00498 } 00499 } 00500 break; 00501 case SIGNED_INT: 00502 if( one_slice ) 00503 { 00504 if( pixels->pixel_type == RGB_PIXEL ) 00505 { 00506 render_one_rgb_unsigned_char_signed_int( 00507 volume_data1, 00508 y, 00509 start_x, 00510 end_x, 00511 y_offsets1, 00512 row_offsets1, 00513 volume_data2, 00514 y_offsets2, 00515 row_offsets2, 00516 rgb_colour_map, 00517 rgb_pixel_ptr 00518 ); 00519 } 00520 else 00521 { 00522 render_one_cmap_unsigned_char_signed_int( 00523 volume_data1, 00524 y, 00525 start_x, 00526 end_x, 00527 y_offsets1, 00528 row_offsets1, 00529 volume_data2, 00530 y_offsets2, 00531 row_offsets2, 00532 cmode_colour_map, 00533 cmap_pixel_ptr 00534 ); 00535 } 00536 } 00537 else 00538 { 00539 if( pixels->pixel_type == RGB_PIXEL ) 00540 { 00541 render_many_rgb_unsigned_char_signed_int( 00542 volume_data1, 00543 y, 00544 start_x, 00545 end_x, 00546 y_offsets1, 00547 row_offsets1, 00548 start_slices1, 00549 n_slices1, 00550 weights1, 00551 volume_data2, 00552 y_offsets2, 00553 row_offsets2, 00554 start_slices2, 00555 n_slices2, 00556 weights2, 00557 rgb_colour_map, 00558 rgb_pixel_ptr 00559 ); 00560 } 00561 else 00562 { 00563 render_many_cmap_unsigned_char_signed_int( 00564 volume_data1, 00565 y, 00566 start_x, 00567 end_x, 00568 y_offsets1, 00569 row_offsets1, 00570 start_slices1, 00571 n_slices1, 00572 weights1, 00573 volume_data2, 00574 y_offsets2, 00575 row_offsets2, 00576 start_slices2, 00577 n_slices2, 00578 weights2, 00579 cmode_colour_map, 00580 cmap_pixel_ptr 00581 ); 00582 } 00583 } 00584 break; 00585 case FLOAT: 00586 if( one_slice ) 00587 { 00588 if( pixels->pixel_type == RGB_PIXEL ) 00589 { 00590 render_one_rgb_unsigned_char_float( 00591 volume_data1, 00592 y, 00593 start_x, 00594 end_x, 00595 y_offsets1, 00596 row_offsets1, 00597 volume_data2, 00598 y_offsets2, 00599 row_offsets2, 00600 rgb_colour_map, 00601 rgb_pixel_ptr 00602 ); 00603 } 00604 else 00605 { 00606 render_one_cmap_unsigned_char_float( 00607 volume_data1, 00608 y, 00609 start_x, 00610 end_x, 00611 y_offsets1, 00612 row_offsets1, 00613 volume_data2, 00614 y_offsets2, 00615 row_offsets2, 00616 cmode_colour_map, 00617 cmap_pixel_ptr 00618 ); 00619 } 00620 } 00621 else 00622 { 00623 if( pixels->pixel_type == RGB_PIXEL ) 00624 { 00625 render_many_rgb_unsigned_char_float( 00626 volume_data1, 00627 y, 00628 start_x, 00629 end_x, 00630 y_offsets1, 00631 row_offsets1, 00632 start_slices1, 00633 n_slices1, 00634 weights1, 00635 volume_data2, 00636 y_offsets2, 00637 row_offsets2, 00638 start_slices2, 00639 n_slices2, 00640 weights2, 00641 rgb_colour_map, 00642 rgb_pixel_ptr 00643 ); 00644 } 00645 else 00646 { 00647 render_many_cmap_unsigned_char_float( 00648 volume_data1, 00649 y, 00650 start_x, 00651 end_x, 00652 y_offsets1, 00653 row_offsets1, 00654 start_slices1, 00655 n_slices1, 00656 weights1, 00657 volume_data2, 00658 y_offsets2, 00659 row_offsets2, 00660 start_slices2, 00661 n_slices2, 00662 weights2, 00663 cmode_colour_map, 00664 cmap_pixel_ptr 00665 ); 00666 } 00667 } 00668 break; 00669 case DOUBLE: 00670 if( one_slice ) 00671 { 00672 if( pixels->pixel_type == RGB_PIXEL ) 00673 { 00674 render_one_rgb_unsigned_char_double( 00675 volume_data1, 00676 y, 00677 start_x, 00678 end_x, 00679 y_offsets1, 00680 row_offsets1, 00681 volume_data2, 00682 y_offsets2, 00683 row_offsets2, 00684 rgb_colour_map, 00685 rgb_pixel_ptr 00686 ); 00687 } 00688 else 00689 { 00690 render_one_cmap_unsigned_char_double( 00691 volume_data1, 00692 y, 00693 start_x, 00694 end_x, 00695 y_offsets1, 00696 row_offsets1, 00697 volume_data2, 00698 y_offsets2, 00699 row_offsets2, 00700 cmode_colour_map, 00701 cmap_pixel_ptr 00702 ); 00703 } 00704 } 00705 else 00706 { 00707 if( pixels->pixel_type == RGB_PIXEL ) 00708 { 00709 render_many_rgb_unsigned_char_double( 00710 volume_data1, 00711 y, 00712 start_x, 00713 end_x, 00714 y_offsets1, 00715 row_offsets1, 00716 start_slices1, 00717 n_slices1, 00718 weights1, 00719 volume_data2, 00720 y_offsets2, 00721 row_offsets2, 00722 start_slices2, 00723 n_slices2, 00724 weights2, 00725 rgb_colour_map, 00726 rgb_pixel_ptr 00727 ); 00728 } 00729 else 00730 { 00731 render_many_cmap_unsigned_char_double( 00732 volume_data1, 00733 y, 00734 start_x, 00735 end_x, 00736 y_offsets1, 00737 row_offsets1, 00738 start_slices1, 00739 n_slices1, 00740 weights1, 00741 volume_data2, 00742 y_offsets2, 00743 row_offsets2, 00744 start_slices2, 00745 n_slices2, 00746 weights2, 00747 cmode_colour_map, 00748 cmap_pixel_ptr 00749 ); 00750 } 00751 } 00752 break; 00753 } 00754 } 00755 break; 00756 case UNSIGNED_SHORT: 00757 if( volume_data2 == NULL ) 00758 { 00759 if( one_slice ) 00760 { 00761 if( pixels->pixel_type == RGB_PIXEL ) 00762 { 00763 render_one_rgb_unsigned_short( 00764 volume_data1, 00765 y, 00766 start_x, 00767 end_x, 00768 y_offsets1, 00769 row_offsets1, 00770 rgb_colour_map, 00771 rgb_pixel_ptr 00772 ); 00773 } 00774 else 00775 { 00776 render_one_cmap_unsigned_short( 00777 volume_data1, 00778 y, 00779 start_x, 00780 end_x, 00781 y_offsets1, 00782 row_offsets1, 00783 cmode_colour_map, 00784 cmap_pixel_ptr 00785 ); 00786 } 00787 } 00788 else 00789 { 00790 if( pixels->pixel_type == RGB_PIXEL ) 00791 { 00792 render_many_rgb_unsigned_short( 00793 volume_data1, 00794 y, 00795 start_x, 00796 end_x, 00797 y_offsets1, 00798 row_offsets1, 00799 start_slices1, 00800 n_slices1, 00801 weights1, 00802 rgb_colour_map, 00803 rgb_pixel_ptr 00804 ); 00805 } 00806 else 00807 { 00808 render_many_cmap_unsigned_short( 00809 volume_data1, 00810 y, 00811 start_x, 00812 end_x, 00813 y_offsets1, 00814 row_offsets1, 00815 start_slices1, 00816 n_slices1, 00817 weights1, 00818 cmode_colour_map, 00819 cmap_pixel_ptr 00820 ); 00821 } 00822 } 00823 } 00824 else 00825 { 00826 switch( volume2_type ) 00827 { 00828 case UNSIGNED_BYTE: 00829 if( one_slice ) 00830 { 00831 if( pixels->pixel_type == RGB_PIXEL ) 00832 { 00833 render_one_rgb_unsigned_short_unsigned_char( 00834 volume_data1, 00835 y, 00836 start_x, 00837 end_x, 00838 y_offsets1, 00839 row_offsets1, 00840 volume_data2, 00841 y_offsets2, 00842 row_offsets2, 00843 rgb_colour_map, 00844 rgb_pixel_ptr 00845 ); 00846 } 00847 else 00848 { 00849 render_one_cmap_unsigned_short_unsigned_char( 00850 volume_data1, 00851 y, 00852 start_x, 00853 end_x, 00854 y_offsets1, 00855 row_offsets1, 00856 volume_data2, 00857 y_offsets2, 00858 row_offsets2, 00859 cmode_colour_map, 00860 cmap_pixel_ptr 00861 ); 00862 } 00863 } 00864 else 00865 { 00866 if( pixels->pixel_type == RGB_PIXEL ) 00867 { 00868 render_many_rgb_unsigned_short_unsigned_char( 00869 volume_data1, 00870 y, 00871 start_x, 00872 end_x, 00873 y_offsets1, 00874 row_offsets1, 00875 start_slices1, 00876 n_slices1, 00877 weights1, 00878 volume_data2, 00879 y_offsets2, 00880 row_offsets2, 00881 start_slices2, 00882 n_slices2, 00883 weights2, 00884 rgb_colour_map, 00885 rgb_pixel_ptr 00886 ); 00887 } 00888 else 00889 { 00890 render_many_cmap_unsigned_short_unsigned_char( 00891 volume_data1, 00892 y, 00893 start_x, 00894 end_x, 00895 y_offsets1, 00896 row_offsets1, 00897 start_slices1, 00898 n_slices1, 00899 weights1, 00900 volume_data2, 00901 y_offsets2, 00902 row_offsets2, 00903 start_slices2, 00904 n_slices2, 00905 weights2, 00906 cmode_colour_map, 00907 cmap_pixel_ptr 00908 ); 00909 } 00910 } 00911 break; 00912 case UNSIGNED_SHORT: 00913 if( one_slice ) 00914 { 00915 if( pixels->pixel_type == RGB_PIXEL ) 00916 { 00917 render_one_rgb_unsigned_short_unsigned_short( 00918 volume_data1, 00919 y, 00920 start_x, 00921 end_x, 00922 y_offsets1, 00923 row_offsets1, 00924 volume_data2, 00925 y_offsets2, 00926 row_offsets2, 00927 rgb_colour_map, 00928 rgb_pixel_ptr 00929 ); 00930 } 00931 else 00932 { 00933 render_one_cmap_unsigned_short_unsigned_short( 00934 volume_data1, 00935 y, 00936 start_x, 00937 end_x, 00938 y_offsets1, 00939 row_offsets1, 00940 volume_data2, 00941 y_offsets2, 00942 row_offsets2, 00943 cmode_colour_map, 00944 cmap_pixel_ptr 00945 ); 00946 } 00947 } 00948 else 00949 { 00950 if( pixels->pixel_type == RGB_PIXEL ) 00951 { 00952 render_many_rgb_unsigned_short_unsigned_short( 00953 volume_data1, 00954 y, 00955 start_x, 00956 end_x, 00957 y_offsets1, 00958 row_offsets1, 00959 start_slices1, 00960 n_slices1, 00961 weights1, 00962 volume_data2, 00963 y_offsets2, 00964 row_offsets2, 00965 start_slices2, 00966 n_slices2, 00967 weights2, 00968 rgb_colour_map, 00969 rgb_pixel_ptr 00970 ); 00971 } 00972 else 00973 { 00974 render_many_cmap_unsigned_short_unsigned_short( 00975 volume_data1, 00976 y, 00977 start_x, 00978 end_x, 00979 y_offsets1, 00980 row_offsets1, 00981 start_slices1, 00982 n_slices1, 00983 weights1, 00984 volume_data2, 00985 y_offsets2, 00986 row_offsets2, 00987 start_slices2, 00988 n_slices2, 00989 weights2, 00990 cmode_colour_map, 00991 cmap_pixel_ptr 00992 ); 00993 } 00994 } 00995 break; 00996 case UNSIGNED_INT: 00997 if( one_slice ) 00998 { 00999 if( pixels->pixel_type == RGB_PIXEL ) 01000 { 01001 render_one_rgb_unsigned_short_unsigned_int( 01002 volume_data1, 01003 y, 01004 start_x, 01005 end_x, 01006 y_offsets1, 01007 row_offsets1, 01008 volume_data2, 01009 y_offsets2, 01010 row_offsets2, 01011 rgb_colour_map, 01012 rgb_pixel_ptr 01013 ); 01014 } 01015 else 01016 { 01017 render_one_cmap_unsigned_short_unsigned_int( 01018 volume_data1, 01019 y, 01020 start_x, 01021 end_x, 01022 y_offsets1, 01023 row_offsets1, 01024 volume_data2, 01025 y_offsets2, 01026 row_offsets2, 01027 cmode_colour_map, 01028 cmap_pixel_ptr 01029 ); 01030 } 01031 } 01032 else 01033 { 01034 if( pixels->pixel_type == RGB_PIXEL ) 01035 { 01036 render_many_rgb_unsigned_short_unsigned_int( 01037 volume_data1, 01038 y, 01039 start_x, 01040 end_x, 01041 y_offsets1, 01042 row_offsets1, 01043 start_slices1, 01044 n_slices1, 01045 weights1, 01046 volume_data2, 01047 y_offsets2, 01048 row_offsets2, 01049 start_slices2, 01050 n_slices2, 01051 weights2, 01052 rgb_colour_map, 01053 rgb_pixel_ptr 01054 ); 01055 } 01056 else 01057 { 01058 render_many_cmap_unsigned_short_unsigned_int( 01059 volume_data1, 01060 y, 01061 start_x, 01062 end_x, 01063 y_offsets1, 01064 row_offsets1, 01065 start_slices1, 01066 n_slices1, 01067 weights1, 01068 volume_data2, 01069 y_offsets2, 01070 row_offsets2, 01071 start_slices2, 01072 n_slices2, 01073 weights2, 01074 cmode_colour_map, 01075 cmap_pixel_ptr 01076 ); 01077 } 01078 } 01079 break; 01080 case SIGNED_BYTE: 01081 if( one_slice ) 01082 { 01083 if( pixels->pixel_type == RGB_PIXEL ) 01084 { 01085 render_one_rgb_unsigned_short_signed_char( 01086 volume_data1, 01087 y, 01088 start_x, 01089 end_x, 01090 y_offsets1, 01091 row_offsets1, 01092 volume_data2, 01093 y_offsets2, 01094 row_offsets2, 01095 rgb_colour_map, 01096 rgb_pixel_ptr 01097 ); 01098 } 01099 else 01100 { 01101 render_one_cmap_unsigned_short_signed_char( 01102 volume_data1, 01103 y, 01104 start_x, 01105 end_x, 01106 y_offsets1, 01107 row_offsets1, 01108 volume_data2, 01109 y_offsets2, 01110 row_offsets2, 01111 cmode_colour_map, 01112 cmap_pixel_ptr 01113 ); 01114 } 01115 } 01116 else 01117 { 01118 if( pixels->pixel_type == RGB_PIXEL ) 01119 { 01120 render_many_rgb_unsigned_short_signed_char( 01121 volume_data1, 01122 y, 01123 start_x, 01124 end_x, 01125 y_offsets1, 01126 row_offsets1, 01127 start_slices1, 01128 n_slices1, 01129 weights1, 01130 volume_data2, 01131 y_offsets2, 01132 row_offsets2, 01133 start_slices2, 01134 n_slices2, 01135 weights2, 01136 rgb_colour_map, 01137 rgb_pixel_ptr 01138 ); 01139 } 01140 else 01141 { 01142 render_many_cmap_unsigned_short_signed_char( 01143 volume_data1, 01144 y, 01145 start_x, 01146 end_x, 01147 y_offsets1, 01148 row_offsets1, 01149 start_slices1, 01150 n_slices1, 01151 weights1, 01152 volume_data2, 01153 y_offsets2, 01154 row_offsets2, 01155 start_slices2, 01156 n_slices2, 01157 weights2, 01158 cmode_colour_map, 01159 cmap_pixel_ptr 01160 ); 01161 } 01162 } 01163 break; 01164 case SIGNED_SHORT: 01165 if( one_slice ) 01166 { 01167 if( pixels->pixel_type == RGB_PIXEL ) 01168 { 01169 render_one_rgb_unsigned_short_signed_short( 01170 volume_data1, 01171 y, 01172 start_x, 01173 end_x, 01174 y_offsets1, 01175 row_offsets1, 01176 volume_data2, 01177 y_offsets2, 01178 row_offsets2, 01179 rgb_colour_map, 01180 rgb_pixel_ptr 01181 ); 01182 } 01183 else 01184 { 01185 render_one_cmap_unsigned_short_signed_short( 01186 volume_data1, 01187 y, 01188 start_x, 01189 end_x, 01190 y_offsets1, 01191 row_offsets1, 01192 volume_data2, 01193 y_offsets2, 01194 row_offsets2, 01195 cmode_colour_map, 01196 cmap_pixel_ptr 01197 ); 01198 } 01199 } 01200 else 01201 { 01202 if( pixels->pixel_type == RGB_PIXEL ) 01203 { 01204 render_many_rgb_unsigned_short_signed_short( 01205 volume_data1, 01206 y, 01207 start_x, 01208 end_x, 01209 y_offsets1, 01210 row_offsets1, 01211 start_slices1, 01212 n_slices1, 01213 weights1, 01214 volume_data2, 01215 y_offsets2, 01216 row_offsets2, 01217 start_slices2, 01218 n_slices2, 01219 weights2, 01220 rgb_colour_map, 01221 rgb_pixel_ptr 01222 ); 01223 } 01224 else 01225 { 01226 render_many_cmap_unsigned_short_signed_short( 01227 volume_data1, 01228 y, 01229 start_x, 01230 end_x, 01231 y_offsets1, 01232 row_offsets1, 01233 start_slices1, 01234 n_slices1, 01235 weights1, 01236 volume_data2, 01237 y_offsets2, 01238 row_offsets2, 01239 start_slices2, 01240 n_slices2, 01241 weights2, 01242 cmode_colour_map, 01243 cmap_pixel_ptr 01244 ); 01245 } 01246 } 01247 break; 01248 case SIGNED_INT: 01249 if( one_slice ) 01250 { 01251 if( pixels->pixel_type == RGB_PIXEL ) 01252 { 01253 render_one_rgb_unsigned_short_signed_int( 01254 volume_data1, 01255 y, 01256 start_x, 01257 end_x, 01258 y_offsets1, 01259 row_offsets1, 01260 volume_data2, 01261 y_offsets2, 01262 row_offsets2, 01263 rgb_colour_map, 01264 rgb_pixel_ptr 01265 ); 01266 } 01267 else 01268 { 01269 render_one_cmap_unsigned_short_signed_int( 01270 volume_data1, 01271 y, 01272 start_x, 01273 end_x, 01274 y_offsets1, 01275 row_offsets1, 01276 volume_data2, 01277 y_offsets2, 01278 row_offsets2, 01279 cmode_colour_map, 01280 cmap_pixel_ptr 01281 ); 01282 } 01283 } 01284 else 01285 { 01286 if( pixels->pixel_type == RGB_PIXEL ) 01287 { 01288 render_many_rgb_unsigned_short_signed_int( 01289 volume_data1, 01290 y, 01291 start_x, 01292 end_x, 01293 y_offsets1, 01294 row_offsets1, 01295 start_slices1, 01296 n_slices1, 01297 weights1, 01298 volume_data2, 01299 y_offsets2, 01300 row_offsets2, 01301 start_slices2, 01302 n_slices2, 01303 weights2, 01304 rgb_colour_map, 01305 rgb_pixel_ptr 01306 ); 01307 } 01308 else 01309 { 01310 render_many_cmap_unsigned_short_signed_int( 01311 volume_data1, 01312 y, 01313 start_x, 01314 end_x, 01315 y_offsets1, 01316 row_offsets1, 01317 start_slices1, 01318 n_slices1, 01319 weights1, 01320 volume_data2, 01321 y_offsets2, 01322 row_offsets2, 01323 start_slices2, 01324 n_slices2, 01325 weights2, 01326 cmode_colour_map, 01327 cmap_pixel_ptr 01328 ); 01329 } 01330 } 01331 break; 01332 case FLOAT: 01333 if( one_slice ) 01334 { 01335 if( pixels->pixel_type == RGB_PIXEL ) 01336 { 01337 render_one_rgb_unsigned_short_float( 01338 volume_data1, 01339 y, 01340 start_x, 01341 end_x, 01342 y_offsets1, 01343 row_offsets1, 01344 volume_data2, 01345 y_offsets2, 01346 row_offsets2, 01347 rgb_colour_map, 01348 rgb_pixel_ptr 01349 ); 01350 } 01351 else 01352 { 01353 render_one_cmap_unsigned_short_float( 01354 volume_data1, 01355 y, 01356 start_x, 01357 end_x, 01358 y_offsets1, 01359 row_offsets1, 01360 volume_data2, 01361 y_offsets2, 01362 row_offsets2, 01363 cmode_colour_map, 01364 cmap_pixel_ptr 01365 ); 01366 } 01367 } 01368 else 01369 { 01370 if( pixels->pixel_type == RGB_PIXEL ) 01371 { 01372 render_many_rgb_unsigned_short_float( 01373 volume_data1, 01374 y, 01375 start_x, 01376 end_x, 01377 y_offsets1, 01378 row_offsets1, 01379 start_slices1, 01380 n_slices1, 01381 weights1, 01382 volume_data2, 01383 y_offsets2, 01384 row_offsets2, 01385 start_slices2, 01386 n_slices2, 01387 weights2, 01388 rgb_colour_map, 01389 rgb_pixel_ptr 01390 ); 01391 } 01392 else 01393 { 01394 render_many_cmap_unsigned_short_float( 01395 volume_data1, 01396 y, 01397 start_x, 01398 end_x, 01399 y_offsets1, 01400 row_offsets1, 01401 start_slices1, 01402 n_slices1, 01403 weights1, 01404 volume_data2, 01405 y_offsets2, 01406 row_offsets2, 01407 start_slices2, 01408 n_slices2, 01409 weights2, 01410 cmode_colour_map, 01411 cmap_pixel_ptr 01412 ); 01413 } 01414 } 01415 break; 01416 case DOUBLE: 01417 if( one_slice ) 01418 { 01419 if( pixels->pixel_type == RGB_PIXEL ) 01420 { 01421 render_one_rgb_unsigned_short_double( 01422 volume_data1, 01423 y, 01424 start_x, 01425 end_x, 01426 y_offsets1, 01427 row_offsets1, 01428 volume_data2, 01429 y_offsets2, 01430 row_offsets2, 01431 rgb_colour_map, 01432 rgb_pixel_ptr 01433 ); 01434 } 01435 else 01436 { 01437 render_one_cmap_unsigned_short_double( 01438 volume_data1, 01439 y, 01440 start_x, 01441 end_x, 01442 y_offsets1, 01443 row_offsets1, 01444 volume_data2, 01445 y_offsets2, 01446 row_offsets2, 01447 cmode_colour_map, 01448 cmap_pixel_ptr 01449 ); 01450 } 01451 } 01452 else 01453 { 01454 if( pixels->pixel_type == RGB_PIXEL ) 01455 { 01456 render_many_rgb_unsigned_short_double( 01457 volume_data1, 01458 y, 01459 start_x, 01460 end_x, 01461 y_offsets1, 01462 row_offsets1, 01463 start_slices1, 01464 n_slices1, 01465 weights1, 01466 volume_data2, 01467 y_offsets2, 01468 row_offsets2, 01469 start_slices2, 01470 n_slices2, 01471 weights2, 01472 rgb_colour_map, 01473 rgb_pixel_ptr 01474 ); 01475 } 01476 else 01477 { 01478 render_many_cmap_unsigned_short_double( 01479 volume_data1, 01480 y, 01481 start_x, 01482 end_x, 01483 y_offsets1, 01484 row_offsets1, 01485 start_slices1, 01486 n_slices1, 01487 weights1, 01488 volume_data2, 01489 y_offsets2, 01490 row_offsets2, 01491 start_slices2, 01492 n_slices2, 01493 weights2, 01494 cmode_colour_map, 01495 cmap_pixel_ptr 01496 ); 01497 } 01498 } 01499 break; 01500 } 01501 } 01502 break; 01503 case UNSIGNED_INT: 01504 if( volume_data2 == NULL ) 01505 { 01506 if( one_slice ) 01507 { 01508 if( pixels->pixel_type == RGB_PIXEL ) 01509 { 01510 if( rgb_colour_map == NULL ) 01511 { 01512 render_one_rgb_unsigned_int_direct( 01513 volume_data1, 01514 y, 01515 start_x, 01516 end_x, 01517 y_offsets1, 01518 row_offsets1, 01519 rgb_pixel_ptr 01520 ); 01521 } 01522 else 01523 { 01524 render_one_rgb_unsigned_int( 01525 volume_data1, 01526 y, 01527 start_x, 01528 end_x, 01529 y_offsets1, 01530 row_offsets1, 01531 rgb_colour_map, 01532 rgb_pixel_ptr 01533 ); 01534 } 01535 } 01536 else 01537 { 01538 render_one_cmap_unsigned_int( 01539 volume_data1, 01540 y, 01541 start_x, 01542 end_x, 01543 y_offsets1, 01544 row_offsets1, 01545 cmode_colour_map, 01546 cmap_pixel_ptr 01547 ); 01548 } 01549 } 01550 else 01551 { 01552 if( pixels->pixel_type == RGB_PIXEL ) 01553 { 01554 render_many_rgb_unsigned_int( 01555 volume_data1, 01556 y, 01557 start_x, 01558 end_x, 01559 y_offsets1, 01560 row_offsets1, 01561 start_slices1, 01562 n_slices1, 01563 weights1, 01564 rgb_colour_map, 01565 rgb_pixel_ptr 01566 ); 01567 } 01568 else 01569 { 01570 render_many_cmap_unsigned_int( 01571 volume_data1, 01572 y, 01573 start_x, 01574 end_x, 01575 y_offsets1, 01576 row_offsets1, 01577 start_slices1, 01578 n_slices1, 01579 weights1, 01580 cmode_colour_map, 01581 cmap_pixel_ptr 01582 ); 01583 } 01584 } 01585 } 01586 else 01587 { 01588 switch( volume2_type ) 01589 { 01590 case UNSIGNED_BYTE: 01591 if( one_slice ) 01592 { 01593 if( pixels->pixel_type == RGB_PIXEL ) 01594 { 01595 render_one_rgb_unsigned_int_unsigned_char( 01596 volume_data1, 01597 y, 01598 start_x, 01599 end_x, 01600 y_offsets1, 01601 row_offsets1, 01602 volume_data2, 01603 y_offsets2, 01604 row_offsets2, 01605 rgb_colour_map, 01606 rgb_pixel_ptr 01607 ); 01608 } 01609 else 01610 { 01611 render_one_cmap_unsigned_int_unsigned_char( 01612 volume_data1, 01613 y, 01614 start_x, 01615 end_x, 01616 y_offsets1, 01617 row_offsets1, 01618 volume_data2, 01619 y_offsets2, 01620 row_offsets2, 01621 cmode_colour_map, 01622 cmap_pixel_ptr 01623 ); 01624 } 01625 } 01626 else 01627 { 01628 if( pixels->pixel_type == RGB_PIXEL ) 01629 { 01630 render_many_rgb_unsigned_int_unsigned_char( 01631 volume_data1, 01632 y, 01633 start_x, 01634 end_x, 01635 y_offsets1, 01636 row_offsets1, 01637 start_slices1, 01638 n_slices1, 01639 weights1, 01640 volume_data2, 01641 y_offsets2, 01642 row_offsets2, 01643 start_slices2, 01644 n_slices2, 01645 weights2, 01646 rgb_colour_map, 01647 rgb_pixel_ptr 01648 ); 01649 } 01650 else 01651 { 01652 render_many_cmap_unsigned_int_unsigned_char( 01653 volume_data1, 01654 y, 01655 start_x, 01656 end_x, 01657 y_offsets1, 01658 row_offsets1, 01659 start_slices1, 01660 n_slices1, 01661 weights1, 01662 volume_data2, 01663 y_offsets2, 01664 row_offsets2, 01665 start_slices2, 01666 n_slices2, 01667 weights2, 01668 cmode_colour_map, 01669 cmap_pixel_ptr 01670 ); 01671 } 01672 } 01673 break; 01674 case UNSIGNED_SHORT: 01675 if( one_slice ) 01676 { 01677 if( pixels->pixel_type == RGB_PIXEL ) 01678 { 01679 render_one_rgb_unsigned_int_unsigned_short( 01680 volume_data1, 01681 y, 01682 start_x, 01683 end_x, 01684 y_offsets1, 01685 row_offsets1, 01686 volume_data2, 01687 y_offsets2, 01688 row_offsets2, 01689 rgb_colour_map, 01690 rgb_pixel_ptr 01691 ); 01692 } 01693 else 01694 { 01695 render_one_cmap_unsigned_int_unsigned_short( 01696 volume_data1, 01697 y, 01698 start_x, 01699 end_x, 01700 y_offsets1, 01701 row_offsets1, 01702 volume_data2, 01703 y_offsets2, 01704 row_offsets2, 01705 cmode_colour_map, 01706 cmap_pixel_ptr 01707 ); 01708 } 01709 } 01710 else 01711 { 01712 if( pixels->pixel_type == RGB_PIXEL ) 01713 { 01714 render_many_rgb_unsigned_int_unsigned_short( 01715 volume_data1, 01716 y, 01717 start_x, 01718 end_x, 01719 y_offsets1, 01720 row_offsets1, 01721 start_slices1, 01722 n_slices1, 01723 weights1, 01724 volume_data2, 01725 y_offsets2, 01726 row_offsets2, 01727 start_slices2, 01728 n_slices2, 01729 weights2, 01730 rgb_colour_map, 01731 rgb_pixel_ptr 01732 ); 01733 } 01734 else 01735 { 01736 render_many_cmap_unsigned_int_unsigned_short( 01737 volume_data1, 01738 y, 01739 start_x, 01740 end_x, 01741 y_offsets1, 01742 row_offsets1, 01743 start_slices1, 01744 n_slices1, 01745 weights1, 01746 volume_data2, 01747 y_offsets2, 01748 row_offsets2, 01749 start_slices2, 01750 n_slices2, 01751 weights2, 01752 cmode_colour_map, 01753 cmap_pixel_ptr 01754 ); 01755 } 01756 } 01757 break; 01758 case UNSIGNED_INT: 01759 if( one_slice ) 01760 { 01761 if( pixels->pixel_type == RGB_PIXEL ) 01762 { 01763 render_one_rgb_unsigned_int_unsigned_int( 01764 volume_data1, 01765 y, 01766 start_x, 01767 end_x, 01768 y_offsets1, 01769 row_offsets1, 01770 volume_data2, 01771 y_offsets2, 01772 row_offsets2, 01773 rgb_colour_map, 01774 rgb_pixel_ptr 01775 ); 01776 } 01777 else 01778 { 01779 render_one_cmap_unsigned_int_unsigned_int( 01780 volume_data1, 01781 y, 01782 start_x, 01783 end_x, 01784 y_offsets1, 01785 row_offsets1, 01786 volume_data2, 01787 y_offsets2, 01788 row_offsets2, 01789 cmode_colour_map, 01790 cmap_pixel_ptr 01791 ); 01792 } 01793 } 01794 else 01795 { 01796 if( pixels->pixel_type == RGB_PIXEL ) 01797 { 01798 render_many_rgb_unsigned_int_unsigned_int( 01799 volume_data1, 01800 y, 01801 start_x, 01802 end_x, 01803 y_offsets1, 01804 row_offsets1, 01805 start_slices1, 01806 n_slices1, 01807 weights1, 01808 volume_data2, 01809 y_offsets2, 01810 row_offsets2, 01811 start_slices2, 01812 n_slices2, 01813 weights2, 01814 rgb_colour_map, 01815 rgb_pixel_ptr 01816 ); 01817 } 01818 else 01819 { 01820 render_many_cmap_unsigned_int_unsigned_int( 01821 volume_data1, 01822 y, 01823 start_x, 01824 end_x, 01825 y_offsets1, 01826 row_offsets1, 01827 start_slices1, 01828 n_slices1, 01829 weights1, 01830 volume_data2, 01831 y_offsets2, 01832 row_offsets2, 01833 start_slices2, 01834 n_slices2, 01835 weights2, 01836 cmode_colour_map, 01837 cmap_pixel_ptr 01838 ); 01839 } 01840 } 01841 break; 01842 case SIGNED_BYTE: 01843 if( one_slice ) 01844 { 01845 if( pixels->pixel_type == RGB_PIXEL ) 01846 { 01847 render_one_rgb_unsigned_int_signed_char( 01848 volume_data1, 01849 y, 01850 start_x, 01851 end_x, 01852 y_offsets1, 01853 row_offsets1, 01854 volume_data2, 01855 y_offsets2, 01856 row_offsets2, 01857 rgb_colour_map, 01858 rgb_pixel_ptr 01859 ); 01860 } 01861 else 01862 { 01863 render_one_cmap_unsigned_int_signed_char( 01864 volume_data1, 01865 y, 01866 start_x, 01867 end_x, 01868 y_offsets1, 01869 row_offsets1, 01870 volume_data2, 01871 y_offsets2, 01872 row_offsets2, 01873 cmode_colour_map, 01874 cmap_pixel_ptr 01875 ); 01876 } 01877 } 01878 else 01879 { 01880 if( pixels->pixel_type == RGB_PIXEL ) 01881 { 01882 render_many_rgb_unsigned_int_signed_char( 01883 volume_data1, 01884 y, 01885 start_x, 01886 end_x, 01887 y_offsets1, 01888 row_offsets1, 01889 start_slices1, 01890 n_slices1, 01891 weights1, 01892 volume_data2, 01893 y_offsets2, 01894 row_offsets2, 01895 start_slices2, 01896 n_slices2, 01897 weights2, 01898 rgb_colour_map, 01899 rgb_pixel_ptr 01900 ); 01901 } 01902 else 01903 { 01904 render_many_cmap_unsigned_int_signed_char( 01905 volume_data1, 01906 y, 01907 start_x, 01908 end_x, 01909 y_offsets1, 01910 row_offsets1, 01911 start_slices1, 01912 n_slices1, 01913 weights1, 01914 volume_data2, 01915 y_offsets2, 01916 row_offsets2, 01917 start_slices2, 01918 n_slices2, 01919 weights2, 01920 cmode_colour_map, 01921 cmap_pixel_ptr 01922 ); 01923 } 01924 } 01925 break; 01926 case SIGNED_SHORT: 01927 if( one_slice ) 01928 { 01929 if( pixels->pixel_type == RGB_PIXEL ) 01930 { 01931 render_one_rgb_unsigned_int_signed_short( 01932 volume_data1, 01933 y, 01934 start_x, 01935 end_x, 01936 y_offsets1, 01937 row_offsets1, 01938 volume_data2, 01939 y_offsets2, 01940 row_offsets2, 01941 rgb_colour_map, 01942 rgb_pixel_ptr 01943 ); 01944 } 01945 else 01946 { 01947 render_one_cmap_unsigned_int_signed_short( 01948 volume_data1, 01949 y, 01950 start_x, 01951 end_x, 01952 y_offsets1, 01953 row_offsets1, 01954 volume_data2, 01955 y_offsets2, 01956 row_offsets2, 01957 cmode_colour_map, 01958 cmap_pixel_ptr 01959 ); 01960 } 01961 } 01962 else 01963 { 01964 if( pixels->pixel_type == RGB_PIXEL ) 01965 { 01966 render_many_rgb_unsigned_int_signed_short( 01967 volume_data1, 01968 y, 01969 start_x, 01970 end_x, 01971 y_offsets1, 01972 row_offsets1, 01973 start_slices1, 01974 n_slices1, 01975 weights1, 01976 volume_data2, 01977 y_offsets2, 01978 row_offsets2, 01979 start_slices2, 01980 n_slices2, 01981 weights2, 01982 rgb_colour_map, 01983 rgb_pixel_ptr 01984 ); 01985 } 01986 else 01987 { 01988 render_many_cmap_unsigned_int_signed_short( 01989 volume_data1, 01990 y, 01991 start_x, 01992 end_x, 01993 y_offsets1, 01994 row_offsets1, 01995 start_slices1, 01996 n_slices1, 01997 weights1, 01998 volume_data2, 01999 y_offsets2, 02000 row_offsets2, 02001 start_slices2, 02002 n_slices2, 02003 weights2, 02004 cmode_colour_map, 02005 cmap_pixel_ptr 02006 ); 02007 } 02008 } 02009 break; 02010 case SIGNED_INT: 02011 if( one_slice ) 02012 { 02013 if( pixels->pixel_type == RGB_PIXEL ) 02014 { 02015 render_one_rgb_unsigned_int_signed_int( 02016 volume_data1, 02017 y, 02018 start_x, 02019 end_x, 02020 y_offsets1, 02021 row_offsets1, 02022 volume_data2, 02023 y_offsets2, 02024 row_offsets2, 02025 rgb_colour_map, 02026 rgb_pixel_ptr 02027 ); 02028 } 02029 else 02030 { 02031 render_one_cmap_unsigned_int_signed_int( 02032 volume_data1, 02033 y, 02034 start_x, 02035 end_x, 02036 y_offsets1, 02037 row_offsets1, 02038 volume_data2, 02039 y_offsets2, 02040 row_offsets2, 02041 cmode_colour_map, 02042 cmap_pixel_ptr 02043 ); 02044 } 02045 } 02046 else 02047 { 02048 if( pixels->pixel_type == RGB_PIXEL ) 02049 { 02050 render_many_rgb_unsigned_int_signed_int( 02051 volume_data1, 02052 y, 02053 start_x, 02054 end_x, 02055 y_offsets1, 02056 row_offsets1, 02057 start_slices1, 02058 n_slices1, 02059 weights1, 02060 volume_data2, 02061 y_offsets2, 02062 row_offsets2, 02063 start_slices2, 02064 n_slices2, 02065 weights2, 02066 rgb_colour_map, 02067 rgb_pixel_ptr 02068 ); 02069 } 02070 else 02071 { 02072 render_many_cmap_unsigned_int_signed_int( 02073 volume_data1, 02074 y, 02075 start_x, 02076 end_x, 02077 y_offsets1, 02078 row_offsets1, 02079 start_slices1, 02080 n_slices1, 02081 weights1, 02082 volume_data2, 02083 y_offsets2, 02084 row_offsets2, 02085 start_slices2, 02086 n_slices2, 02087 weights2, 02088 cmode_colour_map, 02089 cmap_pixel_ptr 02090 ); 02091 } 02092 } 02093 break; 02094 case FLOAT: 02095 if( one_slice ) 02096 { 02097 if( pixels->pixel_type == RGB_PIXEL ) 02098 { 02099 render_one_rgb_unsigned_int_float( 02100 volume_data1, 02101 y, 02102 start_x, 02103 end_x, 02104 y_offsets1, 02105 row_offsets1, 02106 volume_data2, 02107 y_offsets2, 02108 row_offsets2, 02109 rgb_colour_map, 02110 rgb_pixel_ptr 02111 ); 02112 } 02113 else 02114 { 02115 render_one_cmap_unsigned_int_float( 02116 volume_data1, 02117 y, 02118 start_x, 02119 end_x, 02120 y_offsets1, 02121 row_offsets1, 02122 volume_data2, 02123 y_offsets2, 02124 row_offsets2, 02125 cmode_colour_map, 02126 cmap_pixel_ptr 02127 ); 02128 } 02129 } 02130 else 02131 { 02132 if( pixels->pixel_type == RGB_PIXEL ) 02133 { 02134 render_many_rgb_unsigned_int_float( 02135 volume_data1, 02136 y, 02137 start_x, 02138 end_x, 02139 y_offsets1, 02140 row_offsets1, 02141 start_slices1, 02142 n_slices1, 02143 weights1, 02144 volume_data2, 02145 y_offsets2, 02146 row_offsets2, 02147 start_slices2, 02148 n_slices2, 02149 weights2, 02150 rgb_colour_map, 02151 rgb_pixel_ptr 02152 ); 02153 } 02154 else 02155 { 02156 render_many_cmap_unsigned_int_float( 02157 volume_data1, 02158 y, 02159 start_x, 02160 end_x, 02161 y_offsets1, 02162 row_offsets1, 02163 start_slices1, 02164 n_slices1, 02165 weights1, 02166 volume_data2, 02167 y_offsets2, 02168 row_offsets2, 02169 start_slices2, 02170 n_slices2, 02171 weights2, 02172 cmode_colour_map, 02173 cmap_pixel_ptr 02174 ); 02175 } 02176 } 02177 break; 02178 case DOUBLE: 02179 if( one_slice ) 02180 { 02181 if( pixels->pixel_type == RGB_PIXEL ) 02182 { 02183 render_one_rgb_unsigned_int_double( 02184 volume_data1, 02185 y, 02186 start_x, 02187 end_x, 02188 y_offsets1, 02189 row_offsets1, 02190 volume_data2, 02191 y_offsets2, 02192 row_offsets2, 02193 rgb_colour_map, 02194 rgb_pixel_ptr 02195 ); 02196 } 02197 else 02198 { 02199 render_one_cmap_unsigned_int_double( 02200 volume_data1, 02201 y, 02202 start_x, 02203 end_x, 02204 y_offsets1, 02205 row_offsets1, 02206 volume_data2, 02207 y_offsets2, 02208 row_offsets2, 02209 cmode_colour_map, 02210 cmap_pixel_ptr 02211 ); 02212 } 02213 } 02214 else 02215 { 02216 if( pixels->pixel_type == RGB_PIXEL ) 02217 { 02218 render_many_rgb_unsigned_int_double( 02219 volume_data1, 02220 y, 02221 start_x, 02222 end_x, 02223 y_offsets1, 02224 row_offsets1, 02225 start_slices1, 02226 n_slices1, 02227 weights1, 02228 volume_data2, 02229 y_offsets2, 02230 row_offsets2, 02231 start_slices2, 02232 n_slices2, 02233 weights2, 02234 rgb_colour_map, 02235 rgb_pixel_ptr 02236 ); 02237 } 02238 else 02239 { 02240 render_many_cmap_unsigned_int_double( 02241 volume_data1, 02242 y, 02243 start_x, 02244 end_x, 02245 y_offsets1, 02246 row_offsets1, 02247 start_slices1, 02248 n_slices1, 02249 weights1, 02250 volume_data2, 02251 y_offsets2, 02252 row_offsets2, 02253 start_slices2, 02254 n_slices2, 02255 weights2, 02256 cmode_colour_map, 02257 cmap_pixel_ptr 02258 ); 02259 } 02260 } 02261 break; 02262 } 02263 } 02264 break; 02265 case SIGNED_BYTE: 02266 if( volume_data2 == NULL ) 02267 { 02268 if( one_slice ) 02269 { 02270 if( pixels->pixel_type == RGB_PIXEL ) 02271 { 02272 render_one_rgb_signed_char( 02273 volume_data1, 02274 y, 02275 start_x, 02276 end_x, 02277 y_offsets1, 02278 row_offsets1, 02279 rgb_colour_map, 02280 rgb_pixel_ptr 02281 ); 02282 } 02283 else 02284 { 02285 render_one_cmap_signed_char( 02286 volume_data1, 02287 y, 02288 start_x, 02289 end_x, 02290 y_offsets1, 02291 row_offsets1, 02292 cmode_colour_map, 02293 cmap_pixel_ptr 02294 ); 02295 } 02296 } 02297 else 02298 { 02299 if( pixels->pixel_type == RGB_PIXEL ) 02300 { 02301 render_many_rgb_signed_char( 02302 volume_data1, 02303 y, 02304 start_x, 02305 end_x, 02306 y_offsets1, 02307 row_offsets1, 02308 start_slices1, 02309 n_slices1, 02310 weights1, 02311 rgb_colour_map, 02312 rgb_pixel_ptr 02313 ); 02314 } 02315 else 02316 { 02317 render_many_cmap_signed_char( 02318 volume_data1, 02319 y, 02320 start_x, 02321 end_x, 02322 y_offsets1, 02323 row_offsets1, 02324 start_slices1, 02325 n_slices1, 02326 weights1, 02327 cmode_colour_map, 02328 cmap_pixel_ptr 02329 ); 02330 } 02331 } 02332 } 02333 else 02334 { 02335 switch( volume2_type ) 02336 { 02337 case UNSIGNED_BYTE: 02338 if( one_slice ) 02339 { 02340 if( pixels->pixel_type == RGB_PIXEL ) 02341 { 02342 render_one_rgb_signed_char_unsigned_char( 02343 volume_data1, 02344 y, 02345 start_x, 02346 end_x, 02347 y_offsets1, 02348 row_offsets1, 02349 volume_data2, 02350 y_offsets2, 02351 row_offsets2, 02352 rgb_colour_map, 02353 rgb_pixel_ptr 02354 ); 02355 } 02356 else 02357 { 02358 render_one_cmap_signed_char_unsigned_char( 02359 volume_data1, 02360 y, 02361 start_x, 02362 end_x, 02363 y_offsets1, 02364 row_offsets1, 02365 volume_data2, 02366 y_offsets2, 02367 row_offsets2, 02368 cmode_colour_map, 02369 cmap_pixel_ptr 02370 ); 02371 } 02372 } 02373 else 02374 { 02375 if( pixels->pixel_type == RGB_PIXEL ) 02376 { 02377 render_many_rgb_signed_char_unsigned_char( 02378 volume_data1, 02379 y, 02380 start_x, 02381 end_x, 02382 y_offsets1, 02383 row_offsets1, 02384 start_slices1, 02385 n_slices1, 02386 weights1, 02387 volume_data2, 02388 y_offsets2, 02389 row_offsets2, 02390 start_slices2, 02391 n_slices2, 02392 weights2, 02393 rgb_colour_map, 02394 rgb_pixel_ptr 02395 ); 02396 } 02397 else 02398 { 02399 render_many_cmap_signed_char_unsigned_char( 02400 volume_data1, 02401 y, 02402 start_x, 02403 end_x, 02404 y_offsets1, 02405 row_offsets1, 02406 start_slices1, 02407 n_slices1, 02408 weights1, 02409 volume_data2, 02410 y_offsets2, 02411 row_offsets2, 02412 start_slices2, 02413 n_slices2, 02414 weights2, 02415 cmode_colour_map, 02416 cmap_pixel_ptr 02417 ); 02418 } 02419 } 02420 break; 02421 case UNSIGNED_SHORT: 02422 if( one_slice ) 02423 { 02424 if( pixels->pixel_type == RGB_PIXEL ) 02425 { 02426 render_one_rgb_signed_char_unsigned_short( 02427 volume_data1, 02428 y, 02429 start_x, 02430 end_x, 02431 y_offsets1, 02432 row_offsets1, 02433 volume_data2, 02434 y_offsets2, 02435 row_offsets2, 02436 rgb_colour_map, 02437 rgb_pixel_ptr 02438 ); 02439 } 02440 else 02441 { 02442 render_one_cmap_signed_char_unsigned_short( 02443 volume_data1, 02444 y, 02445 start_x, 02446 end_x, 02447 y_offsets1, 02448 row_offsets1, 02449 volume_data2, 02450 y_offsets2, 02451 row_offsets2, 02452 cmode_colour_map, 02453 cmap_pixel_ptr 02454 ); 02455 } 02456 } 02457 else 02458 { 02459 if( pixels->pixel_type == RGB_PIXEL ) 02460 { 02461 render_many_rgb_signed_char_unsigned_short( 02462 volume_data1, 02463 y, 02464 start_x, 02465 end_x, 02466 y_offsets1, 02467 row_offsets1, 02468 start_slices1, 02469 n_slices1, 02470 weights1, 02471 volume_data2, 02472 y_offsets2, 02473 row_offsets2, 02474 start_slices2, 02475 n_slices2, 02476 weights2, 02477 rgb_colour_map, 02478 rgb_pixel_ptr 02479 ); 02480 } 02481 else 02482 { 02483 render_many_cmap_signed_char_unsigned_short( 02484 volume_data1, 02485 y, 02486 start_x, 02487 end_x, 02488 y_offsets1, 02489 row_offsets1, 02490 start_slices1, 02491 n_slices1, 02492 weights1, 02493 volume_data2, 02494 y_offsets2, 02495 row_offsets2, 02496 start_slices2, 02497 n_slices2, 02498 weights2, 02499 cmode_colour_map, 02500 cmap_pixel_ptr 02501 ); 02502 } 02503 } 02504 break; 02505 case UNSIGNED_INT: 02506 if( one_slice ) 02507 { 02508 if( pixels->pixel_type == RGB_PIXEL ) 02509 { 02510 render_one_rgb_signed_char_unsigned_int( 02511 volume_data1, 02512 y, 02513 start_x, 02514 end_x, 02515 y_offsets1, 02516 row_offsets1, 02517 volume_data2, 02518 y_offsets2, 02519 row_offsets2, 02520 rgb_colour_map, 02521 rgb_pixel_ptr 02522 ); 02523 } 02524 else 02525 { 02526 render_one_cmap_signed_char_unsigned_int( 02527 volume_data1, 02528 y, 02529 start_x, 02530 end_x, 02531 y_offsets1, 02532 row_offsets1, 02533 volume_data2, 02534 y_offsets2, 02535 row_offsets2, 02536 cmode_colour_map, 02537 cmap_pixel_ptr 02538 ); 02539 } 02540 } 02541 else 02542 { 02543 if( pixels->pixel_type == RGB_PIXEL ) 02544 { 02545 render_many_rgb_signed_char_unsigned_int( 02546 volume_data1, 02547 y, 02548 start_x, 02549 end_x, 02550 y_offsets1, 02551 row_offsets1, 02552 start_slices1, 02553 n_slices1, 02554 weights1, 02555 volume_data2, 02556 y_offsets2, 02557 row_offsets2, 02558 start_slices2, 02559 n_slices2, 02560 weights2, 02561 rgb_colour_map, 02562 rgb_pixel_ptr 02563 ); 02564 } 02565 else 02566 { 02567 render_many_cmap_signed_char_unsigned_int( 02568 volume_data1, 02569 y, 02570 start_x, 02571 end_x, 02572 y_offsets1, 02573 row_offsets1, 02574 start_slices1, 02575 n_slices1, 02576 weights1, 02577 volume_data2, 02578 y_offsets2, 02579 row_offsets2, 02580 start_slices2, 02581 n_slices2, 02582 weights2, 02583 cmode_colour_map, 02584 cmap_pixel_ptr 02585 ); 02586 } 02587 } 02588 break; 02589 case SIGNED_BYTE: 02590 if( one_slice ) 02591 { 02592 if( pixels->pixel_type == RGB_PIXEL ) 02593 { 02594 render_one_rgb_signed_char_signed_char( 02595 volume_data1, 02596 y, 02597 start_x, 02598 end_x, 02599 y_offsets1, 02600 row_offsets1, 02601 volume_data2, 02602 y_offsets2, 02603 row_offsets2, 02604 rgb_colour_map, 02605 rgb_pixel_ptr 02606 ); 02607 } 02608 else 02609 { 02610 render_one_cmap_signed_char_signed_char( 02611 volume_data1, 02612 y, 02613 start_x, 02614 end_x, 02615 y_offsets1, 02616 row_offsets1, 02617 volume_data2, 02618 y_offsets2, 02619 row_offsets2, 02620 cmode_colour_map, 02621 cmap_pixel_ptr 02622 ); 02623 } 02624 } 02625 else 02626 { 02627 if( pixels->pixel_type == RGB_PIXEL ) 02628 { 02629 render_many_rgb_signed_char_signed_char( 02630 volume_data1, 02631 y, 02632 start_x, 02633 end_x, 02634 y_offsets1, 02635 row_offsets1, 02636 start_slices1, 02637 n_slices1, 02638 weights1, 02639 volume_data2, 02640 y_offsets2, 02641 row_offsets2, 02642 start_slices2, 02643 n_slices2, 02644 weights2, 02645 rgb_colour_map, 02646 rgb_pixel_ptr 02647 ); 02648 } 02649 else 02650 { 02651 render_many_cmap_signed_char_signed_char( 02652 volume_data1, 02653 y, 02654 start_x, 02655 end_x, 02656 y_offsets1, 02657 row_offsets1, 02658 start_slices1, 02659 n_slices1, 02660 weights1, 02661 volume_data2, 02662 y_offsets2, 02663 row_offsets2, 02664 start_slices2, 02665 n_slices2, 02666 weights2, 02667 cmode_colour_map, 02668 cmap_pixel_ptr 02669 ); 02670 } 02671 } 02672 break; 02673 case SIGNED_SHORT: 02674 if( one_slice ) 02675 { 02676 if( pixels->pixel_type == RGB_PIXEL ) 02677 { 02678 render_one_rgb_signed_char_signed_short( 02679 volume_data1, 02680 y, 02681 start_x, 02682 end_x, 02683 y_offsets1, 02684 row_offsets1, 02685 volume_data2, 02686 y_offsets2, 02687 row_offsets2, 02688 rgb_colour_map, 02689 rgb_pixel_ptr 02690 ); 02691 } 02692 else 02693 { 02694 render_one_cmap_signed_char_signed_short( 02695 volume_data1, 02696 y, 02697 start_x, 02698 end_x, 02699 y_offsets1, 02700 row_offsets1, 02701 volume_data2, 02702 y_offsets2, 02703 row_offsets2, 02704 cmode_colour_map, 02705 cmap_pixel_ptr 02706 ); 02707 } 02708 } 02709 else 02710 { 02711 if( pixels->pixel_type == RGB_PIXEL ) 02712 { 02713 render_many_rgb_signed_char_signed_short( 02714 volume_data1, 02715 y, 02716 start_x, 02717 end_x, 02718 y_offsets1, 02719 row_offsets1, 02720 start_slices1, 02721 n_slices1, 02722 weights1, 02723 volume_data2, 02724 y_offsets2, 02725 row_offsets2, 02726 start_slices2, 02727 n_slices2, 02728 weights2, 02729 rgb_colour_map, 02730 rgb_pixel_ptr 02731 ); 02732 } 02733 else 02734 { 02735 render_many_cmap_signed_char_signed_short( 02736 volume_data1, 02737 y, 02738 start_x, 02739 end_x, 02740 y_offsets1, 02741 row_offsets1, 02742 start_slices1, 02743 n_slices1, 02744 weights1, 02745 volume_data2, 02746 y_offsets2, 02747 row_offsets2, 02748 start_slices2, 02749 n_slices2, 02750 weights2, 02751 cmode_colour_map, 02752 cmap_pixel_ptr 02753 ); 02754 } 02755 } 02756 break; 02757 case SIGNED_INT: 02758 if( one_slice ) 02759 { 02760 if( pixels->pixel_type == RGB_PIXEL ) 02761 { 02762 render_one_rgb_signed_char_signed_int( 02763 volume_data1, 02764 y, 02765 start_x, 02766 end_x, 02767 y_offsets1, 02768 row_offsets1, 02769 volume_data2, 02770 y_offsets2, 02771 row_offsets2, 02772 rgb_colour_map, 02773 rgb_pixel_ptr 02774 ); 02775 } 02776 else 02777 { 02778 render_one_cmap_signed_char_signed_int( 02779 volume_data1, 02780 y, 02781 start_x, 02782 end_x, 02783 y_offsets1, 02784 row_offsets1, 02785 volume_data2, 02786 y_offsets2, 02787 row_offsets2, 02788 cmode_colour_map, 02789 cmap_pixel_ptr 02790 ); 02791 } 02792 } 02793 else 02794 { 02795 if( pixels->pixel_type == RGB_PIXEL ) 02796 { 02797 render_many_rgb_signed_char_signed_int( 02798 volume_data1, 02799 y, 02800 start_x, 02801 end_x, 02802 y_offsets1, 02803 row_offsets1, 02804 start_slices1, 02805 n_slices1, 02806 weights1, 02807 volume_data2, 02808 y_offsets2, 02809 row_offsets2, 02810 start_slices2, 02811 n_slices2, 02812 weights2, 02813 rgb_colour_map, 02814 rgb_pixel_ptr 02815 ); 02816 } 02817 else 02818 { 02819 render_many_cmap_signed_char_signed_int( 02820 volume_data1, 02821 y, 02822 start_x, 02823 end_x, 02824 y_offsets1, 02825 row_offsets1, 02826 start_slices1, 02827 n_slices1, 02828 weights1, 02829 volume_data2, 02830 y_offsets2, 02831 row_offsets2, 02832 start_slices2, 02833 n_slices2, 02834 weights2, 02835 cmode_colour_map, 02836 cmap_pixel_ptr 02837 ); 02838 } 02839 } 02840 break; 02841 case FLOAT: 02842 if( one_slice ) 02843 { 02844 if( pixels->pixel_type == RGB_PIXEL ) 02845 { 02846 render_one_rgb_signed_char_float( 02847 volume_data1, 02848 y, 02849 start_x, 02850 end_x, 02851 y_offsets1, 02852 row_offsets1, 02853 volume_data2, 02854 y_offsets2, 02855 row_offsets2, 02856 rgb_colour_map, 02857 rgb_pixel_ptr 02858 ); 02859 } 02860 else 02861 { 02862 render_one_cmap_signed_char_float( 02863 volume_data1, 02864 y, 02865 start_x, 02866 end_x, 02867 y_offsets1, 02868 row_offsets1, 02869 volume_data2, 02870 y_offsets2, 02871 row_offsets2, 02872 cmode_colour_map, 02873 cmap_pixel_ptr 02874 ); 02875 } 02876 } 02877 else 02878 { 02879 if( pixels->pixel_type == RGB_PIXEL ) 02880 { 02881 render_many_rgb_signed_char_float( 02882 volume_data1, 02883 y, 02884 start_x, 02885 end_x, 02886 y_offsets1, 02887 row_offsets1, 02888 start_slices1, 02889 n_slices1, 02890 weights1, 02891 volume_data2, 02892 y_offsets2, 02893 row_offsets2, 02894 start_slices2, 02895 n_slices2, 02896 weights2, 02897 rgb_colour_map, 02898 rgb_pixel_ptr 02899 ); 02900 } 02901 else 02902 { 02903 render_many_cmap_signed_char_float( 02904 volume_data1, 02905 y, 02906 start_x, 02907 end_x, 02908 y_offsets1, 02909 row_offsets1, 02910 start_slices1, 02911 n_slices1, 02912 weights1, 02913 volume_data2, 02914 y_offsets2, 02915 row_offsets2, 02916 start_slices2, 02917 n_slices2, 02918 weights2, 02919 cmode_colour_map, 02920 cmap_pixel_ptr 02921 ); 02922 } 02923 } 02924 break; 02925 case DOUBLE: 02926 if( one_slice ) 02927 { 02928 if( pixels->pixel_type == RGB_PIXEL ) 02929 { 02930 render_one_rgb_signed_char_double( 02931 volume_data1, 02932 y, 02933 start_x, 02934 end_x, 02935 y_offsets1, 02936 row_offsets1, 02937 volume_data2, 02938 y_offsets2, 02939 row_offsets2, 02940 rgb_colour_map, 02941 rgb_pixel_ptr 02942 ); 02943 } 02944 else 02945 { 02946 render_one_cmap_signed_char_double( 02947 volume_data1, 02948 y, 02949 start_x, 02950 end_x, 02951 y_offsets1, 02952 row_offsets1, 02953 volume_data2, 02954 y_offsets2, 02955 row_offsets2, 02956 cmode_colour_map, 02957 cmap_pixel_ptr 02958 ); 02959 } 02960 } 02961 else 02962 { 02963 if( pixels->pixel_type == RGB_PIXEL ) 02964 { 02965 render_many_rgb_signed_char_double( 02966 volume_data1, 02967 y, 02968 start_x, 02969 end_x, 02970 y_offsets1, 02971 row_offsets1, 02972 start_slices1, 02973 n_slices1, 02974 weights1, 02975 volume_data2, 02976 y_offsets2, 02977 row_offsets2, 02978 start_slices2, 02979 n_slices2, 02980 weights2, 02981 rgb_colour_map, 02982 rgb_pixel_ptr 02983 ); 02984 } 02985 else 02986 { 02987 render_many_cmap_signed_char_double( 02988 volume_data1, 02989 y, 02990 start_x, 02991 end_x, 02992 y_offsets1, 02993 row_offsets1, 02994 start_slices1, 02995 n_slices1, 02996 weights1, 02997 volume_data2, 02998 y_offsets2, 02999 row_offsets2, 03000 start_slices2, 03001 n_slices2, 03002 weights2, 03003 cmode_colour_map, 03004 cmap_pixel_ptr 03005 ); 03006 } 03007 } 03008 break; 03009 } 03010 } 03011 break; 03012 case SIGNED_SHORT: 03013 if( volume_data2 == NULL ) 03014 { 03015 if( one_slice ) 03016 { 03017 if( pixels->pixel_type == RGB_PIXEL ) 03018 { 03019 render_one_rgb_signed_short( 03020 volume_data1, 03021 y, 03022 start_x, 03023 end_x, 03024 y_offsets1, 03025 row_offsets1, 03026 rgb_colour_map, 03027 rgb_pixel_ptr 03028 ); 03029 } 03030 else 03031 { 03032 render_one_cmap_signed_short( 03033 volume_data1, 03034 y, 03035 start_x, 03036 end_x, 03037 y_offsets1, 03038 row_offsets1, 03039 cmode_colour_map, 03040 cmap_pixel_ptr 03041 ); 03042 } 03043 } 03044 else 03045 { 03046 if( pixels->pixel_type == RGB_PIXEL ) 03047 { 03048 render_many_rgb_signed_short( 03049 volume_data1, 03050 y, 03051 start_x, 03052 end_x, 03053 y_offsets1, 03054 row_offsets1, 03055 start_slices1, 03056 n_slices1, 03057 weights1, 03058 rgb_colour_map, 03059 rgb_pixel_ptr 03060 ); 03061 } 03062 else 03063 { 03064 render_many_cmap_signed_short( 03065 volume_data1, 03066 y, 03067 start_x, 03068 end_x, 03069 y_offsets1, 03070 row_offsets1, 03071 start_slices1, 03072 n_slices1, 03073 weights1, 03074 cmode_colour_map, 03075 cmap_pixel_ptr 03076 ); 03077 } 03078 } 03079 } 03080 else 03081 { 03082 switch( volume2_type ) 03083 { 03084 case UNSIGNED_BYTE: 03085 if( one_slice ) 03086 { 03087 if( pixels->pixel_type == RGB_PIXEL ) 03088 { 03089 render_one_rgb_signed_short_unsigned_char( 03090 volume_data1, 03091 y, 03092 start_x, 03093 end_x, 03094 y_offsets1, 03095 row_offsets1, 03096 volume_data2, 03097 y_offsets2, 03098 row_offsets2, 03099 rgb_colour_map, 03100 rgb_pixel_ptr 03101 ); 03102 } 03103 else 03104 { 03105 render_one_cmap_signed_short_unsigned_char( 03106 volume_data1, 03107 y, 03108 start_x, 03109 end_x, 03110 y_offsets1, 03111 row_offsets1, 03112 volume_data2, 03113 y_offsets2, 03114 row_offsets2, 03115 cmode_colour_map, 03116 cmap_pixel_ptr 03117 ); 03118 } 03119 } 03120 else 03121 { 03122 if( pixels->pixel_type == RGB_PIXEL ) 03123 { 03124 render_many_rgb_signed_short_unsigned_char( 03125 volume_data1, 03126 y, 03127 start_x, 03128 end_x, 03129 y_offsets1, 03130 row_offsets1, 03131 start_slices1, 03132 n_slices1, 03133 weights1, 03134 volume_data2, 03135 y_offsets2, 03136 row_offsets2, 03137 start_slices2, 03138 n_slices2, 03139 weights2, 03140 rgb_colour_map, 03141 rgb_pixel_ptr 03142 ); 03143 } 03144 else 03145 { 03146 render_many_cmap_signed_short_unsigned_char( 03147 volume_data1, 03148 y, 03149 start_x, 03150 end_x, 03151 y_offsets1, 03152 row_offsets1, 03153 start_slices1, 03154 n_slices1, 03155 weights1, 03156 volume_data2, 03157 y_offsets2, 03158 row_offsets2, 03159 start_slices2, 03160 n_slices2, 03161 weights2, 03162 cmode_colour_map, 03163 cmap_pixel_ptr 03164 ); 03165 } 03166 } 03167 break; 03168 case UNSIGNED_SHORT: 03169 if( one_slice ) 03170 { 03171 if( pixels->pixel_type == RGB_PIXEL ) 03172 { 03173 render_one_rgb_signed_short_unsigned_short( 03174 volume_data1, 03175 y, 03176 start_x, 03177 end_x, 03178 y_offsets1, 03179 row_offsets1, 03180 volume_data2, 03181 y_offsets2, 03182 row_offsets2, 03183 rgb_colour_map, 03184 rgb_pixel_ptr 03185 ); 03186 } 03187 else 03188 { 03189 render_one_cmap_signed_short_unsigned_short( 03190 volume_data1, 03191 y, 03192 start_x, 03193 end_x, 03194 y_offsets1, 03195 row_offsets1, 03196 volume_data2, 03197 y_offsets2, 03198 row_offsets2, 03199 cmode_colour_map, 03200 cmap_pixel_ptr 03201 ); 03202 } 03203 } 03204 else 03205 { 03206 if( pixels->pixel_type == RGB_PIXEL ) 03207 { 03208 render_many_rgb_signed_short_unsigned_short( 03209 volume_data1, 03210 y, 03211 start_x, 03212 end_x, 03213 y_offsets1, 03214 row_offsets1, 03215 start_slices1, 03216 n_slices1, 03217 weights1, 03218 volume_data2, 03219 y_offsets2, 03220 row_offsets2, 03221 start_slices2, 03222 n_slices2, 03223 weights2, 03224 rgb_colour_map, 03225 rgb_pixel_ptr 03226 ); 03227 } 03228 else 03229 { 03230 render_many_cmap_signed_short_unsigned_short( 03231 volume_data1, 03232 y, 03233 start_x, 03234 end_x, 03235 y_offsets1, 03236 row_offsets1, 03237 start_slices1, 03238 n_slices1, 03239 weights1, 03240 volume_data2, 03241 y_offsets2, 03242 row_offsets2, 03243 start_slices2, 03244 n_slices2, 03245 weights2, 03246 cmode_colour_map, 03247 cmap_pixel_ptr 03248 ); 03249 } 03250 } 03251 break; 03252 case UNSIGNED_INT: 03253 if( one_slice ) 03254 { 03255 if( pixels->pixel_type == RGB_PIXEL ) 03256 { 03257 render_one_rgb_signed_short_unsigned_int( 03258 volume_data1, 03259 y, 03260 start_x, 03261 end_x, 03262 y_offsets1, 03263 row_offsets1, 03264 volume_data2, 03265 y_offsets2, 03266 row_offsets2, 03267 rgb_colour_map, 03268 rgb_pixel_ptr 03269 ); 03270 } 03271 else 03272 { 03273 render_one_cmap_signed_short_unsigned_int( 03274 volume_data1, 03275 y, 03276 start_x, 03277 end_x, 03278 y_offsets1, 03279 row_offsets1, 03280 volume_data2, 03281 y_offsets2, 03282 row_offsets2, 03283 cmode_colour_map, 03284 cmap_pixel_ptr 03285 ); 03286 } 03287 } 03288 else 03289 { 03290 if( pixels->pixel_type == RGB_PIXEL ) 03291 { 03292 render_many_rgb_signed_short_unsigned_int( 03293 volume_data1, 03294 y, 03295 start_x, 03296 end_x, 03297 y_offsets1, 03298 row_offsets1, 03299 start_slices1, 03300 n_slices1, 03301 weights1, 03302 volume_data2, 03303 y_offsets2, 03304 row_offsets2, 03305 start_slices2, 03306 n_slices2, 03307 weights2, 03308 rgb_colour_map, 03309 rgb_pixel_ptr 03310 ); 03311 } 03312 else 03313 { 03314 render_many_cmap_signed_short_unsigned_int( 03315 volume_data1, 03316 y, 03317 start_x, 03318 end_x, 03319 y_offsets1, 03320 row_offsets1, 03321 start_slices1, 03322 n_slices1, 03323 weights1, 03324 volume_data2, 03325 y_offsets2, 03326 row_offsets2, 03327 start_slices2, 03328 n_slices2, 03329 weights2, 03330 cmode_colour_map, 03331 cmap_pixel_ptr 03332 ); 03333 } 03334 } 03335 break; 03336 case SIGNED_BYTE: 03337 if( one_slice ) 03338 { 03339 if( pixels->pixel_type == RGB_PIXEL ) 03340 { 03341 render_one_rgb_signed_short_signed_char( 03342 volume_data1, 03343 y, 03344 start_x, 03345 end_x, 03346 y_offsets1, 03347 row_offsets1, 03348 volume_data2, 03349 y_offsets2, 03350 row_offsets2, 03351 rgb_colour_map, 03352 rgb_pixel_ptr 03353 ); 03354 } 03355 else 03356 { 03357 render_one_cmap_signed_short_signed_char( 03358 volume_data1, 03359 y, 03360 start_x, 03361 end_x, 03362 y_offsets1, 03363 row_offsets1, 03364 volume_data2, 03365 y_offsets2, 03366 row_offsets2, 03367 cmode_colour_map, 03368 cmap_pixel_ptr 03369 ); 03370 } 03371 } 03372 else 03373 { 03374 if( pixels->pixel_type == RGB_PIXEL ) 03375 { 03376 render_many_rgb_signed_short_signed_char( 03377 volume_data1, 03378 y, 03379 start_x, 03380 end_x, 03381 y_offsets1, 03382 row_offsets1, 03383 start_slices1, 03384 n_slices1, 03385 weights1, 03386 volume_data2, 03387 y_offsets2, 03388 row_offsets2, 03389 start_slices2, 03390 n_slices2, 03391 weights2, 03392 rgb_colour_map, 03393 rgb_pixel_ptr 03394 ); 03395 } 03396 else 03397 { 03398 render_many_cmap_signed_short_signed_char( 03399 volume_data1, 03400 y, 03401 start_x, 03402 end_x, 03403 y_offsets1, 03404 row_offsets1, 03405 start_slices1, 03406 n_slices1, 03407 weights1, 03408 volume_data2, 03409 y_offsets2, 03410 row_offsets2, 03411 start_slices2, 03412 n_slices2, 03413 weights2, 03414 cmode_colour_map, 03415 cmap_pixel_ptr 03416 ); 03417 } 03418 } 03419 break; 03420 case SIGNED_SHORT: 03421 if( one_slice ) 03422 { 03423 if( pixels->pixel_type == RGB_PIXEL ) 03424 { 03425 render_one_rgb_signed_short_signed_short( 03426 volume_data1, 03427 y, 03428 start_x, 03429 end_x, 03430 y_offsets1, 03431 row_offsets1, 03432 volume_data2, 03433 y_offsets2, 03434 row_offsets2, 03435 rgb_colour_map, 03436 rgb_pixel_ptr 03437 ); 03438 } 03439 else 03440 { 03441 render_one_cmap_signed_short_signed_short( 03442 volume_data1, 03443 y, 03444 start_x, 03445 end_x, 03446 y_offsets1, 03447 row_offsets1, 03448 volume_data2, 03449 y_offsets2, 03450 row_offsets2, 03451 cmode_colour_map, 03452 cmap_pixel_ptr 03453 ); 03454 } 03455 } 03456 else 03457 { 03458 if( pixels->pixel_type == RGB_PIXEL ) 03459 { 03460 render_many_rgb_signed_short_signed_short( 03461 volume_data1, 03462 y, 03463 start_x, 03464 end_x, 03465 y_offsets1, 03466 row_offsets1, 03467 start_slices1, 03468 n_slices1, 03469 weights1, 03470 volume_data2, 03471 y_offsets2, 03472 row_offsets2, 03473 start_slices2, 03474 n_slices2, 03475 weights2, 03476 rgb_colour_map, 03477 rgb_pixel_ptr 03478 ); 03479 } 03480 else 03481 { 03482 render_many_cmap_signed_short_signed_short( 03483 volume_data1, 03484 y, 03485 start_x, 03486 end_x, 03487 y_offsets1, 03488 row_offsets1, 03489 start_slices1, 03490 n_slices1, 03491 weights1, 03492 volume_data2, 03493 y_offsets2, 03494 row_offsets2, 03495 start_slices2, 03496 n_slices2, 03497 weights2, 03498 cmode_colour_map, 03499 cmap_pixel_ptr 03500 ); 03501 } 03502 } 03503 break; 03504 case SIGNED_INT: 03505 if( one_slice ) 03506 { 03507 if( pixels->pixel_type == RGB_PIXEL ) 03508 { 03509 render_one_rgb_signed_short_signed_int( 03510 volume_data1, 03511 y, 03512 start_x, 03513 end_x, 03514 y_offsets1, 03515 row_offsets1, 03516 volume_data2, 03517 y_offsets2, 03518 row_offsets2, 03519 rgb_colour_map, 03520 rgb_pixel_ptr 03521 ); 03522 } 03523 else 03524 { 03525 render_one_cmap_signed_short_signed_int( 03526 volume_data1, 03527 y, 03528 start_x, 03529 end_x, 03530 y_offsets1, 03531 row_offsets1, 03532 volume_data2, 03533 y_offsets2, 03534 row_offsets2, 03535 cmode_colour_map, 03536 cmap_pixel_ptr 03537 ); 03538 } 03539 } 03540 else 03541 { 03542 if( pixels->pixel_type == RGB_PIXEL ) 03543 { 03544 render_many_rgb_signed_short_signed_int( 03545 volume_data1, 03546 y, 03547 start_x, 03548 end_x, 03549 y_offsets1, 03550 row_offsets1, 03551 start_slices1, 03552 n_slices1, 03553 weights1, 03554 volume_data2, 03555 y_offsets2, 03556 row_offsets2, 03557 start_slices2, 03558 n_slices2, 03559 weights2, 03560 rgb_colour_map, 03561 rgb_pixel_ptr 03562 ); 03563 } 03564 else 03565 { 03566 render_many_cmap_signed_short_signed_int( 03567 volume_data1, 03568 y, 03569 start_x, 03570 end_x, 03571 y_offsets1, 03572 row_offsets1, 03573 start_slices1, 03574 n_slices1, 03575 weights1, 03576 volume_data2, 03577 y_offsets2, 03578 row_offsets2, 03579 start_slices2, 03580 n_slices2, 03581 weights2, 03582 cmode_colour_map, 03583 cmap_pixel_ptr 03584 ); 03585 } 03586 } 03587 break; 03588 case FLOAT: 03589 if( one_slice ) 03590 { 03591 if( pixels->pixel_type == RGB_PIXEL ) 03592 { 03593 render_one_rgb_signed_short_float( 03594 volume_data1, 03595 y, 03596 start_x, 03597 end_x, 03598 y_offsets1, 03599 row_offsets1, 03600 volume_data2, 03601 y_offsets2, 03602 row_offsets2, 03603 rgb_colour_map, 03604 rgb_pixel_ptr 03605 ); 03606 } 03607 else 03608 { 03609 render_one_cmap_signed_short_float( 03610 volume_data1, 03611 y, 03612 start_x, 03613 end_x, 03614 y_offsets1, 03615 row_offsets1, 03616 volume_data2, 03617 y_offsets2, 03618 row_offsets2, 03619 cmode_colour_map, 03620 cmap_pixel_ptr 03621 ); 03622 } 03623 } 03624 else 03625 { 03626 if( pixels->pixel_type == RGB_PIXEL ) 03627 { 03628 render_many_rgb_signed_short_float( 03629 volume_data1, 03630 y, 03631 start_x, 03632 end_x, 03633 y_offsets1, 03634 row_offsets1, 03635 start_slices1, 03636 n_slices1, 03637 weights1, 03638 volume_data2, 03639 y_offsets2, 03640 row_offsets2, 03641 start_slices2, 03642 n_slices2, 03643 weights2, 03644 rgb_colour_map, 03645 rgb_pixel_ptr 03646 ); 03647 } 03648 else 03649 { 03650 render_many_cmap_signed_short_float( 03651 volume_data1, 03652 y, 03653 start_x, 03654 end_x, 03655 y_offsets1, 03656 row_offsets1, 03657 start_slices1, 03658 n_slices1, 03659 weights1, 03660 volume_data2, 03661 y_offsets2, 03662 row_offsets2, 03663 start_slices2, 03664 n_slices2, 03665 weights2, 03666 cmode_colour_map, 03667 cmap_pixel_ptr 03668 ); 03669 } 03670 } 03671 break; 03672 case DOUBLE: 03673 if( one_slice ) 03674 { 03675 if( pixels->pixel_type == RGB_PIXEL ) 03676 { 03677 render_one_rgb_signed_short_double( 03678 volume_data1, 03679 y, 03680 start_x, 03681 end_x, 03682 y_offsets1, 03683 row_offsets1, 03684 volume_data2, 03685 y_offsets2, 03686 row_offsets2, 03687 rgb_colour_map, 03688 rgb_pixel_ptr 03689 ); 03690 } 03691 else 03692 { 03693 render_one_cmap_signed_short_double( 03694 volume_data1, 03695 y, 03696 start_x, 03697 end_x, 03698 y_offsets1, 03699 row_offsets1, 03700 volume_data2, 03701 y_offsets2, 03702 row_offsets2, 03703 cmode_colour_map, 03704 cmap_pixel_ptr 03705 ); 03706 } 03707 } 03708 else 03709 { 03710 if( pixels->pixel_type == RGB_PIXEL ) 03711 { 03712 render_many_rgb_signed_short_double( 03713 volume_data1, 03714 y, 03715 start_x, 03716 end_x, 03717 y_offsets1, 03718 row_offsets1, 03719 start_slices1, 03720 n_slices1, 03721 weights1, 03722 volume_data2, 03723 y_offsets2, 03724 row_offsets2, 03725 start_slices2, 03726 n_slices2, 03727 weights2, 03728 rgb_colour_map, 03729 rgb_pixel_ptr 03730 ); 03731 } 03732 else 03733 { 03734 render_many_cmap_signed_short_double( 03735 volume_data1, 03736 y, 03737 start_x, 03738 end_x, 03739 y_offsets1, 03740 row_offsets1, 03741 start_slices1, 03742 n_slices1, 03743 weights1, 03744 volume_data2, 03745 y_offsets2, 03746 row_offsets2, 03747 start_slices2, 03748 n_slices2, 03749 weights2, 03750 cmode_colour_map, 03751 cmap_pixel_ptr 03752 ); 03753 } 03754 } 03755 break; 03756 } 03757 } 03758 break; 03759 case SIGNED_INT: 03760 if( volume_data2 == NULL ) 03761 { 03762 if( one_slice ) 03763 { 03764 if( pixels->pixel_type == RGB_PIXEL ) 03765 { 03766 render_one_rgb_signed_int( 03767 volume_data1, 03768 y, 03769 start_x, 03770 end_x, 03771 y_offsets1, 03772 row_offsets1, 03773 rgb_colour_map, 03774 rgb_pixel_ptr 03775 ); 03776 } 03777 else 03778 { 03779 render_one_cmap_signed_int( 03780 volume_data1, 03781 y, 03782 start_x, 03783 end_x, 03784 y_offsets1, 03785 row_offsets1, 03786 cmode_colour_map, 03787 cmap_pixel_ptr 03788 ); 03789 } 03790 } 03791 else 03792 { 03793 if( pixels->pixel_type == RGB_PIXEL ) 03794 { 03795 render_many_rgb_signed_int( 03796 volume_data1, 03797 y, 03798 start_x, 03799 end_x, 03800 y_offsets1, 03801 row_offsets1, 03802 start_slices1, 03803 n_slices1, 03804 weights1, 03805 rgb_colour_map, 03806 rgb_pixel_ptr 03807 ); 03808 } 03809 else 03810 { 03811 render_many_cmap_signed_int( 03812 volume_data1, 03813 y, 03814 start_x, 03815 end_x, 03816 y_offsets1, 03817 row_offsets1, 03818 start_slices1, 03819 n_slices1, 03820 weights1, 03821 cmode_colour_map, 03822 cmap_pixel_ptr 03823 ); 03824 } 03825 } 03826 } 03827 else 03828 { 03829 switch( volume2_type ) 03830 { 03831 case UNSIGNED_BYTE: 03832 if( one_slice ) 03833 { 03834 if( pixels->pixel_type == RGB_PIXEL ) 03835 { 03836 render_one_rgb_signed_int_unsigned_char( 03837 volume_data1, 03838 y, 03839 start_x, 03840 end_x, 03841 y_offsets1, 03842 row_offsets1, 03843 volume_data2, 03844 y_offsets2, 03845 row_offsets2, 03846 rgb_colour_map, 03847 rgb_pixel_ptr 03848 ); 03849 } 03850 else 03851 { 03852 render_one_cmap_signed_int_unsigned_char( 03853 volume_data1, 03854 y, 03855 start_x, 03856 end_x, 03857 y_offsets1, 03858 row_offsets1, 03859 volume_data2, 03860 y_offsets2, 03861 row_offsets2, 03862 cmode_colour_map, 03863 cmap_pixel_ptr 03864 ); 03865 } 03866 } 03867 else 03868 { 03869 if( pixels->pixel_type == RGB_PIXEL ) 03870 { 03871 render_many_rgb_signed_int_unsigned_char( 03872 volume_data1, 03873 y, 03874 start_x, 03875 end_x, 03876 y_offsets1, 03877 row_offsets1, 03878 start_slices1, 03879 n_slices1, 03880 weights1, 03881 volume_data2, 03882 y_offsets2, 03883 row_offsets2, 03884 start_slices2, 03885 n_slices2, 03886 weights2, 03887 rgb_colour_map, 03888 rgb_pixel_ptr 03889 ); 03890 } 03891 else 03892 { 03893 render_many_cmap_signed_int_unsigned_char( 03894 volume_data1, 03895 y, 03896 start_x, 03897 end_x, 03898 y_offsets1, 03899 row_offsets1, 03900 start_slices1, 03901 n_slices1, 03902 weights1, 03903 volume_data2, 03904 y_offsets2, 03905 row_offsets2, 03906 start_slices2, 03907 n_slices2, 03908 weights2, 03909 cmode_colour_map, 03910 cmap_pixel_ptr 03911 ); 03912 } 03913 } 03914 break; 03915 case UNSIGNED_SHORT: 03916 if( one_slice ) 03917 { 03918 if( pixels->pixel_type == RGB_PIXEL ) 03919 { 03920 render_one_rgb_signed_int_unsigned_short( 03921 volume_data1, 03922 y, 03923 start_x, 03924 end_x, 03925 y_offsets1, 03926 row_offsets1, 03927 volume_data2, 03928 y_offsets2, 03929 row_offsets2, 03930 rgb_colour_map, 03931 rgb_pixel_ptr 03932 ); 03933 } 03934 else 03935 { 03936 render_one_cmap_signed_int_unsigned_short( 03937 volume_data1, 03938 y, 03939 start_x, 03940 end_x, 03941 y_offsets1, 03942 row_offsets1, 03943 volume_data2, 03944 y_offsets2, 03945 row_offsets2, 03946 cmode_colour_map, 03947 cmap_pixel_ptr 03948 ); 03949 } 03950 } 03951 else 03952 { 03953 if( pixels->pixel_type == RGB_PIXEL ) 03954 { 03955 render_many_rgb_signed_int_unsigned_short( 03956 volume_data1, 03957 y, 03958 start_x, 03959 end_x, 03960 y_offsets1, 03961 row_offsets1, 03962 start_slices1, 03963 n_slices1, 03964 weights1, 03965 volume_data2, 03966 y_offsets2, 03967 row_offsets2, 03968 start_slices2, 03969 n_slices2, 03970 weights2, 03971 rgb_colour_map, 03972 rgb_pixel_ptr 03973 ); 03974 } 03975 else 03976 { 03977 render_many_cmap_signed_int_unsigned_short( 03978 volume_data1, 03979 y, 03980 start_x, 03981 end_x, 03982 y_offsets1, 03983 row_offsets1, 03984 start_slices1, 03985 n_slices1, 03986 weights1, 03987 volume_data2, 03988 y_offsets2, 03989 row_offsets2, 03990 start_slices2, 03991 n_slices2, 03992 weights2, 03993 cmode_colour_map, 03994 cmap_pixel_ptr 03995 ); 03996 } 03997 } 03998 break; 03999 case UNSIGNED_INT: 04000 if( one_slice ) 04001 { 04002 if( pixels->pixel_type == RGB_PIXEL ) 04003 { 04004 render_one_rgb_signed_int_unsigned_int( 04005 volume_data1, 04006 y, 04007 start_x, 04008 end_x, 04009 y_offsets1, 04010 row_offsets1, 04011 volume_data2, 04012 y_offsets2, 04013 row_offsets2, 04014 rgb_colour_map, 04015 rgb_pixel_ptr 04016 ); 04017 } 04018 else 04019 { 04020 render_one_cmap_signed_int_unsigned_int( 04021 volume_data1, 04022 y, 04023 start_x, 04024 end_x, 04025 y_offsets1, 04026 row_offsets1, 04027 volume_data2, 04028 y_offsets2, 04029 row_offsets2, 04030 cmode_colour_map, 04031 cmap_pixel_ptr 04032 ); 04033 } 04034 } 04035 else 04036 { 04037 if( pixels->pixel_type == RGB_PIXEL ) 04038 { 04039 render_many_rgb_signed_int_unsigned_int( 04040 volume_data1, 04041 y, 04042 start_x, 04043 end_x, 04044 y_offsets1, 04045 row_offsets1, 04046 start_slices1, 04047 n_slices1, 04048 weights1, 04049 volume_data2, 04050 y_offsets2, 04051 row_offsets2, 04052 start_slices2, 04053 n_slices2, 04054 weights2, 04055 rgb_colour_map, 04056 rgb_pixel_ptr 04057 ); 04058 } 04059 else 04060 { 04061 render_many_cmap_signed_int_unsigned_int( 04062 volume_data1, 04063 y, 04064 start_x, 04065 end_x, 04066 y_offsets1, 04067 row_offsets1, 04068 start_slices1, 04069 n_slices1, 04070 weights1, 04071 volume_data2, 04072 y_offsets2, 04073 row_offsets2, 04074 start_slices2, 04075 n_slices2, 04076 weights2, 04077 cmode_colour_map, 04078 cmap_pixel_ptr 04079 ); 04080 } 04081 } 04082 break; 04083 case SIGNED_BYTE: 04084 if( one_slice ) 04085 { 04086 if( pixels->pixel_type == RGB_PIXEL ) 04087 { 04088 render_one_rgb_signed_int_signed_char( 04089 volume_data1, 04090 y, 04091 start_x, 04092 end_x, 04093 y_offsets1, 04094 row_offsets1, 04095 volume_data2, 04096 y_offsets2, 04097 row_offsets2, 04098 rgb_colour_map, 04099 rgb_pixel_ptr 04100 ); 04101 } 04102 else 04103 { 04104 render_one_cmap_signed_int_signed_char( 04105 volume_data1, 04106 y, 04107 start_x, 04108 end_x, 04109 y_offsets1, 04110 row_offsets1, 04111 volume_data2, 04112 y_offsets2, 04113 row_offsets2, 04114 cmode_colour_map, 04115 cmap_pixel_ptr 04116 ); 04117 } 04118 } 04119 else 04120 { 04121 if( pixels->pixel_type == RGB_PIXEL ) 04122 { 04123 render_many_rgb_signed_int_signed_char( 04124 volume_data1, 04125 y, 04126 start_x, 04127 end_x, 04128 y_offsets1, 04129 row_offsets1, 04130 start_slices1, 04131 n_slices1, 04132 weights1, 04133 volume_data2, 04134 y_offsets2, 04135 row_offsets2, 04136 start_slices2, 04137 n_slices2, 04138 weights2, 04139 rgb_colour_map, 04140 rgb_pixel_ptr 04141 ); 04142 } 04143 else 04144 { 04145 render_many_cmap_signed_int_signed_char( 04146 volume_data1, 04147 y, 04148 start_x, 04149 end_x, 04150 y_offsets1, 04151 row_offsets1, 04152 start_slices1, 04153 n_slices1, 04154 weights1, 04155 volume_data2, 04156 y_offsets2, 04157 row_offsets2, 04158 start_slices2, 04159 n_slices2, 04160 weights2, 04161 cmode_colour_map, 04162 cmap_pixel_ptr 04163 ); 04164 } 04165 } 04166 break; 04167 case SIGNED_SHORT: 04168 if( one_slice ) 04169 { 04170 if( pixels->pixel_type == RGB_PIXEL ) 04171 { 04172 render_one_rgb_signed_int_signed_short( 04173 volume_data1, 04174 y, 04175 start_x, 04176 end_x, 04177 y_offsets1, 04178 row_offsets1, 04179 volume_data2, 04180 y_offsets2, 04181 row_offsets2, 04182 rgb_colour_map, 04183 rgb_pixel_ptr 04184 ); 04185 } 04186 else 04187 { 04188 render_one_cmap_signed_int_signed_short( 04189 volume_data1, 04190 y, 04191 start_x, 04192 end_x, 04193 y_offsets1, 04194 row_offsets1, 04195 volume_data2, 04196 y_offsets2, 04197 row_offsets2, 04198 cmode_colour_map, 04199 cmap_pixel_ptr 04200 ); 04201 } 04202 } 04203 else 04204 { 04205 if( pixels->pixel_type == RGB_PIXEL ) 04206 { 04207 render_many_rgb_signed_int_signed_short( 04208 volume_data1, 04209 y, 04210 start_x, 04211 end_x, 04212 y_offsets1, 04213 row_offsets1, 04214 start_slices1, 04215 n_slices1, 04216 weights1, 04217 volume_data2, 04218 y_offsets2, 04219 row_offsets2, 04220 start_slices2, 04221 n_slices2, 04222 weights2, 04223 rgb_colour_map, 04224 rgb_pixel_ptr 04225 ); 04226 } 04227 else 04228 { 04229 render_many_cmap_signed_int_signed_short( 04230 volume_data1, 04231 y, 04232 start_x, 04233 end_x, 04234 y_offsets1, 04235 row_offsets1, 04236 start_slices1, 04237 n_slices1, 04238 weights1, 04239 volume_data2, 04240 y_offsets2, 04241 row_offsets2, 04242 start_slices2, 04243 n_slices2, 04244 weights2, 04245 cmode_colour_map, 04246 cmap_pixel_ptr 04247 ); 04248 } 04249 } 04250 break; 04251 case SIGNED_INT: 04252 if( one_slice ) 04253 { 04254 if( pixels->pixel_type == RGB_PIXEL ) 04255 { 04256 render_one_rgb_signed_int_signed_int( 04257 volume_data1, 04258 y, 04259 start_x, 04260 end_x, 04261 y_offsets1, 04262 row_offsets1, 04263 volume_data2, 04264 y_offsets2, 04265 row_offsets2, 04266 rgb_colour_map, 04267 rgb_pixel_ptr 04268 ); 04269 } 04270 else 04271 { 04272 render_one_cmap_signed_int_signed_int( 04273 volume_data1, 04274 y, 04275 start_x, 04276 end_x, 04277 y_offsets1, 04278 row_offsets1, 04279 volume_data2, 04280 y_offsets2, 04281 row_offsets2, 04282 cmode_colour_map, 04283 cmap_pixel_ptr 04284 ); 04285 } 04286 } 04287 else 04288 { 04289 if( pixels->pixel_type == RGB_PIXEL ) 04290 { 04291 render_many_rgb_signed_int_signed_int( 04292 volume_data1, 04293 y, 04294 start_x, 04295 end_x, 04296 y_offsets1, 04297 row_offsets1, 04298 start_slices1, 04299 n_slices1, 04300 weights1, 04301 volume_data2, 04302 y_offsets2, 04303 row_offsets2, 04304 start_slices2, 04305 n_slices2, 04306 weights2, 04307 rgb_colour_map, 04308 rgb_pixel_ptr 04309 ); 04310 } 04311 else 04312 { 04313 render_many_cmap_signed_int_signed_int( 04314 volume_data1, 04315 y, 04316 start_x, 04317 end_x, 04318 y_offsets1, 04319 row_offsets1, 04320 start_slices1, 04321 n_slices1, 04322 weights1, 04323 volume_data2, 04324 y_offsets2, 04325 row_offsets2, 04326 start_slices2, 04327 n_slices2, 04328 weights2, 04329 cmode_colour_map, 04330 cmap_pixel_ptr 04331 ); 04332 } 04333 } 04334 break; 04335 case FLOAT: 04336 if( one_slice ) 04337 { 04338 if( pixels->pixel_type == RGB_PIXEL ) 04339 { 04340 render_one_rgb_signed_int_float( 04341 volume_data1, 04342 y, 04343 start_x, 04344 end_x, 04345 y_offsets1, 04346 row_offsets1, 04347 volume_data2, 04348 y_offsets2, 04349 row_offsets2, 04350 rgb_colour_map, 04351 rgb_pixel_ptr 04352 ); 04353 } 04354 else 04355 { 04356 render_one_cmap_signed_int_float( 04357 volume_data1, 04358 y, 04359 start_x, 04360 end_x, 04361 y_offsets1, 04362 row_offsets1, 04363 volume_data2, 04364 y_offsets2, 04365 row_offsets2, 04366 cmode_colour_map, 04367 cmap_pixel_ptr 04368 ); 04369 } 04370 } 04371 else 04372 { 04373 if( pixels->pixel_type == RGB_PIXEL ) 04374 { 04375 render_many_rgb_signed_int_float( 04376 volume_data1, 04377 y, 04378 start_x, 04379 end_x, 04380 y_offsets1, 04381 row_offsets1, 04382 start_slices1, 04383 n_slices1, 04384 weights1, 04385 volume_data2, 04386 y_offsets2, 04387 row_offsets2, 04388 start_slices2, 04389 n_slices2, 04390 weights2, 04391 rgb_colour_map, 04392 rgb_pixel_ptr 04393 ); 04394 } 04395 else 04396 { 04397 render_many_cmap_signed_int_float( 04398 volume_data1, 04399 y, 04400 start_x, 04401 end_x, 04402 y_offsets1, 04403 row_offsets1, 04404 start_slices1, 04405 n_slices1, 04406 weights1, 04407 volume_data2, 04408 y_offsets2, 04409 row_offsets2, 04410 start_slices2, 04411 n_slices2, 04412 weights2, 04413 cmode_colour_map, 04414 cmap_pixel_ptr 04415 ); 04416 } 04417 } 04418 break; 04419 case DOUBLE: 04420 if( one_slice ) 04421 { 04422 if( pixels->pixel_type == RGB_PIXEL ) 04423 { 04424 render_one_rgb_signed_int_double( 04425 volume_data1, 04426 y, 04427 start_x, 04428 end_x, 04429 y_offsets1, 04430 row_offsets1, 04431 volume_data2, 04432 y_offsets2, 04433 row_offsets2, 04434 rgb_colour_map, 04435 rgb_pixel_ptr 04436 ); 04437 } 04438 else 04439 { 04440 render_one_cmap_signed_int_double( 04441 volume_data1, 04442 y, 04443 start_x, 04444 end_x, 04445 y_offsets1, 04446 row_offsets1, 04447 volume_data2, 04448 y_offsets2, 04449 row_offsets2, 04450 cmode_colour_map, 04451 cmap_pixel_ptr 04452 ); 04453 } 04454 } 04455 else 04456 { 04457 if( pixels->pixel_type == RGB_PIXEL ) 04458 { 04459 render_many_rgb_signed_int_double( 04460 volume_data1, 04461 y, 04462 start_x, 04463 end_x, 04464 y_offsets1, 04465 row_offsets1, 04466 start_slices1, 04467 n_slices1, 04468 weights1, 04469 volume_data2, 04470 y_offsets2, 04471 row_offsets2, 04472 start_slices2, 04473 n_slices2, 04474 weights2, 04475 rgb_colour_map, 04476 rgb_pixel_ptr 04477 ); 04478 } 04479 else 04480 { 04481 render_many_cmap_signed_int_double( 04482 volume_data1, 04483 y, 04484 start_x, 04485 end_x, 04486 y_offsets1, 04487 row_offsets1, 04488 start_slices1, 04489 n_slices1, 04490 weights1, 04491 volume_data2, 04492 y_offsets2, 04493 row_offsets2, 04494 start_slices2, 04495 n_slices2, 04496 weights2, 04497 cmode_colour_map, 04498 cmap_pixel_ptr 04499 ); 04500 } 04501 } 04502 break; 04503 } 04504 } 04505 break; 04506 case FLOAT: 04507 if( volume_data2 == NULL ) 04508 { 04509 if( one_slice ) 04510 { 04511 if( pixels->pixel_type == RGB_PIXEL ) 04512 { 04513 render_one_rgb_float( 04514 volume_data1, 04515 y, 04516 start_x, 04517 end_x, 04518 y_offsets1, 04519 row_offsets1, 04520 rgb_colour_map, 04521 rgb_pixel_ptr 04522 ); 04523 } 04524 else 04525 { 04526 render_one_cmap_float( 04527 volume_data1, 04528 y, 04529 start_x, 04530 end_x, 04531 y_offsets1, 04532 row_offsets1, 04533 cmode_colour_map, 04534 cmap_pixel_ptr 04535 ); 04536 } 04537 } 04538 else 04539 { 04540 if( pixels->pixel_type == RGB_PIXEL ) 04541 { 04542 render_many_rgb_float( 04543 volume_data1, 04544 y, 04545 start_x, 04546 end_x, 04547 y_offsets1, 04548 row_offsets1, 04549 start_slices1, 04550 n_slices1, 04551 weights1, 04552 rgb_colour_map, 04553 rgb_pixel_ptr 04554 ); 04555 } 04556 else 04557 { 04558 render_many_cmap_float( 04559 volume_data1, 04560 y, 04561 start_x, 04562 end_x, 04563 y_offsets1, 04564 row_offsets1, 04565 start_slices1, 04566 n_slices1, 04567 weights1, 04568 cmode_colour_map, 04569 cmap_pixel_ptr 04570 ); 04571 } 04572 } 04573 } 04574 else 04575 { 04576 switch( volume2_type ) 04577 { 04578 case UNSIGNED_BYTE: 04579 if( one_slice ) 04580 { 04581 if( pixels->pixel_type == RGB_PIXEL ) 04582 { 04583 render_one_rgb_float_unsigned_char( 04584 volume_data1, 04585 y, 04586 start_x, 04587 end_x, 04588 y_offsets1, 04589 row_offsets1, 04590 volume_data2, 04591 y_offsets2, 04592 row_offsets2, 04593 rgb_colour_map, 04594 rgb_pixel_ptr 04595 ); 04596 } 04597 else 04598 { 04599 render_one_cmap_float_unsigned_char( 04600 volume_data1, 04601 y, 04602 start_x, 04603 end_x, 04604 y_offsets1, 04605 row_offsets1, 04606 volume_data2, 04607 y_offsets2, 04608 row_offsets2, 04609 cmode_colour_map, 04610 cmap_pixel_ptr 04611 ); 04612 } 04613 } 04614 else 04615 { 04616 if( pixels->pixel_type == RGB_PIXEL ) 04617 { 04618 render_many_rgb_float_unsigned_char( 04619 volume_data1, 04620 y, 04621 start_x, 04622 end_x, 04623 y_offsets1, 04624 row_offsets1, 04625 start_slices1, 04626 n_slices1, 04627 weights1, 04628 volume_data2, 04629 y_offsets2, 04630 row_offsets2, 04631 start_slices2, 04632 n_slices2, 04633 weights2, 04634 rgb_colour_map, 04635 rgb_pixel_ptr 04636 ); 04637 } 04638 else 04639 { 04640 render_many_cmap_float_unsigned_char( 04641 volume_data1, 04642 y, 04643 start_x, 04644 end_x, 04645 y_offsets1, 04646 row_offsets1, 04647 start_slices1, 04648 n_slices1, 04649 weights1, 04650 volume_data2, 04651 y_offsets2, 04652 row_offsets2, 04653 start_slices2, 04654 n_slices2, 04655 weights2, 04656 cmode_colour_map, 04657 cmap_pixel_ptr 04658 ); 04659 } 04660 } 04661 break; 04662 case UNSIGNED_SHORT: 04663 if( one_slice ) 04664 { 04665 if( pixels->pixel_type == RGB_PIXEL ) 04666 { 04667 render_one_rgb_float_unsigned_short( 04668 volume_data1, 04669 y, 04670 start_x, 04671 end_x, 04672 y_offsets1, 04673 row_offsets1, 04674 volume_data2, 04675 y_offsets2, 04676 row_offsets2, 04677 rgb_colour_map, 04678 rgb_pixel_ptr 04679 ); 04680 } 04681 else 04682 { 04683 render_one_cmap_float_unsigned_short( 04684 volume_data1, 04685 y, 04686 start_x, 04687 end_x, 04688 y_offsets1, 04689 row_offsets1, 04690 volume_data2, 04691 y_offsets2, 04692 row_offsets2, 04693 cmode_colour_map, 04694 cmap_pixel_ptr 04695 ); 04696 } 04697 } 04698 else 04699 { 04700 if( pixels->pixel_type == RGB_PIXEL ) 04701 { 04702 render_many_rgb_float_unsigned_short( 04703 volume_data1, 04704 y, 04705 start_x, 04706 end_x, 04707 y_offsets1, 04708 row_offsets1, 04709 start_slices1, 04710 n_slices1, 04711 weights1, 04712 volume_data2, 04713 y_offsets2, 04714 row_offsets2, 04715 start_slices2, 04716 n_slices2, 04717 weights2, 04718 rgb_colour_map, 04719 rgb_pixel_ptr 04720 ); 04721 } 04722 else 04723 { 04724 render_many_cmap_float_unsigned_short( 04725 volume_data1, 04726 y, 04727 start_x, 04728 end_x, 04729 y_offsets1, 04730 row_offsets1, 04731 start_slices1, 04732 n_slices1, 04733 weights1, 04734 volume_data2, 04735 y_offsets2, 04736 row_offsets2, 04737 start_slices2, 04738 n_slices2, 04739 weights2, 04740 cmode_colour_map, 04741 cmap_pixel_ptr 04742 ); 04743 } 04744 } 04745 break; 04746 case UNSIGNED_INT: 04747 if( one_slice ) 04748 { 04749 if( pixels->pixel_type == RGB_PIXEL ) 04750 { 04751 render_one_rgb_float_unsigned_int( 04752 volume_data1, 04753 y, 04754 start_x, 04755 end_x, 04756 y_offsets1, 04757 row_offsets1, 04758 volume_data2, 04759 y_offsets2, 04760 row_offsets2, 04761 rgb_colour_map, 04762 rgb_pixel_ptr 04763 ); 04764 } 04765 else 04766 { 04767 render_one_cmap_float_unsigned_int( 04768 volume_data1, 04769 y, 04770 start_x, 04771 end_x, 04772 y_offsets1, 04773 row_offsets1, 04774 volume_data2, 04775 y_offsets2, 04776 row_offsets2, 04777 cmode_colour_map, 04778 cmap_pixel_ptr 04779 ); 04780 } 04781 } 04782 else 04783 { 04784 if( pixels->pixel_type == RGB_PIXEL ) 04785 { 04786 render_many_rgb_float_unsigned_int( 04787 volume_data1, 04788 y, 04789 start_x, 04790 end_x, 04791 y_offsets1, 04792 row_offsets1, 04793 start_slices1, 04794 n_slices1, 04795 weights1, 04796 volume_data2, 04797 y_offsets2, 04798 row_offsets2, 04799 start_slices2, 04800 n_slices2, 04801 weights2, 04802 rgb_colour_map, 04803 rgb_pixel_ptr 04804 ); 04805 } 04806 else 04807 { 04808 render_many_cmap_float_unsigned_int( 04809 volume_data1, 04810 y, 04811 start_x, 04812 end_x, 04813 y_offsets1, 04814 row_offsets1, 04815 start_slices1, 04816 n_slices1, 04817 weights1, 04818 volume_data2, 04819 y_offsets2, 04820 row_offsets2, 04821 start_slices2, 04822 n_slices2, 04823 weights2, 04824 cmode_colour_map, 04825 cmap_pixel_ptr 04826 ); 04827 } 04828 } 04829 break; 04830 case SIGNED_BYTE: 04831 if( one_slice ) 04832 { 04833 if( pixels->pixel_type == RGB_PIXEL ) 04834 { 04835 render_one_rgb_float_signed_char( 04836 volume_data1, 04837 y, 04838 start_x, 04839 end_x, 04840 y_offsets1, 04841 row_offsets1, 04842 volume_data2, 04843 y_offsets2, 04844 row_offsets2, 04845 rgb_colour_map, 04846 rgb_pixel_ptr 04847 ); 04848 } 04849 else 04850 { 04851 render_one_cmap_float_signed_char( 04852 volume_data1, 04853 y, 04854 start_x, 04855 end_x, 04856 y_offsets1, 04857 row_offsets1, 04858 volume_data2, 04859 y_offsets2, 04860 row_offsets2, 04861 cmode_colour_map, 04862 cmap_pixel_ptr 04863 ); 04864 } 04865 } 04866 else 04867 { 04868 if( pixels->pixel_type == RGB_PIXEL ) 04869 { 04870 render_many_rgb_float_signed_char( 04871 volume_data1, 04872 y, 04873 start_x, 04874 end_x, 04875 y_offsets1, 04876 row_offsets1, 04877 start_slices1, 04878 n_slices1, 04879 weights1, 04880 volume_data2, 04881 y_offsets2, 04882 row_offsets2, 04883 start_slices2, 04884 n_slices2, 04885 weights2, 04886 rgb_colour_map, 04887 rgb_pixel_ptr 04888 ); 04889 } 04890 else 04891 { 04892 render_many_cmap_float_signed_char( 04893 volume_data1, 04894 y, 04895 start_x, 04896 end_x, 04897 y_offsets1, 04898 row_offsets1, 04899 start_slices1, 04900 n_slices1, 04901 weights1, 04902 volume_data2, 04903 y_offsets2, 04904 row_offsets2, 04905 start_slices2, 04906 n_slices2, 04907 weights2, 04908 cmode_colour_map, 04909 cmap_pixel_ptr 04910 ); 04911 } 04912 } 04913 break; 04914 case SIGNED_SHORT: 04915 if( one_slice ) 04916 { 04917 if( pixels->pixel_type == RGB_PIXEL ) 04918 { 04919 render_one_rgb_float_signed_short( 04920 volume_data1, 04921 y, 04922 start_x, 04923 end_x, 04924 y_offsets1, 04925 row_offsets1, 04926 volume_data2, 04927 y_offsets2, 04928 row_offsets2, 04929 rgb_colour_map, 04930 rgb_pixel_ptr 04931 ); 04932 } 04933 else 04934 { 04935 render_one_cmap_float_signed_short( 04936 volume_data1, 04937 y, 04938 start_x, 04939 end_x, 04940 y_offsets1, 04941 row_offsets1, 04942 volume_data2, 04943 y_offsets2, 04944 row_offsets2, 04945 cmode_colour_map, 04946 cmap_pixel_ptr 04947 ); 04948 } 04949 } 04950 else 04951 { 04952 if( pixels->pixel_type == RGB_PIXEL ) 04953 { 04954 render_many_rgb_float_signed_short( 04955 volume_data1, 04956 y, 04957 start_x, 04958 end_x, 04959 y_offsets1, 04960 row_offsets1, 04961 start_slices1, 04962 n_slices1, 04963 weights1, 04964 volume_data2, 04965 y_offsets2, 04966 row_offsets2, 04967 start_slices2, 04968 n_slices2, 04969 weights2, 04970 rgb_colour_map, 04971 rgb_pixel_ptr 04972 ); 04973 } 04974 else 04975 { 04976 render_many_cmap_float_signed_short( 04977 volume_data1, 04978 y, 04979 start_x, 04980 end_x, 04981 y_offsets1, 04982 row_offsets1, 04983 start_slices1, 04984 n_slices1, 04985 weights1, 04986 volume_data2, 04987 y_offsets2, 04988 row_offsets2, 04989 start_slices2, 04990 n_slices2, 04991 weights2, 04992 cmode_colour_map, 04993 cmap_pixel_ptr 04994 ); 04995 } 04996 } 04997 break; 04998 case SIGNED_INT: 04999 if( one_slice ) 05000 { 05001 if( pixels->pixel_type == RGB_PIXEL ) 05002 { 05003 render_one_rgb_float_signed_int( 05004 volume_data1, 05005 y, 05006 start_x, 05007 end_x, 05008 y_offsets1, 05009 row_offsets1, 05010 volume_data2, 05011 y_offsets2, 05012 row_offsets2, 05013 rgb_colour_map, 05014 rgb_pixel_ptr 05015 ); 05016 } 05017 else 05018 { 05019 render_one_cmap_float_signed_int( 05020 volume_data1, 05021 y, 05022 start_x, 05023 end_x, 05024 y_offsets1, 05025 row_offsets1, 05026 volume_data2, 05027 y_offsets2, 05028 row_offsets2, 05029 cmode_colour_map, 05030 cmap_pixel_ptr 05031 ); 05032 } 05033 } 05034 else 05035 { 05036 if( pixels->pixel_type == RGB_PIXEL ) 05037 { 05038 render_many_rgb_float_signed_int( 05039 volume_data1, 05040 y, 05041 start_x, 05042 end_x, 05043 y_offsets1, 05044 row_offsets1, 05045 start_slices1, 05046 n_slices1, 05047 weights1, 05048 volume_data2, 05049 y_offsets2, 05050 row_offsets2, 05051 start_slices2, 05052 n_slices2, 05053 weights2, 05054 rgb_colour_map, 05055 rgb_pixel_ptr 05056 ); 05057 } 05058 else 05059 { 05060 render_many_cmap_float_signed_int( 05061 volume_data1, 05062 y, 05063 start_x, 05064 end_x, 05065 y_offsets1, 05066 row_offsets1, 05067 start_slices1, 05068 n_slices1, 05069 weights1, 05070 volume_data2, 05071 y_offsets2, 05072 row_offsets2, 05073 start_slices2, 05074 n_slices2, 05075 weights2, 05076 cmode_colour_map, 05077 cmap_pixel_ptr 05078 ); 05079 } 05080 } 05081 break; 05082 case FLOAT: 05083 if( one_slice ) 05084 { 05085 if( pixels->pixel_type == RGB_PIXEL ) 05086 { 05087 render_one_rgb_float_float( 05088 volume_data1, 05089 y, 05090 start_x, 05091 end_x, 05092 y_offsets1, 05093 row_offsets1, 05094 volume_data2, 05095 y_offsets2, 05096 row_offsets2, 05097 rgb_colour_map, 05098 rgb_pixel_ptr 05099 ); 05100 } 05101 else 05102 { 05103 render_one_cmap_float_float( 05104 volume_data1, 05105 y, 05106 start_x, 05107 end_x, 05108 y_offsets1, 05109 row_offsets1, 05110 volume_data2, 05111 y_offsets2, 05112 row_offsets2, 05113 cmode_colour_map, 05114 cmap_pixel_ptr 05115 ); 05116 } 05117 } 05118 else 05119 { 05120 if( pixels->pixel_type == RGB_PIXEL ) 05121 { 05122 render_many_rgb_float_float( 05123 volume_data1, 05124 y, 05125 start_x, 05126 end_x, 05127 y_offsets1, 05128 row_offsets1, 05129 start_slices1, 05130 n_slices1, 05131 weights1, 05132 volume_data2, 05133 y_offsets2, 05134 row_offsets2, 05135 start_slices2, 05136 n_slices2, 05137 weights2, 05138 rgb_colour_map, 05139 rgb_pixel_ptr 05140 ); 05141 } 05142 else 05143 { 05144 render_many_cmap_float_float( 05145 volume_data1, 05146 y, 05147 start_x, 05148 end_x, 05149 y_offsets1, 05150 row_offsets1, 05151 start_slices1, 05152 n_slices1, 05153 weights1, 05154 volume_data2, 05155 y_offsets2, 05156 row_offsets2, 05157 start_slices2, 05158 n_slices2, 05159 weights2, 05160 cmode_colour_map, 05161 cmap_pixel_ptr 05162 ); 05163 } 05164 } 05165 break; 05166 case DOUBLE: 05167 if( one_slice ) 05168 { 05169 if( pixels->pixel_type == RGB_PIXEL ) 05170 { 05171 render_one_rgb_float_double( 05172 volume_data1, 05173 y, 05174 start_x, 05175 end_x, 05176 y_offsets1, 05177 row_offsets1, 05178 volume_data2, 05179 y_offsets2, 05180 row_offsets2, 05181 rgb_colour_map, 05182 rgb_pixel_ptr 05183 ); 05184 } 05185 else 05186 { 05187 render_one_cmap_float_double( 05188 volume_data1, 05189 y, 05190 start_x, 05191 end_x, 05192 y_offsets1, 05193 row_offsets1, 05194 volume_data2, 05195 y_offsets2, 05196 row_offsets2, 05197 cmode_colour_map, 05198 cmap_pixel_ptr 05199 ); 05200 } 05201 } 05202 else 05203 { 05204 if( pixels->pixel_type == RGB_PIXEL ) 05205 { 05206 render_many_rgb_float_double( 05207 volume_data1, 05208 y, 05209 start_x, 05210 end_x, 05211 y_offsets1, 05212 row_offsets1, 05213 start_slices1, 05214 n_slices1, 05215 weights1, 05216 volume_data2, 05217 y_offsets2, 05218 row_offsets2, 05219 start_slices2, 05220 n_slices2, 05221 weights2, 05222 rgb_colour_map, 05223 rgb_pixel_ptr 05224 ); 05225 } 05226 else 05227 { 05228 render_many_cmap_float_double( 05229 volume_data1, 05230 y, 05231 start_x, 05232 end_x, 05233 y_offsets1, 05234 row_offsets1, 05235 start_slices1, 05236 n_slices1, 05237 weights1, 05238 volume_data2, 05239 y_offsets2, 05240 row_offsets2, 05241 start_slices2, 05242 n_slices2, 05243 weights2, 05244 cmode_colour_map, 05245 cmap_pixel_ptr 05246 ); 05247 } 05248 } 05249 break; 05250 } 05251 } 05252 break; 05253 case DOUBLE: 05254 if( volume_data2 == NULL ) 05255 { 05256 if( one_slice ) 05257 { 05258 if( pixels->pixel_type == RGB_PIXEL ) 05259 { 05260 render_one_rgb_double( 05261 volume_data1, 05262 y, 05263 start_x, 05264 end_x, 05265 y_offsets1, 05266 row_offsets1, 05267 rgb_colour_map, 05268 rgb_pixel_ptr 05269 ); 05270 } 05271 else 05272 { 05273 render_one_cmap_double( 05274 volume_data1, 05275 y, 05276 start_x, 05277 end_x, 05278 y_offsets1, 05279 row_offsets1, 05280 cmode_colour_map, 05281 cmap_pixel_ptr 05282 ); 05283 } 05284 } 05285 else 05286 { 05287 if( pixels->pixel_type == RGB_PIXEL ) 05288 { 05289 render_many_rgb_double( 05290 volume_data1, 05291 y, 05292 start_x, 05293 end_x, 05294 y_offsets1, 05295 row_offsets1, 05296 start_slices1, 05297 n_slices1, 05298 weights1, 05299 rgb_colour_map, 05300 rgb_pixel_ptr 05301 ); 05302 } 05303 else 05304 { 05305 render_many_cmap_double( 05306 volume_data1, 05307 y, 05308 start_x, 05309 end_x, 05310 y_offsets1, 05311 row_offsets1, 05312 start_slices1, 05313 n_slices1, 05314 weights1, 05315 cmode_colour_map, 05316 cmap_pixel_ptr 05317 ); 05318 } 05319 } 05320 } 05321 else 05322 { 05323 switch( volume2_type ) 05324 { 05325 case UNSIGNED_BYTE: 05326 if( one_slice ) 05327 { 05328 if( pixels->pixel_type == RGB_PIXEL ) 05329 { 05330 render_one_rgb_double_unsigned_char( 05331 volume_data1, 05332 y, 05333 start_x, 05334 end_x, 05335 y_offsets1, 05336 row_offsets1, 05337 volume_data2, 05338 y_offsets2, 05339 row_offsets2, 05340 rgb_colour_map, 05341 rgb_pixel_ptr 05342 ); 05343 } 05344 else 05345 { 05346 render_one_cmap_double_unsigned_char( 05347 volume_data1, 05348 y, 05349 start_x, 05350 end_x, 05351 y_offsets1, 05352 row_offsets1, 05353 volume_data2, 05354 y_offsets2, 05355 row_offsets2, 05356 cmode_colour_map, 05357 cmap_pixel_ptr 05358 ); 05359 } 05360 } 05361 else 05362 { 05363 if( pixels->pixel_type == RGB_PIXEL ) 05364 { 05365 render_many_rgb_double_unsigned_char( 05366 volume_data1, 05367 y, 05368 start_x, 05369 end_x, 05370 y_offsets1, 05371 row_offsets1, 05372 start_slices1, 05373 n_slices1, 05374 weights1, 05375 volume_data2, 05376 y_offsets2, 05377 row_offsets2, 05378 start_slices2, 05379 n_slices2, 05380 weights2, 05381 rgb_colour_map, 05382 rgb_pixel_ptr 05383 ); 05384 } 05385 else 05386 { 05387 render_many_cmap_double_unsigned_char( 05388 volume_data1, 05389 y, 05390 start_x, 05391 end_x, 05392 y_offsets1, 05393 row_offsets1, 05394 start_slices1, 05395 n_slices1, 05396 weights1, 05397 volume_data2, 05398 y_offsets2, 05399 row_offsets2, 05400 start_slices2, 05401 n_slices2, 05402 weights2, 05403 cmode_colour_map, 05404 cmap_pixel_ptr 05405 ); 05406 } 05407 } 05408 break; 05409 case UNSIGNED_SHORT: 05410 if( one_slice ) 05411 { 05412 if( pixels->pixel_type == RGB_PIXEL ) 05413 { 05414 render_one_rgb_double_unsigned_short( 05415 volume_data1, 05416 y, 05417 start_x, 05418 end_x, 05419 y_offsets1, 05420 row_offsets1, 05421 volume_data2, 05422 y_offsets2, 05423 row_offsets2, 05424 rgb_colour_map, 05425 rgb_pixel_ptr 05426 ); 05427 } 05428 else 05429 { 05430 render_one_cmap_double_unsigned_short( 05431 volume_data1, 05432 y, 05433 start_x, 05434 end_x, 05435 y_offsets1, 05436 row_offsets1, 05437 volume_data2, 05438 y_offsets2, 05439 row_offsets2, 05440 cmode_colour_map, 05441 cmap_pixel_ptr 05442 ); 05443 } 05444 } 05445 else 05446 { 05447 if( pixels->pixel_type == RGB_PIXEL ) 05448 { 05449 render_many_rgb_double_unsigned_short( 05450 volume_data1, 05451 y, 05452 start_x, 05453 end_x, 05454 y_offsets1, 05455 row_offsets1, 05456 start_slices1, 05457 n_slices1, 05458 weights1, 05459 volume_data2, 05460 y_offsets2, 05461 row_offsets2, 05462 start_slices2, 05463 n_slices2, 05464 weights2, 05465 rgb_colour_map, 05466 rgb_pixel_ptr 05467 ); 05468 } 05469 else 05470 { 05471 render_many_cmap_double_unsigned_short( 05472 volume_data1, 05473 y, 05474 start_x, 05475 end_x, 05476 y_offsets1, 05477 row_offsets1, 05478 start_slices1, 05479 n_slices1, 05480 weights1, 05481 volume_data2, 05482 y_offsets2, 05483 row_offsets2, 05484 start_slices2, 05485 n_slices2, 05486 weights2, 05487 cmode_colour_map, 05488 cmap_pixel_ptr 05489 ); 05490 } 05491 } 05492 break; 05493 case UNSIGNED_INT: 05494 if( one_slice ) 05495 { 05496 if( pixels->pixel_type == RGB_PIXEL ) 05497 { 05498 render_one_rgb_double_unsigned_int( 05499 volume_data1, 05500 y, 05501 start_x, 05502 end_x, 05503 y_offsets1, 05504 row_offsets1, 05505 volume_data2, 05506 y_offsets2, 05507 row_offsets2, 05508 rgb_colour_map, 05509 rgb_pixel_ptr 05510 ); 05511 } 05512 else 05513 { 05514 render_one_cmap_double_unsigned_int( 05515 volume_data1, 05516 y, 05517 start_x, 05518 end_x, 05519 y_offsets1, 05520 row_offsets1, 05521 volume_data2, 05522 y_offsets2, 05523 row_offsets2, 05524 cmode_colour_map, 05525 cmap_pixel_ptr 05526 ); 05527 } 05528 } 05529 else 05530 { 05531 if( pixels->pixel_type == RGB_PIXEL ) 05532 { 05533 render_many_rgb_double_unsigned_int( 05534 volume_data1, 05535 y, 05536 start_x, 05537 end_x, 05538 y_offsets1, 05539 row_offsets1, 05540 start_slices1, 05541 n_slices1, 05542 weights1, 05543 volume_data2, 05544 y_offsets2, 05545 row_offsets2, 05546 start_slices2, 05547 n_slices2, 05548 weights2, 05549 rgb_colour_map, 05550 rgb_pixel_ptr 05551 ); 05552 } 05553 else 05554 { 05555 render_many_cmap_double_unsigned_int( 05556 volume_data1, 05557 y, 05558 start_x, 05559 end_x, 05560 y_offsets1, 05561 row_offsets1, 05562 start_slices1, 05563 n_slices1, 05564 weights1, 05565 volume_data2, 05566 y_offsets2, 05567 row_offsets2, 05568 start_slices2, 05569 n_slices2, 05570 weights2, 05571 cmode_colour_map, 05572 cmap_pixel_ptr 05573 ); 05574 } 05575 } 05576 break; 05577 case SIGNED_BYTE: 05578 if( one_slice ) 05579 { 05580 if( pixels->pixel_type == RGB_PIXEL ) 05581 { 05582 render_one_rgb_double_signed_char( 05583 volume_data1, 05584 y, 05585 start_x, 05586 end_x, 05587 y_offsets1, 05588 row_offsets1, 05589 volume_data2, 05590 y_offsets2, 05591 row_offsets2, 05592 rgb_colour_map, 05593 rgb_pixel_ptr 05594 ); 05595 } 05596 else 05597 { 05598 render_one_cmap_double_signed_char( 05599 volume_data1, 05600 y, 05601 start_x, 05602 end_x, 05603 y_offsets1, 05604 row_offsets1, 05605 volume_data2, 05606 y_offsets2, 05607 row_offsets2, 05608 cmode_colour_map, 05609 cmap_pixel_ptr 05610 ); 05611 } 05612 } 05613 else 05614 { 05615 if( pixels->pixel_type == RGB_PIXEL ) 05616 { 05617 render_many_rgb_double_signed_char( 05618 volume_data1, 05619 y, 05620 start_x, 05621 end_x, 05622 y_offsets1, 05623 row_offsets1, 05624 start_slices1, 05625 n_slices1, 05626 weights1, 05627 volume_data2, 05628 y_offsets2, 05629 row_offsets2, 05630 start_slices2, 05631 n_slices2, 05632 weights2, 05633 rgb_colour_map, 05634 rgb_pixel_ptr 05635 ); 05636 } 05637 else 05638 { 05639 render_many_cmap_double_signed_char( 05640 volume_data1, 05641 y, 05642 start_x, 05643 end_x, 05644 y_offsets1, 05645 row_offsets1, 05646 start_slices1, 05647 n_slices1, 05648 weights1, 05649 volume_data2, 05650 y_offsets2, 05651 row_offsets2, 05652 start_slices2, 05653 n_slices2, 05654 weights2, 05655 cmode_colour_map, 05656 cmap_pixel_ptr 05657 ); 05658 } 05659 } 05660 break; 05661 case SIGNED_SHORT: 05662 if( one_slice ) 05663 { 05664 if( pixels->pixel_type == RGB_PIXEL ) 05665 { 05666 render_one_rgb_double_signed_short( 05667 volume_data1, 05668 y, 05669 start_x, 05670 end_x, 05671 y_offsets1, 05672 row_offsets1, 05673 volume_data2, 05674 y_offsets2, 05675 row_offsets2, 05676 rgb_colour_map, 05677 rgb_pixel_ptr 05678 ); 05679 } 05680 else 05681 { 05682 render_one_cmap_double_signed_short( 05683 volume_data1, 05684 y, 05685 start_x, 05686 end_x, 05687 y_offsets1, 05688 row_offsets1, 05689 volume_data2, 05690 y_offsets2, 05691 row_offsets2, 05692 cmode_colour_map, 05693 cmap_pixel_ptr 05694 ); 05695 } 05696 } 05697 else 05698 { 05699 if( pixels->pixel_type == RGB_PIXEL ) 05700 { 05701 render_many_rgb_double_signed_short( 05702 volume_data1, 05703 y, 05704 start_x, 05705 end_x, 05706 y_offsets1, 05707 row_offsets1, 05708 start_slices1, 05709 n_slices1, 05710 weights1, 05711 volume_data2, 05712 y_offsets2, 05713 row_offsets2, 05714 start_slices2, 05715 n_slices2, 05716 weights2, 05717 rgb_colour_map, 05718 rgb_pixel_ptr 05719 ); 05720 } 05721 else 05722 { 05723 render_many_cmap_double_signed_short( 05724 volume_data1, 05725 y, 05726 start_x, 05727 end_x, 05728 y_offsets1, 05729 row_offsets1, 05730 start_slices1, 05731 n_slices1, 05732 weights1, 05733 volume_data2, 05734 y_offsets2, 05735 row_offsets2, 05736 start_slices2, 05737 n_slices2, 05738 weights2, 05739 cmode_colour_map, 05740 cmap_pixel_ptr 05741 ); 05742 } 05743 } 05744 break; 05745 case SIGNED_INT: 05746 if( one_slice ) 05747 { 05748 if( pixels->pixel_type == RGB_PIXEL ) 05749 { 05750 render_one_rgb_double_signed_int( 05751 volume_data1, 05752 y, 05753 start_x, 05754 end_x, 05755 y_offsets1, 05756 row_offsets1, 05757 volume_data2, 05758 y_offsets2, 05759 row_offsets2, 05760 rgb_colour_map, 05761 rgb_pixel_ptr 05762 ); 05763 } 05764 else 05765 { 05766 render_one_cmap_double_signed_int( 05767 volume_data1, 05768 y, 05769 start_x, 05770 end_x, 05771 y_offsets1, 05772 row_offsets1, 05773 volume_data2, 05774 y_offsets2, 05775 row_offsets2, 05776 cmode_colour_map, 05777 cmap_pixel_ptr 05778 ); 05779 } 05780 } 05781 else 05782 { 05783 if( pixels->pixel_type == RGB_PIXEL ) 05784 { 05785 render_many_rgb_double_signed_int( 05786 volume_data1, 05787 y, 05788 start_x, 05789 end_x, 05790 y_offsets1, 05791 row_offsets1, 05792 start_slices1, 05793 n_slices1, 05794 weights1, 05795 volume_data2, 05796 y_offsets2, 05797 row_offsets2, 05798 start_slices2, 05799 n_slices2, 05800 weights2, 05801 rgb_colour_map, 05802 rgb_pixel_ptr 05803 ); 05804 } 05805 else 05806 { 05807 render_many_cmap_double_signed_int( 05808 volume_data1, 05809 y, 05810 start_x, 05811 end_x, 05812 y_offsets1, 05813 row_offsets1, 05814 start_slices1, 05815 n_slices1, 05816 weights1, 05817 volume_data2, 05818 y_offsets2, 05819 row_offsets2, 05820 start_slices2, 05821 n_slices2, 05822 weights2, 05823 cmode_colour_map, 05824 cmap_pixel_ptr 05825 ); 05826 } 05827 } 05828 break; 05829 case FLOAT: 05830 if( one_slice ) 05831 { 05832 if( pixels->pixel_type == RGB_PIXEL ) 05833 { 05834 render_one_rgb_double_float( 05835 volume_data1, 05836 y, 05837 start_x, 05838 end_x, 05839 y_offsets1, 05840 row_offsets1, 05841 volume_data2, 05842 y_offsets2, 05843 row_offsets2, 05844 rgb_colour_map, 05845 rgb_pixel_ptr 05846 ); 05847 } 05848 else 05849 { 05850 render_one_cmap_double_float( 05851 volume_data1, 05852 y, 05853 start_x, 05854 end_x, 05855 y_offsets1, 05856 row_offsets1, 05857 volume_data2, 05858 y_offsets2, 05859 row_offsets2, 05860 cmode_colour_map, 05861 cmap_pixel_ptr 05862 ); 05863 } 05864 } 05865 else 05866 { 05867 if( pixels->pixel_type == RGB_PIXEL ) 05868 { 05869 render_many_rgb_double_float( 05870 volume_data1, 05871 y, 05872 start_x, 05873 end_x, 05874 y_offsets1, 05875 row_offsets1, 05876 start_slices1, 05877 n_slices1, 05878 weights1, 05879 volume_data2, 05880 y_offsets2, 05881 row_offsets2, 05882 start_slices2, 05883 n_slices2, 05884 weights2, 05885 rgb_colour_map, 05886 rgb_pixel_ptr 05887 ); 05888 } 05889 else 05890 { 05891 render_many_cmap_double_float( 05892 volume_data1, 05893 y, 05894 start_x, 05895 end_x, 05896 y_offsets1, 05897 row_offsets1, 05898 start_slices1, 05899 n_slices1, 05900 weights1, 05901 volume_data2, 05902 y_offsets2, 05903 row_offsets2, 05904 start_slices2, 05905 n_slices2, 05906 weights2, 05907 cmode_colour_map, 05908 cmap_pixel_ptr 05909 ); 05910 } 05911 } 05912 break; 05913 case DOUBLE: 05914 if( one_slice ) 05915 { 05916 if( pixels->pixel_type == RGB_PIXEL ) 05917 { 05918 render_one_rgb_double_double( 05919 volume_data1, 05920 y, 05921 start_x, 05922 end_x, 05923 y_offsets1, 05924 row_offsets1, 05925 volume_data2, 05926 y_offsets2, 05927 row_offsets2, 05928 rgb_colour_map, 05929 rgb_pixel_ptr 05930 ); 05931 } 05932 else 05933 { 05934 render_one_cmap_double_double( 05935 volume_data1, 05936 y, 05937 start_x, 05938 end_x, 05939 y_offsets1, 05940 row_offsets1, 05941 volume_data2, 05942 y_offsets2, 05943 row_offsets2, 05944 cmode_colour_map, 05945 cmap_pixel_ptr 05946 ); 05947 } 05948 } 05949 else 05950 { 05951 if( pixels->pixel_type == RGB_PIXEL ) 05952 { 05953 render_many_rgb_double_double( 05954 volume_data1, 05955 y, 05956 start_x, 05957 end_x, 05958 y_offsets1, 05959 row_offsets1, 05960 start_slices1, 05961 n_slices1, 05962 weights1, 05963 volume_data2, 05964 y_offsets2, 05965 row_offsets2, 05966 start_slices2, 05967 n_slices2, 05968 weights2, 05969 rgb_colour_map, 05970 rgb_pixel_ptr 05971 ); 05972 } 05973 else 05974 { 05975 render_many_cmap_double_double( 05976 volume_data1, 05977 y, 05978 start_x, 05979 end_x, 05980 y_offsets1, 05981 row_offsets1, 05982 start_slices1, 05983 n_slices1, 05984 weights1, 05985 volume_data2, 05986 y_offsets2, 05987 row_offsets2, 05988 start_slices2, 05989 n_slices2, 05990 weights2, 05991 cmode_colour_map, 05992 cmap_pixel_ptr 05993 ); 05994 } 05995 } 05996 break; 05997 } 05998 } 05999 break; 06000 } 06001 }

Generated on Wed Jul 28 09:10:56 2004 for BICPL by doxygen 1.3.7