Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

GEL Class Reference

#include <gel.H>

Inheritance diagram for GEL:

Inheritance graph
[legend]
Collaboration diagram for GEL:

Collaboration graph
[legend]
List of all members.

Public Types

enum  ref_img_t {
  REF_IMG_NONE = 0, REF_IMG_ID = 1, REF_IMG_COLOR = 2, REF_IMG_COLOR_2 = 4,
  REF_IMG_ID_PRE1 = 8, REF_IMG_ID_PRE2 = 16, REF_IMG_ID_PRE3 = 32, REF_IMG_ID_PRE4 = 64,
  REF_IMG_TEX_MEM = 128
}

Public Member Functions

 GEL ()
virtual ~GEL ()
 DEFINE_RTTI_METHODS3 ("GEL", GEL *, DATA_ITEM, CDATA_ITEM *)
virtual CTAGlist & tags () const
virtual RAYhitintersect (RAYhit &r, mlib::CWtransf &m=mlib::Identity, int uv=0) const
virtual RAYnearnearest (RAYnear &r, mlib::CWtransf &m=mlib::Identity) const
virtual bool inside (mlib::CXYpt_list &) const
virtual bool needs_blend () const
virtual BBOX bbox (int=0) const
virtual bool cull (const VIEW *) const
virtual int draw (CVIEWptr &)
virtual bool is_3D () const
virtual bool can_do_halo () const
virtual Cstr_ptr & name () const
virtual ostream & print (ostream &s) const
virtual DATA_ITEMdup () const =0
void Own () const
void Free () const
int Lock ()
void Unlock ()
int Unique () const
virtual void add_tags () const
virtual STDdstreamformat (STDdstream &d) const
virtual STDdstreamdecode (STDdstream &d)
virtual void recompute ()
virtual STAT_STR_RET class_name () const =0
virtual int is_of_type (Cstr_ptr &t) const
virtual int draw_id_ref ()
virtual int draw_id_ref_pre1 ()
virtual int draw_id_ref_pre2 ()
virtual int draw_id_ref_pre3 ()
virtual int draw_id_ref_pre4 ()
virtual int draw_color_ref ()
virtual int draw_color_ref_2 ()
virtual int draw_tex_mem_ref ()
virtual ref_img_t use_ref_image ()
virtual int draw_vis_ref ()
virtual int draw_ref_img (ref_img_t t)
virtual int draw_final (CVIEWptr &)

Static Public Member Functions

static STAT_STR_RET static_name ()
static int add_decoder (Cstr_ptr &d, DATA_ITEM *di, int copy=-1)
static void set_default_decoder (DATA_ITEM *(*d)(STDdstream &, Cstr_ptr &, DATA_ITEM *))
static DATA_ITEMDecode (STDdstream &d, int DelayDecoding=0)
static DATA_ITEMlookup (Cstr_ptr &d)
static HASHdi_hash ()
static STAT_STR_RET static_name ()

Protected Member Functions

 GEL (CGELptr &g)

Protected Attributes

int _copy
TAGlist _DEFINERtags

Static Protected Attributes

static TAGlist_gel_tags = 0

Static Private Attributes

static Cstr_ptr _name

Detailed Description

GEL, GELptr: The virtual base class for "graphic elements" that can be displayed in a view. These objects are intended to be lightweight, ref-counted geometric elements that support a minimal but important interface including methods for: intersection, nearest, transformations, naming, serializing, and drawing

Definition at line 103 of file gel.H.


Member Enumeration Documentation

enum RefImageClient::ref_img_t [inherited]
 

Enumerator:
REF_IMG_NONE 
REF_IMG_ID 
REF_IMG_COLOR 
REF_IMG_COLOR_2 
REF_IMG_ID_PRE1 
REF_IMG_ID_PRE2 
REF_IMG_ID_PRE3 
REF_IMG_ID_PRE4 
REF_IMG_TEX_MEM 

Definition at line 25 of file ref_img_client.H.


Constructor & Destructor Documentation

GEL::GEL  ) 
 

Definition at line 46 of file gel.C.

References ExistList::add(), ExistList::allocated(), and EXIST.

GEL::~GEL  )  [virtual]
 

Definition at line 63 of file gel.C.

References debug, and Config::get_var_bool().

GEL::GEL CGELptr g  )  [protected]
 

Definition at line 54 of file gel.C.

References ExistList::add(), ExistList::allocated(), EXIST, and DUPobs::notify_dup_obs().


Member Function Documentation

int DATA_ITEM::add_decoder Cstr_ptr &  d,
DATA_ITEM di,
int  copy = -1
[static, inherited]
 

Definition at line 41 of file data_item.C.

