 /**
 * @page ToolsIvReport IvReport tool
 *
 * @B IvReport @b display Open Inventor and host installation information.
 *
 * @H3 DESCRIPTION: @h3
 *    @B ivReport @b display Open Inventor and host installation information, by default
 *    all information are saved in IvReport.txt file.
 *
 *    ivReport do not need to have a valid Open Inventor license available and then can
 *    be distributed to your own customer for support purpose.
 *
 * @NOTES: we highky recommend to send IvReport.txt file to VSG hotline when 
 * reporting an issue or bug.
 *
 * @H3 EXAMPLES @h3
 *
 * To print output directly in the console:
 * @code
 *   ivReportt stdout
 * @endcode
 *
 * @H3 TYPICAL OUTPUT @h3
 * @code 
 * Platform information:
 * 	hostname : bod-guest
 * 	OS       : Microsoft Windows XP Professional x64 Edition Service Pack 2 (build 3790)
 * 	version  : 5.2
 * 
 * 
 * Open Inventor libraries Information:
 * 	Path     : C:\Program Files\Open Inventor 8.5\OIVHOME\arch-Windows-x86_64-msvc9-Debug\bin\InventorD.dll
 * 	Version  : 8500
 * 	Platform : Win64
 * 	Compiler : Built with Microsoft Visual Studio 2008 (9.0)
 * 	flags    : Debug SCL1
 * 	Build    : d1d5e79fd001f180bddfd91376492d79426a8192
 * 
 * 
 * Open Inventor SoPreferences environment variables:
 * 	OIVHOME = C:\Program Files\Open Inventor 8.5\OIVHOME
 * 	OIVARCH = arch-Windows-x86_64-msvc9-Debug
 * 	VSG_LICENSE_FILE = C:\users\password.dat
 * 
 * 
 * Open Inventor detect 2 devices
 * Device 0 : Intel(R) Core(TM)2 Quad CPU    Q9550  @ 2.83GHz
 * 	Driver        : 0.0
 * 	Total     Mem : 4029 MB
 * 	Available Mem : 1763 MB
 * 
 * 
 * Device 1 : NVIDIA GeForce GTX 285
 * 	Driver        : 6.14.11.9745
 * 	Total     Mem : 1024 MB
 * 	Available Mem : 1024 MB
 * 	OpenGL version   : 3.2.0
 * 	OpenGL extensions supported:
 * 		GL_ARB_color_buffer_float
 * 		GL_ARB_compatibility
 * 		GL_ARB_copy_buffer
 * 		GL_ARB_depth_buffer_float
 * 		GL_ARB_depth_clamp
 * 		GL_ARB_depth_texture
 * 		GL_ARB_draw_buffers
 * 		GL_ARB_draw_elements_base_vertex
 * 		GL_ARB_draw_instanced
 * 		GL_ARB_fragment_coord_conventions
 * 		GL_ARB_fragment_program
 * 		GL_ARB_fragment_program_shadow
 * 		GL_ARB_fragment_shader
 * 		GL_ARB_framebuffer_object
 * 		GL_ARB_framebuffer_sRGB
 * 		GL_ARB_geometry_shader4
 * 		GL_ARB_half_float_pixel
 * 		GL_ARB_half_float_vertex
 * 		GL_ARB_imaging
 * 		GL_ARB_map_buffer_range
 * 		GL_ARB_multisample
 * 		GL_ARB_multitexture
 * 		GL_ARB_occlusion_query
 * 		GL_ARB_pixel_buffer_object
 * 		GL_ARB_point_parameters
 * 		GL_ARB_point_sprite
 * 		GL_ARB_provoking_vertex
 * 		GL_ARB_seamless_cube_map
 * 		GL_ARB_shader_objects
 * 		GL_ARB_shading_language_100
 * 		GL_ARB_shadow
 * 		GL_ARB_sync
 * 		GL_ARB_texture_border_clamp
 * 		GL_ARB_texture_buffer_object
 * 		GL_ARB_texture_compression
 * 		GL_ARB_texture_compression_rgtc
 * 		GL_ARB_texture_cube_map
 * 		GL_ARB_texture_env_add
 * 		GL_ARB_texture_env_combine
 * 		GL_ARB_texture_env_crossbar
 * 		GL_ARB_texture_env_dot3
 * 		GL_ARB_texture_float
 * 		GL_ARB_texture_mirrored_repeat
 * 		GL_ARB_texture_multisample
 * 		GL_ARB_texture_non_power_of_two
 * 		GL_ARB_texture_rectangle
 * 		GL_ARB_texture_rg
 * 		GL_ARB_transpose_matrix
 * 		GL_ARB_uniform_buffer_object
 * 		GL_ARB_vertex_array_bgra
 * 		GL_ARB_vertex_array_object
 * 		GL_ARB_vertex_buffer_object
 * 		GL_ARB_vertex_program
 * 		GL_ARB_vertex_shader
 * 		GL_ARB_window_pos
 * 		GL_ATI_draw_buffers
 * 		GL_ATI_texture_float
 * 		GL_ATI_texture_mirror_once
 * 		GL_S3_s3tc
 * 		GL_EXT_texture_env_add
 * 		GL_EXT_abgr
 * 		GL_EXT_bgra
 * 		GL_EXT_bindable_uniform
 * 		GL_EXT_blend_color
 * 		GL_EXT_blend_equation_separate
 * 		GL_EXT_blend_func_separate
 * 		GL_EXT_blend_minmax
 * 		GL_EXT_blend_subtract
 * 		GL_EXT_compiled_vertex_array
 * 		GL_EXT_Cg_shader
 * 		GL_EXT_depth_bounds_test
 * 		GL_EXT_direct_state_access
 * 		GL_EXT_draw_buffers2
 * 		GL_EXT_draw_instanced
 * 		GL_EXT_draw_range_elements
 * 		GL_EXT_fog_coord
 * 		GL_EXT_framebuffer_blit
 * 		GL_EXT_framebuffer_multisample
 * 		GL_EXTX_framebuffer_mixed_formats
 * 		GL_EXT_framebuffer_object
 * 		GL_EXT_framebuffer_sRGB
 * 		GL_EXT_geometry_shader4
 * 		GL_EXT_gpu_program_parameters
 * 		GL_EXT_gpu_shader4
 * 		GL_EXT_multi_draw_arrays
 * 		GL_EXT_packed_depth_stencil
 * 		GL_EXT_packed_float
 * 		GL_EXT_packed_pixels
 * 		GL_EXT_pixel_buffer_object
 * 		GL_EXT_point_parameters
 * 		GL_EXT_provoking_vertex
 * 		GL_EXT_rescale_normal
 * 		GL_EXT_secondary_color
 * 		GL_EXT_separate_shader_objects
 * 		GL_EXT_separate_specular_color
 * 		GL_EXT_shadow_funcs
 * 		GL_EXT_stencil_two_side
 * 		GL_EXT_stencil_wrap
 * 		GL_EXT_texture3D
 * 		GL_EXT_texture_array
 * 		GL_EXT_texture_buffer_object
 * 		GL_EXT_texture_compression_latc
 * 		GL_EXT_texture_compression_rgtc
 * 		GL_EXT_texture_cube_map
 * 		GL_EXT_texture_edge_clamp
 * 		GL_EXT_texture_env_combine
 * 		GL_EXT_texture_env_dot3
 * 		GL_EXT_texture_filter_anisotropic
 * 		GL_EXT_texture_integer
 * 		GL_EXT_texture_lod
 * 		GL_EXT_texture_lod_bias
 * 		GL_EXT_texture_mirror_clamp
 * 		GL_EXT_texture_object
 * 		GL_EXT_texture_shared_exponent
 * 		GL_EXT_texture_sRGB
 * 		GL_EXT_texture_swizzle
 * 		GL_EXT_timer_query
 * 		GL_EXT_transform_feedback2
 * 		GL_EXT_vertex_array
 * 		GL_EXT_vertex_array_bgra
 * 		GL_IBM_rasterpos_clip
 * 		GL_IBM_texture_mirrored_repeat
 * 		GL_KTX_buffer_region
 * 		GL_NV_blend_square
 * 		GL_NV_conditional_render
 * 		GL_NV_copy_depth_to_color
 * 		GL_NV_copy_image
 * 		GL_NV_depth_buffer_float
 * 		GL_NV_depth_clamp
 * 		GL_NV_explicit_multisample
 * 		GL_NV_fence
 * 		GL_NV_float_buffer
 * 		GL_NV_fog_distance
 * 		GL_NV_fragment_program
 * 		GL_NV_fragment_program_option
 * 		GL_NV_fragment_program2
 * 		GL_NV_framebuffer_multisample_coverage
 * 		GL_NV_geometry_shader4
 * 		GL_NV_gpu_program4
 * 		GL_NV_half_float
 * 		GL_NV_light_max_exponent
 * 		GL_NV_multisample_coverage
 * 		GL_NV_multisample_filter_hint
 * 		GL_NV_occlusion_query
 * 		GL_NV_packed_depth_stencil
 * 		GL_NV_parameter_buffer_object
 * 		GL_NV_parameter_buffer_object2
 * 		GL_NV_pixel_data_range
 * 		GL_NV_point_sprite
 * 		GL_NV_primitive_restart
 * 		GL_NV_register_combiners
 * 		GL_NV_register_combiners2
 * 		GL_NV_shader_buffer_load
 * 		GL_NV_texgen_reflection
 * 		GL_NV_texture_barrier
 * 		GL_NV_texture_compression_vtc
 * 		GL_NV_texture_env_combine4
 * 		GL_NV_texture_expand_normal
 * 		GL_NV_texture_rectangle
 * 		GL_NV_texture_shader
 * 		GL_NV_texture_shader2
 * 		GL_NV_texture_shader3
 * 		GL_NV_transform_feedback
 * 		GL_NV_transform_feedback2
 * 		GL_NV_vertex_array_range
 * 		GL_NV_vertex_array_range2
 * 		GL_NV_vertex_buffer_unified_memory
 * 		GL_NV_vertex_program
 * 		GL_NV_vertex_program1_1
 * 		GL_NV_vertex_program2
 * 		GL_NV_vertex_program2_option
 * 		GL_NV_vertex_program3
 * 		GL_NVX_conditional_render
 * 		GL_NVX_gpu_memory_info
 * 		GL_SGIS_generate_mipmap
 * 		GL_SGIS_texture_lod
 * 		GL_SGIX_depth_texture
 * 		GL_SGIX_shadow
 * 		GL_SUN_slice_accum
 * 		GL_WIN_swap_hint
 * 		WGL_EXT_swap_control
 * 	OpenGL extensions not detected or disabled by Open Inventor:
 * 		GL_EXTX_framebuffer_mixed_formats
 * 		GL_EXT_separate_specular_color
 * 		GL_EXT_texture_lod
 * 		GL_EXT_transform_feedback2
 * 		GL_KTX_buffer_region
 * 		GL_NV_half_float
 * 		GL_NV_multisample_coverage
 * 		GL_NVX_conditional_render
 * 		GL_NVX_gpu_memory_info
 * 
 * 
 * 
 * @endcode
 */
