Path: utzoo!attcan!uunet!lll-winken!lll-tis!ames!mailrus!tut.cis.ohio-state.edu!rutgers!rochester!uhura.cc.rochester.edu!sunybcs!boulder!stan!garya From: garya@stan.com (Gary Aitken) Newsgroups: comp.windows.x Subject: Re: Request for Object-Oriented extension to XEvents Message-ID: <272@stan.com> Date: 20 Oct 88 14:51:18 GMT References: <161@tityus.UUCP> <267@stan.com> <5626@blia.BLI.COM> Organization: Solbourne Computer Inc., Longmont, Co. Lines: 30 > should there be n pointers passed? ... Agreed, the generalization from 1 pointer to 2 could go on expanding and should send up all sorts red flags... I like the idea of an arbitrary number of bits (chars?), client definable. The server would then accept/return something like: short int n_bytes ; /* # bytes in client info */ char *client_data ; However, this then gets a bit contorted because the arbitrary data has to go down the wire. As you point out, the client could easily have an arbitrarily complex structure it needed to keep track of, and it is trying to use the server to give it a hint (no, better than that, an exact map) to which structure to use. Since this is client specific data, it seems a bit strange to use the server as a cache for it, which is the effect of storing an arbitrary number of bits. I'll withdraw my earlier plea for more than one pointer, and say one is enough. If the client has complex structures, it can ask the server to accept/return a ptr to the structure. In this model, it SHOULD be a pointer, not an arbitrary string of bits. The main problem with cacheing a pointer is that if the dispatch mechanism reallocates its tables when it expands them, the cached info is wrong. The client will have deal with that problem itself. > ... calling this an "object-oriented" extension is a mistake." Agreed. I don't care what you call it. The point is, ANY application is going to go through some dispatch mechanism after calling XNextEvent, and any information the server can provide to speed it up by reducing a duplication of function on the client side would be a help.