Re: pfQuerySys()

New Message Reply Date view Thread view Subject view Author view

Mario Veraart (rioj7++at++fel.tno.nl)
Fri, 10 Jul 1998 17:20:10 +0200 (MET DST)


>
> Hi,
>
> I am using the Vega (Paradigm) API and we are having a little problem.
>
> We are trying to start windows on both graphics pipes on our Onyx. Vega
> will put both windows on the pipe that you are currently running the
> executable.
>
> Vega uses pfQuerySys(PFQSYS_NUM_SCREENS, i) to determine the number of
> pipes on the machine before it will throw a window on the other pipe.
>
> pfQuerySys(PFQSYS_NUM_SCREENS, i) is returning 1 even though our onyx
> has 2 IR pipes.
>
> Has anyone seen this problem before?
>
> Does anyone have some performer code that will open multiple windows on
> a multipipe machine that I could try on our machine?
>
> We have an onyx with the following:
>
> IRIX 6.2
> Performer 2.2
> 2 Infinite Reality Pipes with 2RMs per pipe
>
> Thanks in advance,
>
> Brian Dotson

This sounds like you have a DKO or TKO option in your system to
connect multiple keyboards. Each xdm has one pipe in possession.
You have to switch to single keyboard by changing a configuration file
that starts the xdm on the different pipes.
I can't give you the name of the file but in the docs of the TKO you
can find examples.

You can write the application to open the other window on the other
screen but you will use only one pipe for the rendering. That is at
least what I found when looking at the result frame rate.

Below is a piece of code from a program that remaps the window to a
different screen.

            pfPipe* pipe = pfGetPipe(p);

            // try to allocate on the different screens
            char pipeStr[20];

            if (gNumScreensFound>1)
            {
                sprintf(pipeStr, ":0.%d", gPipeToScreen[p]); // SKO
               // select one of the screens of this xdm
                pipe->setWSConnectionName(pipeStr);
                pipe->setScreen(gPipeToScreen[p]);
            }
            else
            {
                sprintf(pipeStr, ":%d.0", gPipeToScreen[p]); // TKO
               // get the only screen from this xdm
                pipe->setWSConnectionName(pipeStr);
                pipe->setScreen(0);
            }

            pfNotify(PFNFY_ALWAYS, PFNFY_PRINT, "Mapping Pipe %d to
screen \"%s\
"", p, pipeStr);

Mario
=======================================================================
List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
            Submissions: info-performer++at++sgi.com
        Admin. requests: info-performer-request++at++sgi.com


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:57:41 PDT

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