Quinn-Curtis Forums
Quinn-Curtis Forums
Home | Profile | Register | Active Topics | Members | Search | FAQ
Username:
Password:
Save Password
Forgot your Password?

 All Forums
 Tools for Windows
 ActiveX Controls
 multiple channel display??
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic   

marco

18 Posts

Posted - 24 Oct 2003 :  11:36:48  Show Profile  Reply with Quote
Hi,

I'm trying to create a graph that can display 6 different channels at the same time using C#. I can get one channel to display without any problems (updatedynData(0, dblArray[x]), but I cant find any example on how to display 6 channels. I dont have VS6.0 installed. Could you post a simple example of how to do this. (using scrolling graph).

My deadline is comming up and I really need a hand.

thanks and best regards,

Marco

marco

18 Posts

Posted - 24 Oct 2003 :  12:28:45  Show Profile  Reply with Quote
I'm sorry, I meant traces, not channels

marco
Go to Top of Page

quinncurtis

1164 Posts

Posted - 24 Oct 2003 :  16:55:46  Show Profile  Reply with Quote
We don't provide support for the use of the ActiveX controls with C#. We are only able to provide support for that product used with VB and C++, but not .Net. It is not clear from your message if you are using the commercial version of the product, or the example download of the Real-Time ActiveX control.

If you want to use C# you should be using our QCChart2D product. A free trial download is available.

Your other messages posted on our other forums have been deleted.
Go to Top of Page

marco

18 Posts

Posted - 25 Oct 2003 :  10:11:33  Show Profile  Reply with Quote
I am using a commercial, registered version (Subject: Your Quinn-Curtis Order # 1704 Reg. # = 500400). If you like, I could send you the registration email that was sent to us, but not on a public forum.

We bought this package with the intention of using it with our .NET platform, but I dont really need to have an example in C#. I just need to have an example using vb 6.0. I can take it from there. Your documentation gives a really basic example of using the scrolling graph with one trace. I need to use six. What properties/methods should I be looking at? How do I simultaniously send 6 sets of data to the graph?

regards,

Marco
Go to Top of Page

quinncurtis

1164 Posts

Posted - 25 Oct 2003 :  11:05:32  Show Profile  Reply with Quote
The example programs Scroll, and Simple, in QCActX\Realtime\Examples\Vb, that were installed when the software was installed, both contain examples of scrolling with multiple channels.

Go to Top of Page

quinncurtis

1164 Posts

Posted - 25 Oct 2003 :  18:49:06  Show Profile  Reply with Quote
You probably will not be sucessfull updating multiple channels with the Real-Time ActiveX control if you plan to use a .Net language. The COM interface of the UpdateDynData method expects a c-style
(* double) as holding the channel data in the UpdateDynData method. In this case all of the double values representing the channel data are contiguous in memory. The .Net ActiveX importer translates this to a c#-style (ref double) parameter, where only a single value, passed by reference, is expected. These are two very different things.

If you create an array of double in c#:

double [] dyndata = new double[6];

you are not creating a contiguous array of 6 double values. Instead you are creating a contiguous array of 6 double objects (represented by pointers). So if you pass the first element of the array,
dyndata[0], to the UpdateDynData method, you are not passing the starting address of an array of double values. Instead you are passing in the starting address of an array of pointers to double values.

The .Net ActiveX importer adds extra code to convert the (ref double )object passed in to a pointer to a double value. That pointer is not the start of a contiguous block of memory representing the channel data though. The importer just converts a single value. It does not properly handle cases where the ActiveX control expects an array of values.

Our ActiveX controls have dozens of methods where we use an ActiveX parameter of type (* double) to pass arrays of data to/from the control. This is one of the reasons we decided to create new libraries that are 100% .Net managed code, rather than deal with the problems associated with hybrid versions of our ActiveX controls.
Go to Top of Page

marco

18 Posts

Posted - 30 Oct 2003 :  16:07:11  Show Profile  Reply with Quote
Thank you for the explination. I've convinced my company that we should get your .net package. Its quite ellaborate.

regards,

Marco
Go to Top of Page
  Previous Topic Topic   
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
Quinn-Curtis Forums © 2000-07 Quinn-Curtis, Inc. Go To Top Of Page
Powered By: Snitz Forums 2000 Version 3.4.07