(* Copyright (C) 1994, Digital Equipment Corporation                         *)
(* Digital Internal Use Only                                                 *)
(* All rights reserved.                                                      *)
(*                                                                           *)
(* Last modified on Fri Sep 23 15:45:29 PDT 1994 by najork                   *)
(*       Created on Fri May 27 20:32:05 PDT 1994 by najork                   *)


module ShadingPropWrap for ShadingProp;


let NameProto = clone (Prop_NameProto, {
  bind => meth (self, pv) ShadingProp_NameBind (self, pv) end
});


let ValProto = clone (Prop_ValProto, {
  getBeh => meth (self) ShadingProp_ValGetBeh (self) end,
  setBeh => meth (self, beh) ShadingProp_ValSetBeh (self, beh) end,
  get    => meth (self) ShadingProp_ValGet (self) end,
  value  => meth (self, time) ShadingProp_ValValue (self, time) end
});


let BehProto = clone (Prop_BehProto, {});
  

let ConstBehProto = clone (BehProto, {
  set => meth (self, k) ShadingProp_ConstBehSet (self, k) end
});


let SyncBehProto = clone (BehProto, {
  addRequest => 
    meth (self, req) 
      ShadingProp_SyncBehAddRequest (self, req) 
    end,
  change =>
    meth (self, k, start) 
      ShadingProp_SyncBehChange (self, k, start) 
    end
});


let AsyncBehProto = clone (BehProto, {
  compute => ok,
});


let DepBehProto = clone (BehProto, {
  compute => ok,
});


let RequestProto = clone (Prop_RequestProto, {
  value => ok,
});


end module;
