User event for array of waveforms with attribute

I have been transferring data in a Producer/Consumer architecture via User Events.  The data consisted of an array of waveforms. When I added an attribute to the waveforms the code breaks with two errors about Create User Event: User event data type is unnamed or has elements with no names or duplicate names, and Contains unwired or bad terminal.
From reading the help on user events it is not clear that arrays are even allowed: "user event data type is a cluster of elements or an individual element whose data type and label define the data type and name of the user event."
From experimentation it seems that arrays of numerics and arrays of wavefroms without attributes work. A single waveform with an attribute can also be used. But an array of the same waveform with attribute leads to a broken run arrow. It also appears that I can put the array of waveforms with attributes inside a cluster and then create the user event.
Is this a bug, an undocumented corner case, or some "feature" that I do not understand?
Searching for User Event for Array of Waveforms generates some interesting, but mostly irrelevant results.
Lynn

tst wrote:
Another option would be typecasting, but it looks like you can't typecast a waveform. Variant to Data or Coerce to Type might also work, but I haven't tried.
I have also done the Flatten To String and Unflatten From String to send data around.  It would be preferable to not need to do that though.
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines

Similar Messages

  • How do i change 2 row of array into waveform with delta time and time

    Hello,
    How do i change 2 row of array into waveform with delta time and time
    so the waveform graph will display two waveform,
    waveform, not cluster =]
    and how to extract 1d array from waveform?

    Hi AxE,
    Here is an example VI, that do what You asked for.
    Both requests.
    Hope it Helps...
    Attachments:
    2D_to_Waveform.vi ‏75 KB

  • Lowpass filtering an array of waveforms with different cutoff frequencie​s

    I'm trying to take an array of waveforms and have seperate filter settings for each individual waveform. For example, I want to have a 2 hz cutoff frequency on my thermocouple inputs and a 100 hz cutoff frequency on a strain gage input.
    When I try to accomplish this using the Butterworth filter (as shown in the image) I get weird results. The VI seems to be setup to only handle 1 waveform at a time. If I set the init/cont to F for init, the beginning of each waveform segment is reset to 0 which wrecks the data files. If I set the init/cont to "T" for continuous, the data is completely wrecked because the waveforms are interferring with each other.  Clearly this VI is not setup for muliple instances (for use in a for loop).
    There are the Waveform filters, but I seem to only be able to use 1 cutoff frequency for the entire set of waveforms.
    In the subVI image below, I input an array of waveforms into a for loop with the settings collection for each channel (element in the waveform array). I pass the cutoff frequency to the butterworth filter with the Y data array from the segment of the waveform.  Waveform data is supplied continuously (I need a live data filter).
    Thanks for your input.
    Attachments:
    Filter applied to multiple waveforms.png ‏17 KB

    You are correct (about the true/false on the cont/init input).  Not sure I follow what the help is saying to do...
    Is there anyway to verify the number of instanced "Filter Duplicates" are running? I'm still having a lot of issues with my implimentation and I'm wondering if I'm not initializing everything correctly.  I've even added a button that should push a new re-initialization.  I'm trying to have an interface that allows the user to turn off and on the filter while data is be aquired.  Here is some of my code that I'm using to try and accomplish that, but after I've enabled the filter on multiple waveforms and hit my "re-initialize" button I still get bizarre data artifacts (like spikes) that would not be indicative of data on the other side of a low pass filter.  Thanks for any additional feedback.
    I've modified your Filter Duplicate to have an "Enable" feature so that the waveforms that I do not want any filtering of are just passed through.
    I've tried to re-create the functionality of your Test multi-filter VI Server, but with the added boolean option to not have the filter performed:
    So when "True" is on init/cont input the VI is re-open by VI server and the true signal propagates to the Filter Duplicate Asynchronous call.  Here is a snippit from my main window call:
    Lastly, here is the noisy data I'm dealing with:
    Here is the data after I apply a 5Hz filter to each one:
    Clearly data from one is being imposed on the other.  Hitting my "re-initialize" button to send a "true" signal through doesn't fix it.  How can I verify that my filters are working independently as desired?
    Thanks!

  • Receiving modi Event for Arrays

    Hi, is their a way to receive modificationEvents for arrays?
    i currently get accessEvent on int[], but i need to get modificationEvent on the values of the arrays i.e. (int type) array[0] = 25, array[1] = 30.
    The excludes for the debugger are String[] excludes = {
                   "java.*",
                   "javax.*",
                   "sun.*",
                   "com.sun.*"
    When i get a classPrepareEvent, i create a modification and access watchpoint for each field for that class and then use the classExclusionFilter using the excludes above, then enable, the request.
    here's the debuggee code:
    public class Obj
         public int x;
         public int[] array;
    public Obj()
         array = new int[10];
         array[0] = 25;
         array[1] = 30;
    Here's the events i receive:
    EVENT: null
    EVENT: class prepare request (enabled)
    EVENT: method entry request (enabled)
    EVENT: method entry request (enabled)
    EVENT: modification watchpoint request Obj.array (enabled)
    EVENT: access watchpoint request Obj.array (enabled)
    EVENT: access watchpoint request Obj.array (enabled)
    EVENT: method exit request (enabled)
    EVENT: method exit request (enabled)
    EVENT: thread death request (enabled)
    but after the access event on array[0] = 25; i shoudl get a modification event
    The only way i found of recording the changes in the array, is keeping the old value from the accessEvent, then the next event (after the access, which coudl be anything, methodExit/entry, field modi), check to see which value is different then show that value in my trace. But this is totally not a good idea.
    Currently my trace looks like this:
    main Obj
    | <init> Obj(ID=272)
    //| | values = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
    | | array = instance of int[10] (id=273) UID= 272
    | | Access Field = array Value = instance of int[10] (id=273)
    | | Access Field = array Value = instance of int[10] (id=273)
    ===== main end =====
    i should really have:
    main Obj
    | <init> Obj(ID=272)
    //| | values = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
    | | array = instance of int[10] (id=273) UID= 272
    | | Access Field = array Value = instance of int[10] (id=273)
    | | array[0] = 25
    | | Access Field = array Value = instance of int[10] (id=273)
    | | array[1] = 30
    ===== main end =====
    thanks

    Does anyone have any ideas how i can receive ModificationEvents for adding values to arrays?? Really need some help with this. I did try with Vector by including it with the classes to fire events but when the add method was invoked, it called other methods as well and messed the trace up. Add() method also calls ensureCapacityHelp() for Vector as well but i jsut want to see the add() method in my trace.

  • Shifter register for array of waveforms

    Hi guys,
    I was trying to use shift register to append waveforms from multiple channels to their previous waveforms correspondingly.
    The problem is when I click the stop button on the front panel and saved the data, the data file contains nothint except for some words like "waveform","t0", and "dt".
    The attachment is the image of my VI.
    Thanks!
    Jude
    Attachments:
    screencap3.png ‏101 KB

    Your problem is your FOR loop at the bottom.  When you first call this VI, the shift register will have the default value for the data type.  In this case it will be an empty array of waveforms.  A FOR loop will iterate the smallest of the size of the smallest autoindexing input array or the N.  Well, the smallest will be 0 because of that empty array.  So the FOR loop actually does not run at all.  It just outputs an empty array.  What you need to do is put a case structure around that FOR loop.  When the loop index of the WHILE loop is 0 (first time reading anything) set the output to the waveform you just read.  If the loop index is greater than 0 run the FOR loop like you have now.
    If you look at the VI I gave you here you will see what I mean.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • Proper user manual for yoga 11 s with windows 8

    Hi,
    I wanted to use the camera on my yoga and first of all the quality of the picture is awful but that is not the main issue here. How can i save the picture (it offers delet or cropp only), and i do not know anything at all about making video with this product. The user guide for this is simply a guide but not a proper manual. Apart from the user manual and harddisk maintainance manual i cold not find a decent one for covering issues that a real user manual usually does. Not on the web, not on lenovo`s sites, nowhere. Any idea about this? Thank you
    Ildiko

    Dear huszarildiko
    Welcome to Lenovo forums
    the images are directly saved into you images like in the image below you will find them in a folder named camera roll
    thanks
    Did someone help you today? Press the star on the left to thank them with a Kudo!
    If you find a post helpful and it answers your question, please mark it as an "Accepted Solution"! This will help the rest of the Community with similar issues identify the verified solution and benefit from it.
    Follow @LenovoForums on Twitter!

  • Can't seem to customize repeat event for every Tu & Thu with OS 10.9.2 and iCal 7.0

    Used to be able to customize events in previous versions of iCal.  Now, trying to customize event for every Tue & Thu and even when I click "customize" on repeat event, only options are "daily, weekly, monthly, etc"  - not really flexible.
    Have tried removing p-list and restarting iCal and computer but no improvement.
    Currently using OS 10.9.2 with iCal 7.0.
    Does anyone have a solution?
    Thanks,
    MJ

    MJ,
    Where are you clicking on "customize?" Are you using the iPhone?
    This is what I am presented with when choosing "repeat" on my iMac:

  • JDI events for array types (ArrayReference)

    What is the best way to get information on the creation of arrays (ArrayReference types). I have an application that needs to detect the creation of objects, set watchpoints on the variables of these objects and create an object based on this targetVM-object. I do this now through the MethodEntryEvent and check wether the method is a constructor. If so, I check the declaringType of the object AND set watchpoints on it's fields. This does not seem to work with array type objects however...
    I use a not-so-pretty workaround now where I check watchPointEvent for the type of the field that is altered. If it's of type ArrayReference, I create an array based on this ArrayReference, I have to do the same for locals at each stepEvent. Isn't there a better way. Do array types not use constructors so I could use the same way as for other objects (see first paragraph)?

    Pretty creative efforts! Unfortunately, array creation isn't done by constructors, it is done by bytecode instructions.
    Search for 'array' here: [http://www.javaworld.com/jw-12-1996/jw-12-hood.html] .
    I can't think of an easy way to do what you want. Can anyone else?

  • A user manual for creating adobe form with transaction HRASR_DT

    Hi ,
    can any one tell me please if there is  A user's manual for this ?
    I m new with this subject and need help .
    Best Regards,
    Eyal

    Hi Federico,
    Thank you very much ! very helpfull .
    I have another question -
    I have created all required setting for creating HCM Form and in the last step - Creating procces ,
    after insert the form scenario and save my entries i get the following message - ASSERTION_FAILED.
    what is this ????? how can i correct this problem ?
    Best Regards,
    Eyal

  • User Authentication for CUIC co-resident with UCCX

    We are running UCCX 9.0.2 and have been using the HRC for reporting, but I'd like to switch us over to the version of CUIC that is built-in to UCCX.  I flipped us over to that after hours to take a look through it and get an idea what I'll need to do to get things working before permanently switching us off of HRC.
    One thing I'm having trouble with is that the authentication doesn't appear to be AD based like UCCX is.  It automatically imported all of the supervisors and administrators that have access to UCCX (including me), but I'm not able to log in with anything other than the platform admin user name and password.  I used the platform admin user name and password to get in and view everything and make a few changes.  I added my account to the admin group and assigned the System Configuration Administrator and Security Administrator roles to myself.  (see screenshot)
    I noticed the format it shows for my user name is CCX\tyson.shroyer and it doesn't show a field for a password anywhere.  I tried logging in using CCX\tyson.shroyer as my user name and the password for my AD account (which is what I use to log in to UCCX) and it doesn't work.  I tried it without CCX\ in the user name and it still didn't work.  I tried leaving the password blank...no dice.  No combination of user name and password gets me in.
    I've looked all over trying to find some info and documentation specifically for the version of CUIC that's built-in with CCX 9.x and above, but everything I find (SRNC, Admin Guide, etc) is specific to CUIC Premium which I know would be on a separate server and appears to have a different method of administration.  That documentation mentions accessing an OAMP page for all of the system administration tasks.  I tried going to the path for the OAMP page as specified in the documentation and it doesn't appear to be available.  I'm not sure if it just isn't part of this version or not.
    Anyway, I'd greatly appreciate any info you could provide on making this switch.  I'd prefer to get it integrated with AD just like the rest of the UC environment is, but at this point I'd settle for at least being able to get logged in with a user account.  Thanks in advance everyone!

    Hi
    Are you able to try the LDAP option in the login page
    https://<IPAddress>:8444/cuic/Login.htmx;jsessionid=BB18708EA5C507AD7CF6512898C6FC5F

  • User Exit for Production Order confirmation with CO15

    Hi All,
    what User Exit I should use when validating batch when we do Production Order confirmation with CO15.
    Not when we create or release a Production Order.
    Will reward,
    mindaugas
    Edited by: Mindaugas Kazlauskas on Jan 30, 2008 5:03 PM

    Hi
    The Follwing Userexits available:
        Transaction Code - CO15                     Enter Production order Confirmation
    Enhancement/ Business Add-in            Description
    Enhancement
    CONFPP01                             
      PP order conf.: Determine customer specific default values
    CONFPP02                               
      PP order conf.: Customer specific input checks 1
    CONFPP03                              
       PP order conf.: Cust. specific check after op. selection
    CONFPP04                             
        PP order conf.: Customer specific input checks 2
    CONFPP05                               
       PP order conf.: Customer specific enhancements when saving
    CONFPP06                               
       PP Order Confirmations: Actual Data Transfer
    CONFPP07                               
       Single Screen Entry: Inclusion of User-Defined Subscreens
    CONFPS01                              
       PS confirmation: Determine customer specific default values
    CONFPS02                               
      PS confirmation: Customer specific input checks 1
    CONFPS03                             
        PS confirmation: Customer specific check after op. selection
    CONFPS04                              
       PS confirmation: Customer specific input checks 2
    CONFPS05                              
       PS confirmation: Customer specific enhancements when saving
    CONF0001                               
      Enhancements in order confirmation
    CONFPI01                              
       Process order conf.: Calculate cust.specific default values
    CONFPI02                               
       Process order confirmation: Customer spec. input checks 1
    CONFPI03                              
       Process order conf.: Cust. spec. check after op. selection
    CONFPI04                               
       Process order conf.: Customer specific input checks 2
    CONFPI05                              
       Process order conf.: Cust. spec. enhancements when saving
    CONFPI06                              
      Process order confirmation: Actual data transfer
    CONFPM01                             
        PM/SM order conf.: Determine cust. specific default values
    CONFPM02                             
        PM/SM order confirmation: Customer specific input checks 1
    CONFPM03                               
    PM/SM order conf.: Cust. spec. check after op. selection
    CONFPM04                              
       PM/SM order conf.: Customer specific input check 2
    CONFPM05                              
       PM/SM order conf.: Cust. specific enhancements when saving
    If it is helpful rewards points.
    Regards
    Pratp.M

  • Responding to two user events with same name

    LV 2013, Win 7, & LVRT 2013, PharLap OS
    I have a situation where I create an ARRAY of User Events, one for each "domain" .  
    A "domain" is an area of DAQ: there is a SCXI domain, a CDAQ domain, an EtherCAT domain, several domains dealing with TCP instruments etc., about 25 domains all told. The name of the event is "New Channels This Domain".
    When a new configuration comes to the PXI from the host, I sort out the channels by their domain and generate a user event for whichever domains have channels that have changed: more channels, fewer channels, differences. If a domain has no channels that have changed, I do not generate an event for it.
    There is a handler for each domain: in that handler, I pick out the event for this domain from the array, and register to receive it.  I have an event structure that responds to the NEW CHANNELS THIS DOMAIN event.  Since it is an array, then no matter which domain I select, the name of the array is "New Channels This Domain".
    All this works fine.
    Now I have a situation where it makes sense to have one handler for TWO domains.
    I can pick out TWO elements of the array just fine, and register them both.   (See attached pic)  But now, in the EDIT EVENTS FOR THIS CASE list, I have TWO events called "New Channels This Domain".  I can select one for one case, and the other for the other case and it seems to work.
    --- Is there any heartache ahead with this scheme?  
    --- If I change the events in the clusters before, is it going to confuse LabVIEW?  
    --- Is there something I can do to change the name of the event after I pick it out of the array?  
    --- Is there something I SHOULD do at that point?
    Like I said, it seems to work, but I'm leery of it staying that way - I've had event structures disturbed before (LV2010) when changing cluster order.
    Steve Bird
    Culverson Software - Elegant software that is a pleasure to use.
    Culverson.com
    Blog for (mostly LabVIEW) programmers: Tips And Tricks

    CoastalMaineBird wrote:
    Thanks, Greg for that link.  I gave kudos to the idea of the COERCE TO TYPE function, and it seems like it would do the trick, but as of LV2014 it's still not on the palette.
    My question still remains: is it necessary?  Will the event structure remember that it's supposed to use the SECOND event named "X", through all edits and recompiles?  My guess is no, but I'll listen to alternative stories.
    I've been using the Coerce to type for this and enums in versions 2011 through 2014 since learning about it.  I've seen no issue using it in these cases.  I'm guessing it doesn't behave in an expected way for extreame uses which is why NI doesn't release it yet.
    As for would it always know to go to the second event if they are named the same?  My guess is yes.  They maybe named the same but they have different references.  I would think it would be just like having two controls with the same label.  You should never do this, but if you did, and made a local variables on one and wrote to it, it would always write to the correct control.  It would never write to the different control with the same name.  Now even if this is the case it could be confusing to a developer looking at the code, which is why I strongly suggest having unique names.  But if you don't I suspect every thing would work fine, just have a bold comment or something explaining what each case actually is handling.
    Unofficial Forum Rules and Guidelines - Hooovahh - LabVIEW Overlord
    If 10 out of 10 experts in any field say something is bad, you should probably take their opinion seriously.

  • Handling User Events in sub panel vis and main vis with same Event reference Number.

    Hi All, Iam trying to work to handle events in both subpanel vi and main vi.
    I have a main program, and 2 sub vi. I will load the sub VI in 2 sub panels in main vi. Each sub pael vi has controls on it.
    I have created 2 User events for 2 sub panels vi. One user event consits of a Cluster with 2 Booleans (x & Y) and Other User Event consists of cluster of 2 unsigned 8 Numbers (a & b). These are created and registered in the main Vi and event register refnum is passed to the subpanel vi from the main panel vi.
    I have Event structure in main panel and sub panel vis.
    In one sub panel vi, When the value of one boolean(i.e. X) in the clusters changes, the Events structure in sub panel vi should perform some operation in sub panel vi only. When the value of other boolean (i.e. Y) changes it should perform some operation in main vi. I will try to Generate user event with the x value and Y value changed based on the control clicks in the sub panel vi.
    The OTher panel vi should behave in the smae way when the a & b value changes.
    The "Generate User Event" is working fine some times and sometimes there in no event triggered in the sub panel vi or main vi.
    Please let me know what is the problem Ramesh.

    There is a lot of talking, but not much understanding.  It'd be better if you posted some example VI's of what you are trying to do so that the words will make sense.
    One thing I can tell you is that you don't want to have two event structures handle the same event reference number.  You want to have two event registrations with each one going to its own event structure.

  • Adobe Reader v10.4.4 support for PDF with attributes

    Hi there,
    I recently downloaded Adobe Reader v10.4.4 for my iPhone. I was just wondering if it supports PDFs with attributes?
    To test I created two PDFs using GIS application called MapInfo Professional:
    1. PDF without attributes - this one was able to open succesfully
    2. PDF with attributes - this one could not open and threw an error "Not a valid PDF document"
    Any help appreciated.
    Thanks,
    Dave

    Hi Steve,
    Thanks for your speedy reply. Yes, I forgot to mention, these PDFs can open up in my desktop version of Adobe Reader (v8) for Windows.
    PDF with attributes means that there is records (attribute data) contained in the PDF which is being saved into the PDF when it was created using the GIS application. For example if looking at postal area: PDF map, ID number, place name, population, area (sq m) values etc.
    The specific tool/function which allows these attribute values to be exposed is called the 'Object Data' tool (under Tools > Object Data in the desktop version)
    (I have attached a screenshot showing these attributes in the desktop version so you may get a better understanding hopefully! Pls see link below)
    http://i296.photobucket.com/albums/mm199/dkny1315/ScreenHunter_44Feb151332_zpsd515b1af.gif
    If you need any further info or details, please let me know
    Thanks,
    Dave

  • Updating data in User Event doesn't propogate to uses of the User Event type

    So I have a user event which is seeded with a cluster in which there are a few typedefs. Now, as you might expect, I have to pass the user event to different VIs so that they can trigger the events which are interpretted by a main vi. Pretty simple and all is happy. There's one rub though: one of my vis which is passed the user event is called by reference. The call by reference vi requires a certain vi pattern when you create the reference for the vi (namely, a strictly typed vi reference), which includes the user event type. Now, sometimes, I update the typedefs in the data type of the user event. This means that user event type changes. Now, what's maybe not too surprising, is that either the user event type doesn't update with the type def or that the type specifier vi constant doesn't update with the change in user event type. This means that every time I have to go back and create a type specifier based on the updated pattern for the vi which takes the user event as an input.
    Is there a way for labview to automatically do this? One way to fix it, I'm sure, is to change the user event input into the vi I call by reference to a variant. Then inside the vi I call, to type cast the variant with the output of a Create User Event vi that has been seeded with the appropriate cluster of typdefs. But that seems pretty silly (like, why not just make EVERYTHING a variant). Any ideas?
    - Chris

    Take a static VI reference (from the app control palette), drag your subVI into it, right click it and make it strict and wire it into the type input for the Open VI Reference primitive. Now it should always update.
    Two more advantages you get from this is that now the VI is in memory, so it will automatically be included in your build and that you can use the VI Name (or VI Path) property from the static reference to get the name for the Open VI Reference primitive and it will always work correctly.
    Try to take over the world!

Maybe you are looking for

  • Compatible Battery for Satellite A100-204

    I can't find any replacement battery for my Toshiba satellite A100-204 Laptop. The original battery is a 4 cell recycable Li-ion PA3451U-1BRS. Everytime i look for this battery in google i only find it for the Toshiba M40. It allmost looks the same b

  • There is a way to hack a mac pro even if you have a password. How do I prevent hacking?

    My friend can actually hack a mac pro just by restarting it even if you have a password to protect your mac. My mac is curently mavericks. Steps: 1.When you open a mac with a password in mavericks, click switch user.             2. After the page loa

  • Http Request through URL Connection?

    Hi , Iam using an Applet (under JRE 1.3.0). Iam trying to send a Http Request using URL Connection. It is working fine . However, if the response time of the server is more than 3 minutes , the Response is not coming back to the server and the Applet

  • Acrobat Pro Installation on Mac

    I have Yosemite 10.10.2. I am having trouble downloading the Acrobat Pro XI. I downloaded Indesign and Photoshop with no problem When it starts to download for acrobat it pauses at 42% a window pops up and says to close SafariNotifici and retry. I ha

  • ORA-29516 encountered when using LoadJava

    I get ORA-29516 when trying to use the LoadJava command on Linux and Oracle 8.1.6. I also have trouble running the initjvm.sql, it seems to always run with errors. Do I need to alter some values in my .ora file? or is there something else that I may