AnsweredAssumed Answered

VRF-Sync_Pin

Question asked by VRFuser on Apr 7, 1999
Latest reply on Apr 7, 1999 by VRFuser
send q VRF-Sync_Pin vrf

from: Greg Goebel / HP-MXD
      greg_goebel@hp.com / 970-679-2305
      website:  http://hpislsup.lvld.hp.com
to:   VRF-David Birkin
date: Thursday, 08 April 1999 1314 MDT

Sir:

What you're getting is VEE telling you that what you are trying to do won't
work.  Consider this:

   +-----------+    +--------------+
   | For Count +--->|              |
   +-----+-----+    | MyUserObject |
      |          |              |
      +--------->|              |
              +--------------+

The first problem is that the UserObject will never fire until the For
Count counts out.  It will only have one input valid until the last count,
and so won't execute until then.  All earlier values will be thrown away.

Now the second problem.  Even the UserObject was fired each time, it
contains:

   +-------------------------------------+
   |             MyUserObject            |
   +---+-----------------------------+---+
   |   |                             |   |
   |   |      +-----------------+    |   |
   |   |      |     Collector   |    |   |
   |   |      +------+-+--------+    |   |
   | A +----->| data | |        |    |   |
   |   |      |      | | Result +--->| X |
   | B +----->| XEQ  | |        |    |   |
   |   |      +------+-+--------+    |   |
   |   |                             |   |
   +---+-----------------------------+---+

Each time it would store an item of data, and then return.  The next time
it would be starting all over again, and the data from the earlier
invocation would be lost.

Calling a UserObject or UserFunction is in a general sense no different
from calling a subroutine in any other language.  Each invocation of the
UserObject is a distinct subprogram execution and you start from scratch
each time.

There are a few VEE objects that can flagged to retain values between
invocations of a UserObject ("static variables" in the terminology of other
computer languages), but this isn't one of them.  The only other
way to retain values between invocations is to store them in a global variable.

Then there is the problem that this UserObject won't generate an output and
return until it gets an XEQ ping, but since VEE won't let a user do this
that's kind of irrelevant.

[%%] regards -- gvg

--------------------------------- cut here ----------------------------------
Date: Thu, 8 Apr 1999 17:53:42 +0100 (BST)
>From: David Birkin <djlb@st-andrews.ac.uk>
Subject: VRF:  attaching the sync pin to user object.

Dear all,

Attached is a program containing a problem I have.  It contains a "for
range", a "collector" and a "AlphaNumeric" window.  If I now place the
collector and alpha in a userobject having two inputs -being data and
sync- I am unable to connect the sync pin.  any ideas why?

Regards,
David.




Outcomes