References DATA_ITEM::_hash, and HASH::add().

Referenced by JOTvar< OBJ, TYPE >::check_inst_name(), FUNC_ITEM::FUNC_ITEM(), hashdist::hashdist(), JOTvar< OBJ, TYPE >::JOTvar(), and DISTRIB::notify_exist().

virtual void DATA_ITEM::add_tags  )  const [inline, virtual, inherited]
 

Definition at line 205 of file data_item.H.

virtual BBOX GEL::bbox int  = 0  )  const [inline, virtual]
 

Reimplemented in GELset, GEOM, and GESTURE.

Definition at line 122 of file gel.H.

virtual bool GEL::can_do_halo  )  const [inline, virtual]
 

Reimplemented in GEOM.

Definition at line 127 of file gel.H.

virtual STAT_STR_RET DATA_ITEM::class_name  )  const [pure virtual, inherited]
 

Implemented in hashdist, JOTvar< OBJ, TYPE >, TDI< T >, and FUNC_ITEM.

Referenced by DATA_ITEM::decode(), DATA_ITEM::Decode(), GLSLShader::draw(), DATA_ITEM::format(), GLSLShader::get_uniform_loc(), GLSLShader::init(), DISTRIB::interpret(), BaseJOTappConfig::load(), next_texture(), GEOM::print(), DEFINER::print(), BMESH::print(), print_gel(), Patch::put_textures(), BMESH::read_jot_stream(), GTexture::type(), SolidColorTexture::write_stream(), and GTexture::write_stream().

virtual bool GEL::cull const VIEW  )  const [inline, virtual]
 

Reimplemented in GELset, and GEOM.

Definition at line 123 of file gel.H.

DATA_ITEM * DATA_ITEM::Decode STDdstream d,
int  DelayDecoding = 0
[static, inherited]
 

Definition at line 57 of file data_item.C.

References DATA_ITEM::_copy, DATA_ITEM::_decode_unknown, DATA_ITEM::class_name(), DATA_ITEM::decode(), DATA_ITEM::dup(), Config::get_var_bool(), and DATA_ITEM::lookup().

Referenced by JOThash::get(), DISTRIB::interpret(), and operator>>().

STDdstream & DATA_ITEM::decode STDdstream d  )  [virtual, inherited]
 

Reimplemented in JOTsend_geom, and BMESH.

Definition at line 145 of file data_item.C.

References DATA_ITEM::class_name(), COMMENT::decode(), j, COMMENT::name(), TAGformat::read_end_id(), TAGformat::read_id(), DATA_ITEM::recompute(), and DATA_ITEM::tags().

Referenced by DATA_ITEM::Decode(), BMESH::decode(), JOTio::get(), BMESH::get_patches(), Patch::get_texture(), VIEW::get_view_animator(), and VIEW::get_view_data_file().

GEL::DEFINE_RTTI_METHODS3 "GEL"  ,
GEL ,
DATA_ITEM  ,
CDATA_ITEM * 
 

static HASH* DATA_ITEM::di_hash  )  [inline, static, inherited]
 

Definition at line 225 of file data_item.H.

References DATA_ITEM::_hash.

virtual int GEL::draw CVIEWptr &   )  [inline, virtual]
 

Implements RefImageClient.

Reimplemented in GELset, GEOM, ICON2D, LINE3D, SHOW_TRIS, TEXT2D, XF_DRAW, DEBUG_ELLIPSE, and GESTURE.

Definition at line 124 of file gel.H.

virtual int RefImageClient::draw_color_ref  )  [inline, virtual, inherited]
 

Reimplemented in GELset.

Definition at line 55 of file ref_img_client.H.

Referenced by RefImageClient::draw_ref_img(), and RefImageClient::draw_tex_mem_ref().

virtual int RefImageClient::draw_color_ref_2  )  [inline, virtual, inherited]
 

Reimplemented in GELset.

Definition at line 56 of file ref_img_client.H.

Referenced by RefImageClient::draw_ref_img().

virtual int RefImageClient::draw_final CVIEWptr &   )  [inline, virtual, inherited]
 

Reimplemented in GELset, GEOM, GESTURE, ControlLineTexture, HiddenLineTexture, BMESH, and Patch.

Definition at line 100 of file ref_img_client.H.

Referenced by Patch::draw_final(), HiddenLineTexture::draw_final(), and ControlLineTexture::draw_final().

virtual int RefImageClient::draw_id_ref  )  [inline, virtual, inherited]
 

Reimplemented in GELset, and OGLTexture.

Definition at line 50 of file ref_img_client.H.

Referenced by RefImageClient::draw_ref_img().

virtual int RefImageClient::draw_id_ref_pre1  )  [inline, virtual, inherited]
 

