WriteComplete() Does Not Return

New Message Reply Date view Thread view Subject view Author view

From: Todd J. Furlong (tfurlong++at++e-motek.com)
Date: 07/20/2001 09:14:38


Hi,

I am creating a chain of pfFlux's and pfEngine's, and I've found that
pfFlux::writeComplete() does not return on the first pfFlux until all
processing is complete. It seems like pfEngine's have a way around this
issue because they finish processing in sequence.

First, I create a pfFlux to start the chain with the following options:
m_p_Fluxmem->setMode(PFFLUX_COPY_LAST_DATA, PF_ON);
m_p_Fluxmem->setMode(PFFLUX_PUSH, PF_ON);

Then I create a number of pfEngine's of type PFENG_USER_FUNCTION.

So, a chain looks something like this:
pfFlux1 -> pfEngine1 -> pfFlux2 -> pfEngine2 -> pfFlux3

And here's the order in which things occur:
1. call getWritableData() on pfFlux1
2. write data, call writeComplete() on pfFlux1
3. pfEngine1 user function processes
4. pfEngine2 user function processes
5. writeComplete() on pfFlux1 returns

My issue here is that I want to keep putting data into pfFlux1, but my
update function that calls writeComplete() get stalled. In the final
application, I will likely have multiple branches to the chain, and I
need to put data into memory at the speed at which the fastest branch
processes.

Is there a way to perhaps fork the writeComplete() so that it doesn't
slow things down? Or can I somehow start a chain with a pfEngine
instead?

Thanks,
Todd

-- 
Todd J. Furlong
MOTEK Motion Technology, Inc.      voice 603.641.1300
360 Commercial St                  fax   603.641.8385
Manchester, NH 03101               web http://www.e-motek.com


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2b29 : Fri Jul 20 2001 - 06:15:14 PDT

This message has been cleansed for anti-spam protection. Replace '++at++' in any mail addresses with the '@' symbol.