template <class Type> const Pack_Of_Pts * Std_Flux_Interface<Type>::next() { elise_fatal_error ( "should never be her :Std_Flux_Interface<Type>::next()", __FILE__,__LINE__); return 0; }
const Pack_Of_Pts * RLE_Flux_Interface::next() { elise_fatal_error ( "should never be here RLE_Flux_Interface::next()", __FILE__,__LINE__); return 0; }
Output_Computed * DE_GW_Not_Comp::compute(const Arg_Output_Comp & arg) { ASSERT_TJS_USER ( arg.flux()->dim() == 2, "need 2-dimensional sets to write in raster Graphic Window" ); // get the general representation of window Data_El_Geom_GWin * geom = _ew.degeow(); ASSERT_TJS_USER ( (geom->handle_rastser_scale_negatif()) || ((geom->sc().x>0) && (geom->sc().y>0)), "can only handle positive scales in raster mode (for now)" ); Data_Elise_Gra_Win * degw = _ew.degraw(); degw->_degd->reinit_cp(); degw->warn_graph(); (degw->sop()).pal_is_loaded(_pal); Data_Elise_Palette * dep = _pal.dep(); dep->verif_out_put(arg); Output_Computed * res; switch (arg.flux()->type()) { case Pack_Of_Pts::rle : res = degw->rle_out_comp(geom,arg,dep,mOnYDiff); break; case Pack_Of_Pts::integer : INT v[Elise_Std_Max_Dim]; if (arg.fonc()->icste(v)) res = degw->pint_cste_out_comp(geom,arg,dep,v); else res = degw->pint_no_cste_out_comp(geom,arg,dep); break; default : elise_fatal_error ("Raster Windows cannot manage real points (for now)",__FILE__,__LINE__); res = 0; } res = out_adapt_type_fonc (arg,res,Pack_Of_Pts::integer); { Pt2di p0,p1; geom->box_user_geom(p0,p1); res = clip_out_put(res,arg,p0,p1); } return res; }
Pack_Of_Pts * Pack_Of_Pts::new_pck(INT dim,INT sz_buf,type_pack type) { switch (type) { case rle : return RLE_Pack_Of_Pts::new_pck(dim,sz_buf); case integer : return Std_Pack_Of_Pts<INT>::new_pck(dim,sz_buf); case real : return Std_Pack_Of_Pts<REAL>::new_pck(dim,sz_buf); default : elise_fatal_error ("incoherence in Pack_Of_Pts::Pack_Of_Ptsnew_pck", __FILE__,__LINE__); return 0; } }
Flux_Pts_Computed * flx_interface(INT dim, Pack_Of_Pts::type_pack type,INT sz_buf) { switch (type) { case Pack_Of_Pts::rle : return new RLE_Flux_Interface (dim,sz_buf); case Pack_Of_Pts::integer : return new Std_Flux_Interface<INT>(dim,sz_buf); case Pack_Of_Pts::real : return new Std_Flux_Interface<REAL>(dim,sz_buf); default : elise_fatal_error("incoherence in flx_interface",__FILE__,__LINE__); } return 0; }