vertexc.sa
Generated by gen_html_sa_files from ICSI. Contact gomes@icsi.berkeley.edu for details
immutable class VERTEXC
immutable class VERTEXC is
include BITSET;
-- Standard Modula2
-- CONST under=0; over=1; minus=2; plus=3;
-- ks=4; ke=5; ts=6; te=7; endc=8; band=9;
-- nc10=10; nc11=11; nc12=12; normal=13; crossing=14; separator=15;
readonly shared nc:VERTEXC; -- no code
readonly shared under,over,negative,positive,ks,ke,ts,te:VERTEXC;
readonly shared endc,band,gs,ge,normal,crossing,separator:VERTEXC;
readonly shared graph_s, graph_e,knot_s,knot_e,band_s,band_e,code_e,
enp,stp,band_attach,
cross_over,cross_po,cross_no,cross_under,cross_pu,cross_nu,
cross_all,
cross_exg,cross_exgs,cross_exs:VERTEXC;
setShareds is
nc:=#;
under:=b(7);over:=b(6);
negative:=b(5); positive:=b(4);
ks:=b(3); ke:=b(2); -- knot
ts:=b(1); te:=b(0); -- saddle
endc:=b(15); -- end of the code
band:=b(14); -- attatching point of saddle
gs:= b(12); ge:=b(11); -- graph vertex
normal:= b(10);
crossing:= b(9);
separator:= b(8);
graph_s:=separator+gs;
graph_e:=separator+ge;
knot_s:=separator+ks;
knot_e:=separator+ke;
band_s:=separator+ts;
band_e:= separator+te;
band_attach:=normal+band;
code_e:= separator+endc;
enp:= ke+te+endc;
stp:= ks+ts;
cross_over:= crossing+over;
cross_po:= crossing+over+positive;
cross_no:= crossing+over+negative;
cross_under:= crossing+under;
cross_pu:= crossing+under+positive;
cross_nu:= crossing+under+negative;
cross_all:= crossing+under+over+positive+negative;
cross_exg:= under+over;
cross_exs:= positive+negative;
cross_exgs:= under+over+positive+negative;
end;
is_crossing:BOOL is
return (p.bit_and(crossing.p)).card/=0;
end;
is_sep:BOOL is
return (p.bit_and(separator.p)).card/=0;
end;
is_stp:BOOL is
return (p.bit_and(stp.p)).card/=0;
end;
is_enp:BOOL is
return (p.bit_and(enp.p)).card/=0;
end;
end; -- VERTEXC