Reimplemented in GELset.

Definition at line 51 of file ref_img_client.H.

Referenced by RefImageClient::draw_ref_img().

virtual int RefImageClient::draw_id_ref_pre2  )  [inline, virtual, inherited]
 

Reimplemented in GELset.

Definition at line 52 of file ref_img_client.H.

Referenced by RefImageClient::draw_ref_img().

virtual int RefImageClient::draw_id_ref_pre3  )  [inline, virtual, inherited]
 

Reimplemented in GELset.

Definition at line 53 of file ref_img_client.H.

Referenced by RefImageClient::draw_ref_img().

virtual int RefImageClient::draw_id_ref_pre4  )  [inline, virtual, inherited]
 

Reimplemented in GELset.

Definition at line 54 of file ref_img_client.H.

Referenced by RefImageClient::draw_ref_img().

virtual int RefImageClient::draw_ref_img ref_img_t  t  )  [inline, virtual, inherited]
 

Definition at line 82 of file ref_img_client.H.

References brcase, brdefault, RefImageClient::draw_color_ref(), RefImageClient::draw_color_ref_2(), RefImageClient::draw_id_ref(), RefImageClient::draw_id_ref_pre1(), RefImageClient::draw_id_ref_pre2(), RefImageClient::draw_id_ref_pre3(), RefImageClient::draw_id_ref_pre4(), RefImageClient::draw_tex_mem_ref(), RefImageClient::REF_IMG_COLOR, RefImageClient::REF_IMG_COLOR_2, RefImageClient::REF_IMG_ID, RefImageClient::REF_IMG_ID_PRE1, RefImageClient::REF_IMG_ID_PRE2, RefImageClient::REF_IMG_ID_PRE3, RefImageClient::REF_IMG_ID_PRE4, and RefImageClient::REF_IMG_TEX_MEM.

Referenced by Patch::draw_ref_img().

virtual int RefImageClient::draw_tex_mem_ref  )  [inline, virtual, inherited]
 

Reimplemented in DotsShader, DotsShader_EX, GLSLHatching, HalftoneShader, HalftoneShaderEx, and MSLDShader.

Definition at line 57 of file ref_img_client.H.

References RefImageClient::draw_color_ref().

Referenced by RefImageClient::draw_ref_img().

virtual int RefImageClient::draw_vis_ref  )  [inline, virtual, inherited]
 

Reimplemented in GELset, GEOM, LINE3D, OGLTexture, ControlFrameTexture, ControlLineTexture, SilFrameTexture, SilsTexture, WireframeTexture, ZcrossFrameTexture, ZcrossTexture, CAMwidget_anchor, CAMwidget_anchor, BMESH, Patch, BALLwidget_anchor, and GRIDwidget_anchor.

Definition at line 68 of file ref_img_client.H.

Referenced by Patch::draw_vis_ref().

virtual DATA_ITEM* GEL::dup  )  const [pure virtual]
 

Implements DATA_ITEM.

Implemented in GELset, GEOM, LINE3D, SHOW_TRIS, DEBUG_ELLIPSE, and GESTURE.

STDdstream & DATA_ITEM::format STDdstream d  )  const [virtual, inherited]
 

Reimplemented in Animator, JOTdone, JOTsend_geom, and BMESH.

Definition at line 194 of file data_item.C.

References DATA_ITEM::class_name(), TAGformat::end_id(), Config::get_var_bool(), TAGformat::id(), DATA_ITEM::tags(), and STDdstream::write_newline().

Referenced by JOTdone::format(), BMESH::format(), Animator::format(), JOTio::put(), and VIEW::put_view_data_file().

void REFcounter::Free  )  const [inline, inherited]
 

Definition at line 76 of file ref.H.

References REFcounter::_mutex, REFcounter::_u, and REF_ME.

virtual bool GEL::inside mlib::CXYpt_list  )  const [inline, virtual]
 

Reimplemented in TEXT2D.

Definition at line 120 of file gel.H.

virtual RAYhit& GEL::intersect RAYhit r,
mlib::CWtransf m = mlib::Identity,
int  uv = 0
const [virtual]
 

Reimplemented in GELset, GEOM, ICON2D, LINE3D, and TEXT2D.

virtual bool GEL::is_3D  )  const [inline, virtual]
 

Reimplemented in GEOM.

Definition at line 126 of file gel.H.

virtual int DATA_ITEM::is_of_type Cstr_ptr &  t  )  const [inline, virtual, inherited]
 

Definition at line 214 of file data_item.H.

References IS.

Referenced by BMESH::operator=().

int REFcounter::Lock  )  [inline, inherited]
 

Definition at line 105 of file ref.H.

