By reconstruct, it means that the streaming operation will not re-create the object collection. Using the previous example as a guide, reconstruct means that the following would not work - the two contained objects would *not* be created. Pair r = new(); {<<{r}} = q; Perhaps you think that this is already covered and the sentence is redundant, but I can't come up with a better word than "re-construct". Arturo From: Bresticker, Shalom [mailto:shalom.bresticker@intel.com] Sent: Monday, April 14, 2008 12:04 AM To: Arturo Salz; sv-bc Cc: sv-ec@eda.org Subject: RE: [sv-bc] stream to object hierarchy Well, originally I did not understand other parts of the sentence either, but you answered those. Regarding "reconstruct", again you wrote "recreate a collection of objects that had been previously streamed". But that is not precise. In your example, you take the source object and stream it into a queue of bits. You could unpack it into a completely different collection of objects. "Populated" would work for me, but I would still have a problem with "repopulated". Thanks, Shalom ________________________________ From: Arturo Salz [mailto:Arturo.Salz@synopsys.com] Sent: Monday, April 14, 2008 9:50 AM To: Bresticker, Shalom; Arturo Salz; sv-bc Cc: sv-ec@eda.org Subject: RE: [sv-bc] stream to object hierarchy I now understand your issue. The term "reconstruct" was used in its general meaning, that is, to recreate a collection of objects that had been previously streamed. The term construct was used because classes have constructors. Perhaps re-populate would be a more accurate way to describe what streaming does - versus construct. Arturo From: Bresticker, Shalom [mailto:shalom.bresticker@intel.com] Sent: Sunday, April 13, 2008 7:42 PM To: Arturo Salz; sv-bc Cc: sv-ec@eda.org Subject: RE: [sv-bc] stream to object hierarchy Thanks. But why is this called "reconstruction"? The particular example you gave does a copy. But in general, an unpack operation does not have to be doing a copy. Thanks, Shalom ________________________________ From: Arturo Salz [mailto:Arturo.Salz@synopsys.com] Sent: Sunday, April 13, 2008 11:48 PM To: Bresticker, Shalom; sv-bc Cc: sv-ec@eda.org Subject: RE: [sv-bc] stream to object hierarchy Shalom, That sentence is in the context of this paragraph: When applied to a class handle (i.e., an object), the streaming operator shall stream the contents of the object, and not the handle itself. Class items are streamed in declaration order; extended class items shall fol-low the items of their superclass. Embedded class handles are streamed as other aggregate types: they are recursively traversed in depth-first order until reaching integral types. A null class handle shall be ignored (not streamed), and a warning may be issued. Null handles are skipped by both the pack and unpack opera-tors; therefore, the unpack operation shall not create class objects. Hence it conveys two concepts: 1) Re-emphasizes that last sentence stating that streaming operations do not create objects. 2) A stream can be unpacked into a collection of contained objects, provided the objects exist prior to streaming. Here's an example: class Number; int n; function new(int x); n = x; endfunction endclass class Pair; Number left; Number right; int avg; endclass Pair p, r; bit q[$]; p = new(); p.left = new(2); p.right = new(4); p.avg = 3; // create and initialize Pair object q = {<<{p}}; // stream object into queue r = new(); r.left = new(0); r.right = new(0); // create other Pair object {<<{r}} = q; // stream queue onto new object collection - r is a copy of p In order for 'r' above to be a copy of p, the two contained objects (r.left and r.right) must have been created (as done above). Arturo From: owner-sv-bc@eda.org [mailto:owner-sv-bc@eda.org] On Behalf Of Bresticker, Shalom Sent: Sunday, April 13, 2008 1:20 AM To: sv-bc Subject: [sv-bc] stream to object hierarchy Hi, 1.4.14 says about the streaming operators, If a particular object hierarchy is to be reconstructed from a stream, the object hierarchy into which the stream is unpacked must be created before the streaming operator is applied. Can someone explain to me what this means and give an example? Thanks, Shalom Shalom Bresticker Intel Jerusalem LAD DA +972 2 589-6582 +972 54 721-1033 --------------------------------------------------------------------- Intel Israel (74) Limited This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies. -- This message has been scanned for viruses and dangerous content by MailScanner <http://www.mailscanner.info/> , and is believed to be clean. --------------------------------------------------------------------- Intel Israel (74) Limited This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies. --------------------------------------------------------------------- Intel Israel (74) Limited This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies. -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Mon Apr 14 09:53:21 2008
This archive was generated by hypermail 2.1.8 : Mon Apr 14 2008 - 09:54:01 PDT