BC_Bitmap Class Reference

#include <bcbitmap.h>

Collaboration diagram for BC_Bitmap:

Collaboration graph
[legend]

Public Member Functions

 BC_Bitmap (BC_WindowBase *parent_window, unsigned char *png_data)
 BC_Bitmap (BC_WindowBase *parent_window, VFrame *frame)
 BC_Bitmap (BC_WindowBase *parent_window, int w, int h, int color_model, int use_shm=1)
virtual ~BC_Bitmap ()
int read_frame (VFrame *frame, int in_x, int in_y, int in_w, int in_h, int out_x, int out_y, int out_w, int out_h)
int read_frame (VFrame *frame, int x1, int y1, int x2, int y2)
int match_params (int w, int h, int color_model, int use_shm)
int params_match (int w, int h, int color_model, int use_shm)
void rewind_ring ()
int write_drawable (Drawable &pixmap, GC &gc, int source_x, int source_y, int source_w, int source_h, int dest_x, int dest_y, int dest_w, int dest_h, int dont_wait)
int write_drawable (Drawable &pixmap, GC &gc, int dest_x, int dest_y, int source_x, int source_y, int dest_w, int dest_h, int dont_wait)
int read_drawable (Drawable &pixmap, int source_x, int source_y)
int rotate_90 (int side)
int get_w ()
int get_h ()
void transparency_bitswap ()
unsigned char * get_data ()
unsigned char * get_y_plane ()
unsigned char * get_u_plane ()
unsigned char * get_v_plane ()
int get_color_model ()
int hardware_scaling ()
unsigned char ** get_row_pointers ()
int get_bytes_per_line ()
long get_shm_id ()
long get_shm_size ()
long get_shm_offset ()
long get_y_shm_offset ()
long get_u_shm_offset ()
long get_v_shm_offset ()
long get_y_offset ()
long get_u_offset ()
long get_v_offset ()
void rewind_ringbuffer ()
int set_bg_color (int color)
int invert ()

Private Member Functions

int initialize (BC_WindowBase *parent_window, int w, int h, int color_model, int use_shm)
int allocate_data ()
int delete_data ()
int get_default_depth ()
char byte_bitswap (char src)

Private Attributes

int ring_buffers
int current_ringbuffer
int w
int h
int color_model
int bg_color
int use_shm
BC_WindowBasetop_level
BC_WindowBaseparent_window
unsigned char * data [BITMAP_RING]
unsigned char ** row_data [BITMAP_RING]
int xv_portid
int bits_per_pixel
long bytes_per_line
int last_pixmap_used
unsigned char bg_r
unsigned char bg_g
unsigned char bg_b
int bit_counter
Drawable last_pixmap
XImage * ximage [BITMAP_RING]
XvImage * xv_image [BITMAP_RING]
XShmSegmentInfo shm_info

Detailed Description

Definition at line 18 of file bcbitmap.h.


Constructor & Destructor Documentation

BC_Bitmap::BC_Bitmap ( BC_WindowBase parent_window,
unsigned char *  png_data 
)

Definition at line 14 of file bcbitmap.C.

References BC_WindowBase::get_color_model(), VFrame::get_h(), VFrame::get_w(), h, initialize(), read_frame(), VFrame::read_png(), and w.

Here is the call graph for this function:

BC_Bitmap::BC_Bitmap ( BC_WindowBase parent_window,
VFrame frame 
)

Definition at line 32 of file bcbitmap.C.

References BC_WindowBase::get_color_model(), VFrame::get_h(), VFrame::get_w(), h, initialize(), read_frame(), and w.

Here is the call graph for this function:

BC_Bitmap::BC_Bitmap ( BC_WindowBase parent_window,
int  w,
int  h,
int  color_model,
int  use_shm = 1 
)

Definition at line 45 of file bcbitmap.C.

References BC_WindowBase::get_resources(), initialize(), and BC_Resources::use_shm.

Here is the call graph for this function:

BC_Bitmap::~BC_Bitmap (  )  [virtual]

Definition at line 58 of file bcbitmap.C.

References delete_data().

Here is the call graph for this function:


Member Function Documentation

int BC_Bitmap::read_frame ( VFrame frame,
int  in_x,
int  in_y,
int  in_w,
int  in_h,
int  out_x,
int  out_y,
int  out_w,
int  out_h 
)

int BC_Bitmap::read_frame ( VFrame frame,
int  x1,
int  y1,
int  x2,
int  y2 
)

Definition at line 524 of file bcbitmap.C.

References VFrame::get_h(), VFrame::get_w(), and read_frame().