References REFcounter::_mutex, and REFcounter::_u.

Referenced by REFlock::REFlock().

static DATA_ITEM* DATA_ITEM::lookup Cstr_ptr &  d  )  [inline, static, inherited]
 

Definition at line 222 of file data_item.H.

References DATA_ITEM::_hash, and HASH::find().

Referenced by DATA_ITEM::Decode(), FUNC_ITEM::FUNC_ITEM(), Patch::get_tex(), and BMESH::read_jot_stream().

virtual Cstr_ptr& GEL::name  )  const [inline, virtual]
 

Reimplemented in GEOM.

Definition at line 129 of file gel.H.

References _name.

Referenced by operator<<().

virtual RAYnear& GEL::nearest RAYnear r,
mlib::CWtransf m = mlib::Identity
const [virtual]
 

Reimplemented in GEOM.

virtual bool GEL::needs_blend  )  const [inline, virtual]
 

Reimplemented in GEOM, ICON2D, DrawWidget, DEBUG_ELLIPSE, GESTURE, CAMwidget_anchor, CAMwidget_anchor, BALLwidget_anchor, and GRIDwidget_anchor.

Definition at line 121 of file gel.H.

void REFcounter::Own  )  const [inline, inherited]
 

Definition at line 59 of file ref.H.

References REFcounter::_mutex, REFcounter::_u, and REF_ME.

virtual ostream& GEL::print ostream &  s  )  const [inline, virtual]
 

Reimplemented in GEOM.

Definition at line 131 of file gel.H.

Referenced by operator<<().

virtual void DATA_ITEM::recompute  )  [inline, virtual, inherited]
 

Reimplemented in Patch.

Definition at line 208 of file data_item.H.

Referenced by DATA_ITEM::decode().

static void DATA_ITEM::set_default_decoder DATA_ITEM *(*)(STDdstream &, Cstr_ptr &, DATA_ITEM *)  d  )  [inline, static, inherited]
 

Definition at line 218 of file data_item.H.

References DATA_ITEM::_decode_unknown.

static STAT_STR_RET RefImageClient::static_name  )  [inline, static, inherited]
 

Definition at line 44 of file ref_img_client.H.

References RET_STAT_STR.

Referenced by BMESH::operator=().

STAT_STR_RET DATA_ITEM::static_name  )  [static, inherited]
 

Definition at line 31 of file data_item.C.

References RET_STAT_STR.

Referenced by BALLwidget_anchor::BALLwidget_anchor(), CAMwidget_anchor::CAMwidget_anchor(), Patch::cur_tex(), OGLTexture::draw_id_ref(), OGLTexture::draw_id_triangles(), OGLTexture::draw_vis_ref(), VIEW::get_view_animator(), GRIDwidget_anchor::GRIDwidget_anchor(), and toggle_sil_frame().

virtual CTAGlist& GEL::tags  )  const [inline, virtual]
 

Reimplemented from DATA_ITEM.

Reimplemented in GEOM.

Definition at line 113 of file gel.H.

References _gel_tags.

Referenced by GEOM::tags().

int REFcounter::Unique  )  const [inline, inherited]
 

Definition at line 115 of file ref.H.

References REFcounter::_mutex, and REFcounter::_u.

void REFcounter::Unlock  )  [inline, inherited]
 

Definition at line 111 of file ref.H.

References REFcounter::_mutex, and REFcounter::_u.

Referenced by REFlock::~REFlock().

virtual ref_img_t RefImageClient::use_ref_image  )  [inline, virtual, inherited]
 

Reimplemented in GEOM, DotsShader, DotsShader_EX, GLSLHatching, HalftoneShader, HalftoneShaderEx, MSLDShader, BMESH, and Patch.

Definition at line 60 of file ref_img_client.H.

References RefImageClient::REF_IMG_NONE.

Referenced by OGLTexture::draw_id_ref(), and Patch::use_ref_image().


Member Data Documentation

int DATA_ITEM::_copy [protected, inherited]
 

Definition at line 197 of file data_item.H.

Referenced by DATA_ITEM::Decode().

TAGlist DATA_ITEM::_DEFINERtags [protected, inherited]
 

Definition at line 198 of file data_item.H.

Referenced by DATA_ITEM::tags().

TAGlist * GEL::_gel_tags = 0 [static, protected]
 

Definition at line 138 of file gel.H.

Referenced by tags().

Cstr_ptr GEL::_name [static, private]
 

Reimplemented in GEOM, and ICON2D.

Definition at line 135 of file gel.H.

Referenced by name().


The documentation for this class was generated from the following files:
Generated on Mon Sep 18 11:45:26 2006 for jot by  doxygen 1.4.4