Here is the call graph for this function:

int BC_Bitmap::match_params ( int  w,
int  h,
int  color_model,
int  use_shm 
)

Definition at line 97 of file bcbitmap.C.

References delete_data(), initialize(), and parent_window.

Referenced by BC_WindowBase::draw_3segmenth(), BC_WindowBase::draw_3segmentv(), BC_WindowBase::draw_9segment(), and BC_WindowBase::draw_vframe().

Here is the call graph for this function:

int BC_Bitmap::params_match ( int  w,
int  h,
int  color_model,
int  use_shm 
)

Definition at line 111 of file bcbitmap.C.

References BC_INFINITY.

void BC_Bitmap::rewind_ring (  ) 

Definition at line 404 of file bcbitmap.C.

References current_ringbuffer, and ring_buffers.

int BC_Bitmap::write_drawable ( Drawable &  pixmap,
GC &  gc,
int  source_x,
int  source_y,
int  source_w,
int  source_h,
int  dest_x,
int  dest_y,
int  dest_w,
int  dest_h,
int  dont_wait 
)

int BC_Bitmap::write_drawable ( Drawable &  pixmap,
GC &  gc,
int  dest_x,
int  dest_y,
int  source_x,
int  source_y,
int  dest_w,
int  dest_h,
int  dont_wait 
)

Definition at line 381 of file bcbitmap.C.

References get_h(), get_w(), and write_drawable().

Here is the call graph for this function:

int BC_Bitmap::read_drawable ( Drawable &  pixmap,
int  source_x,
int  source_y 
)

Definition at line 513 of file bcbitmap.C.

References current_ringbuffer, BC_WindowBase::display, h, top_level, use_shm, w, and ximage.

int BC_Bitmap::rotate_90 ( int  side  ) 

int BC_Bitmap::get_w (  ) 

int BC_Bitmap::get_h (  ) 

void BC_Bitmap::transparency_bitswap (  ) 

Definition at line 781 of file bcbitmap.C.

References buf, byte_bitswap(), current_ringbuffer, h, height, row_data, w, and width.

Referenced by read_frame().

Here is the call graph for this function:

unsigned char * BC_Bitmap::get_data (  ) 

Definition at line 707 of file bcbitmap.C.

References current_ringbuffer, and data.

Referenced by VDeviceX11::new_output_buffer(), read_frame(), and VideoScopeEffect::render_gui().

unsigned char * BC_Bitmap::get_y_plane (  ) 

Definition at line 713 of file bcbitmap.C.

References BC_YUV420P, BC_YUV422P, color_model, current_ringbuffer, data, and xv_image.

Referenced by read_frame().

unsigned char * BC_Bitmap::get_u_plane (  ) 

Definition at line 731 of file bcbitmap.C.

References BC_YUV420P, BC_YUV422P, color_model, current_ringbuffer, data, and xv_image.

Referenced by read_frame().

unsigned char * BC_Bitmap::get_v_plane (  ) 

Definition at line 722 of file bcbitmap.C.

References BC_YUV420P, BC_YUV422P, color_model, current_ringbuffer, data, and xv_image.

Referenced by read_frame().

int BC_Bitmap::get_color_model (  ) 

int BC_Bitmap::hardware_scaling (  ) 

Definition at line 746 of file bcbitmap.C.

References BC_YUV420P, BC_YUV422, BC_YUV422P, and get_color_model().

Referenced by VDeviceX11::new_output_buffer(), VDeviceX11::write_buffer(), and write_drawable().

Here is the call graph for this function:

unsigned char ** BC_Bitmap::get_row_pointers (  ) 

Definition at line 698 of file bcbitmap.C.

References current_ringbuffer, and row_data.

Referenced by VideoScopeUnit::render_data(), and VDeviceX11::write_buffer().

int BC_Bitmap::get_bytes_per_line (  ) 

Definition at line 703 of file bcbitmap.C.

References bytes_per_line.

Referenced by VideoScopeEffect::render_gui().

long BC_Bitmap::get_shm_id (  ) 

Definition at line 625 of file bcbitmap.C.

References shm_info.

long BC_Bitmap::get_shm_size (  ) 

Definition at line 630 of file bcbitmap.C.

References h, ring_buffers, ximage, and xv_image.

long BC_Bitmap::get_shm_offset (  ) 

long BC_Bitmap::get_y_shm_offset (  ) 

Definition at line 649 of file bcbitmap.C.

References current_ringbuffer, get_shm_offset(), and xv_image.

Here is the call graph for this function:

long BC_Bitmap::get_u_shm_offset (  ) 

Definition at line 657 of file bcbitmap.C.

References current_ringbuffer, get_shm_offset(), and xv_image.

Here is the call graph for this function:

long BC_Bitmap::get_v_shm_offset (  ) 

Definition at line 665 of file bcbitmap.C.

References current_ringbuffer, get_shm_offset(), and xv_image.

Here is the call graph for this function:

long BC_Bitmap::get_y_offset (  ) 

Definition at line 673 of file bcbitmap.C.

References current_ringbuffer, and xv_image.

Referenced by VDeviceX11::new_output_buffer().

long BC_Bitmap::get_u_offset (  ) 

Definition at line 681 of file bcbitmap.C.

References current_ringbuffer, and xv_image.

Referenced by VDeviceX11::new_output_buffer().

long BC_Bitmap::get_v_offset (  ) 

Definition at line 689 of file bcbitmap.C.

References current_ringbuffer, and xv_image.

Referenced by VDeviceX11::new_output_buffer().

void BC_Bitmap::rewind_ringbuffer (  ) 

Definition at line 740 of file bcbitmap.C.

References current_ringbuffer, and ring_buffers.

int BC_Bitmap::set_bg_color ( int  color  ) 

Definition at line 364 of file bcbitmap.C.

References bg_color.

Referenced by BC_Pixmap::BC_Pixmap().

int BC_Bitmap::invert (  ) 

Definition at line 370 of file bcbitmap.C.

References bytes_per_line, h, ring_buffers, and row_data.

int BC_Bitmap::initialize ( BC_WindowBase parent_window,
int  w,
int  h,
int  color_model,
int  use_shm 
) [private]

int BC_Bitmap::allocate_data (  )  [private]

int BC_Bitmap::delete_data (  )  [private]

int BC_Bitmap::get_default_depth (  )  [private]

Definition at line 355 of file bcbitmap.C.

References BC_TRANSPARENCY, color_model, BC_WindowBase::default_depth, and top_level.

Referenced by allocate_data().

char BC_Bitmap::byte_bitswap ( char  src  )  [private]

Definition at line 757 of file bcbitmap.C.

Referenced by transparency_bitswap().


Field Documentation

int BC_Bitmap::ring_buffers [private]

int BC_Bitmap::w [private]

int BC_Bitmap::h [private]

int BC_Bitmap::color_model [private]

int BC_Bitmap::bg_color [private]

Definition at line 119 of file bcbitmap.h.

Referenced by initialize(), read_frame(), and set_bg_color().

int BC_Bitmap::use_shm [private]

Definition at line 121 of file bcbitmap.h.

Referenced by allocate_data(), delete_data(), read_drawable(), and write_drawable().

Definition at line 123 of file bcbitmap.h.

Referenced by match_params().

unsigned char* BC_Bitmap::data[BITMAP_RING] [private]

unsigned char** BC_Bitmap::row_data[BITMAP_RING] [private]

int BC_Bitmap::xv_portid [private]

Definition at line 128 of file bcbitmap.h.

Referenced by allocate_data(), delete_data(), and write_drawable().

Definition at line 130 of file bcbitmap.h.

Referenced by allocate_data().

long BC_Bitmap::bytes_per_line [private]

Definition at line 132 of file bcbitmap.h.

Referenced by allocate_data(), get_bytes_per_line(), and invert().

Definition at line 134 of file bcbitmap.h.

Referenced by delete_data(), initialize(), and write_drawable().

unsigned char BC_Bitmap::bg_r [private]

Definition at line 136 of file bcbitmap.h.

unsigned char BC_Bitmap::bg_g [private]

Definition at line 136 of file bcbitmap.h.

unsigned char BC_Bitmap::bg_b [private]

Definition at line 136 of file bcbitmap.h.

int BC_Bitmap::bit_counter [private]

Definition at line 138 of file bcbitmap.h.

Drawable BC_Bitmap::last_pixmap [private]

Definition at line 142 of file bcbitmap.h.

Referenced by delete_data(), initialize(), and write_drawable().

XImage* BC_Bitmap::ximage[BITMAP_RING] [private]

XvImage* BC_Bitmap::xv_image[BITMAP_RING] [private]

XShmSegmentInfo BC_Bitmap::shm_info [private]

Definition at line 145 of file bcbitmap.h.

Referenced by allocate_data(), delete_data(), and get_shm_id().


The documentation for this class was generated from the following files:

Generated on Mon Apr 28 14:12:56 2008 for Cinelerra by  doxygen 1.5.5