Double buffer handling

Hello? My system is using a double buffering based code and I have to use them. I tested a stand-alone DAQmx program on a double buffering technique, and it works quite fine with my system. Since I am not only writing my code c ++ system for years 1980, I'm not sure how to handle the DAQmx double buffering system.

Here is my old c ++ code that deals with a double buffer code to display a chart.

I've attached these codes and the last of them is DAQmx code and there is error points; //<******************** error="" occurs="">

The rest of them is old c ++ and EvenBank and OddBank represent the double buffer. Their models are

double* EvenBank;

double* OddBank;

and these are handled/initialized this way later

    EvenBank = new double[ iTotalSize ]; //iTotalSize = 7200

    OddBank  = new double[ iTotalSize ];

    int i;
    for( i= 0; i< iTotalSize; i++ )
         EvenBank[ i ] = OddBank[ i ] = 0;

Then the thread function attached here. I have no idea how to assign the acquired Bank and odd sample to display in the chart.

Thanks for help.

1 put on display:

unsigned int ThreadDisplay( LPVOID pParams )
{
    static unsigned long count    = 1;
    static unsigned long traceNum = 1;

    CNatAcqView* ptr = (CNatAcqView*)  pParams;

    if( traceNum %2 )
    {
        traceNum = 1;  //reset counter

        ptr->StartEvenIntScanATD();

        if( ptr->WriteEnable )
            ptr->WriteToDisplayBuffer( FALSE );   // ODD, Calling startScan()
    }
    else
    {
        ptr->StartOddIntScanATD();

        if( ptr->WriteEnable )
            ptr->WriteToDisplayBuffer( TRUE );    // EVEN, Calling startScan()
    }

    ptr->WriteEnable = TRUE;

    Check_Daq( ptr, ptr->iTotalSize ); // wait till end of signal window

    traceNum++;

    Sleep( 50 ); //minimum for checking keys and menu bars

    ptr->PostMessage( WM_DISPLAY_BUFFER, count, (long)0 ); // if done exit ,else restart...

    AfxEndThread( 0 );      

    return 0;
}

2 display data on the screen:

int CNatAcqView::WriteToDisplayBuffer( bool even )
{
    int i,j;

    for( i= 0; i< iChannel_Acq; i++ )  //display buffer depends on IRIS model
    {
        for( j= 0; j< fdat.trace_size; j++)
        {
            if( even )
            {
                if( gd.ch[i].active == 1 )
                    gd.ch[ i ].iatd[ j ] = EvenBank[ i + j*iChannel_Acq ]; //iChannel_Acq = 6
                else
                    gd.ch[i].iatd[j] = 0;
            }
            else
            {
                if( gd.ch[i].active == 1 )
                    gd.ch[ i ].iatd[ j ] = OddBank[ i + j*iChannel_Acq ];
                else
                    gd.ch[i].iatd[j] = 0;
            }
        }
    }

    //PreProcessing
    for ( i= 0; i< MAX_RADARS; i++ )
    {
        //if( i < 4 )  //for BatteryLevel
        //{
            if( processFlag == 1 && gd.ch[i].active == 1 )
               AcqPoll_ProcessSignal( i );
        //}
    }

    for( i= 0; i< iChannel_Acq; i++ )            //MAX_CHANN
    {
        if( gd.ch[i].active == 1 )
        {
            for( j= 0; j< fdat.trace_size; j++ )
                 iAveBuffer[i][j] = iAveBuffer[i][j] + gd.ch[i].iatd[j]; //average calculation, not important
        }
    }

    if( SampleTimeFlag != 1 )
    {
        for( i= 0; i< MAX_RADARS; i++ )
        {
            gd.ch[i].blength    = fdat.trace_size;

            gd.ch[i].sampleTime = .000001 * fdat.period * fdat.its[i]; // display text info on a screen

            if( i >= IRIS_SYSTEM )
                gd.ch[i].sampleTime = fdat.period;
        }
    }
    else  //if( SampleTimeFlag == 1 )
    {
        for( i= 0; i< MAX_RADARS; i++ )
        {
            gd.ch[i].sampleTime = fdat.period;
            gd.ch[i].blength    = fdat.trace_size;
        }
    }   

    return 1;
}

3 Check_Daq:

BOOL Check_Daq( LPVOID pParams, int expect) // int expect is a total size of the sample buffer.
{

    short done;
    unsigned long number = 0;         

    int status;
    status = DAQ_Check( 1, &done, &number );
    CNatAcqView* ptr = (CNatAcqView*)pParams;

    AfxMessageBox("Check_Daq is called", MB_OK, 0);

    ptr->bAbortAcquire = FALSE;
    ptr->bRadarTrigger = TRUE;
    ptr->iTriggerLED   = 1;      //Trigger On

    int i=0;
    while( done != 1 )
    {
        status = DAQ_Check( 1, &done, &number ); 

        ptr->bRadarTrigger = FALSE;

        ptr->uiTriggerCheck++;

        //protect overflow data type
        if( ptr->uiTriggerCheck >= MAX_DMI_COUNT )
            ptr->uiTriggerCheck = 0;

        if( ptr->bAbortAcquire ) //from OnAcquire Mode
            done = 1;           

    }

    ptr->uiTriggerCheck = 0;

    if( number == (unsigned long) expect )
        return TRUE;
    else
    {
        //throw ERROR_DAQ_CHECK;
        return FALSE;
    }

}

4 DAQmx conversion:

//I will comment out Check_Daq() in ThreadDisplay function. Then this whole single function will be called.

unsigned int CollectingSamples(LPVOID pParams)
{
    CNatAcqView* ptr = (CNatAcqView*) pParams;
    int32           error=0;
    char            errBuff[2048]={'\0'};
    double          gainValue = 0.5f;
    uInt32          numChannels;
    uInt32          reading=0;
    static bool32   isDone;
    ptr->totalRead   = 0;
    unsigned long   HalfSize = (unsigned long)ptr->iTotalSize/2;
    double          DataBuffer[1000];
    int32           read;
    //TaskHandle        taskHandle = ptr->taskHandle;
    TaskHandle      taskHandle=0;
    ptr->dataA       =0;

    DAQmxErrChk (DAQmxCreateTask("",&taskHandle));
    DAQmxErrChk (DAQmxCreateAIVoltageChan(taskHandle,"Dev1/ai0:5","",DAQmx_Val_Cfg_Default,-10.0,10.0,DAQmx_Val_Volts,NULL));
    DAQmxErrChk (DAQmxSetAIGain(taskHandle, "Dev1/ai0:5", gainValue));
    // buffer(14400) setting with internal clock("") and continuous sampling(DAQmx_Val_ContSamps), DAQmx does double buffering basically in case of continuous sampling.
    DAQmxErrChk (DAQmxCfgSampClkTiming(taskHandle,"",40000,DAQmx_Val_Rising,DAQmx_Val_ContSamps,14400)); //14400 = iTotalSize x 2; double buffer.
    //DAQmxErrChk (DAQmxSetAIConvTimebaseDiv(taskHandle, (int)iSampInt*10));//sampleTicks*10 was 500  //iSampInt*10
    //DAQmxErrChk (DAQmxSetSampClkTimebaseDiv(taskHandle, (int)iScanInt*10));//GroupTicks*10 was 2000 //iScanInt*10
    //double buffer acquisition; the board transfers data when half its internal buffer is full
    DAQmxErrChk (DAQmxSetAIDataXferReqCond(taskHandle, "Dev1/ai0:5", DAQmx_Val_OnBrdMemMoreThanHalfFull));
    //Overwriting samples in the buffer that you have not yet read.
    DAQmxErrChk (DAQmxSetReadOverWrite(taskHandle, DAQmx_Val_DoNotOverwriteUnreadSamps));
    //Collecting data from buffer
    //DAQmxErrChk (DAQmxRegisterEveryNSamplesEvent(taskHandle,DAQmx_Val_Acquired_Into_Buffer,10,0,AcquireCallBack,NULL)); // call back result

    DAQmxErrChk (DAQmxStartTask(taskHandle));

        while (!isDone)
    {
        ptr->IsTaskDone_ContAcqIntClkDigStartRef(taskHandle, &isDone);
        //DAQmxErrChk( DAQmxIsTaskDone(staskHandle, isDone));

        DAQmxErrChk (DAQmxGetReadAvailSampPerChan(taskHandle,&reading));

        if( reading>0 )
        {
         // Each reading
         DAQmxErrChk (DAQmxGetReadTotalSampPerChanAcquired(taskHandle, &ptr->dataA)); //Accumulated reading

         while(reading > HalfSize ){ //More than a half full
        DAQmxErrChk (DAQmxReadAnalogF64(taskHandle,-1,10.0,DAQmx_Val_GroupByScanNumber,DataBuffer,1000,&read,NULL)); //Read the buffer
        ptr->totalRead+=read;
                                                                                    if( ptr->totalRead == ptr->iTotalSize || ptr->totalRead > ptr->iTotalSize )
        {
            if(ptr->iAvailableSample == 2){
            //ptr->EvenBank=DataBuffer;   //<******************** Error occurs here
                return ptr->iAvailableSample == 1;
                } 

                else if(ptr->iAvailableSample == 1){
                //ptr->OddBank=DataBuffer;    //<******************** Error occurs here, too.
            return ptr->iAvailableSample == 2;
            }

        isDone = 1; //Stop 

           }//End of if( ptr->totalRead == ptr->iTotalSize || ptr->totalRead > ptr->iTotalSize )
    }//End of while(reading > HalfSize )
        }//Enf of if(reading>0)
    }// while (!isDone)

    AfxEndThread( 0 );
    DAQmxErrChk (DAQmxStopTask(taskHandle));
    DAQmxErrChk (DAQmxClearTask(taskHandle));

Error:

    if(error)
        CleanUp (error, taskHandle);

}

OK, I understand why it does not display the right data. The data type of Bank in hand and odd should be short * and AI DAQmx function should be

DAQmxReadBinaryI16, not DAQmxReadAnalogF64. Now it works fine.

So, if anyone of you convert function DAQ DAQmx SCAN_Start, copy DAQmxReadBinaryI16, not DAQmxReadAnalogF64.

Because the return of SCAN_Start data type i16 (integer 16 bit. short *), you must use DAQmxReadBinaryI16.

Otherwise, you will lose many points of data.

Tags: NI Software

Similar Questions

  • Double buffer program is slowing down, help.

    Hello, I have a small program of lines of dance as an old Windows screen saver program, and it seems to slow down after about 30 seconds to a minute. I have 'clear' my buffer by copying a symbol in black screen size of the buffer. If anyone has any ideas on how to make it more efficient and above all to stop the slow down, let me know, thanks.

    // Variables
    var x0:int;
    var y0:int;
    var x1:int;
    var y1:int;
    var x2:int;
    var y2:int;
    var x3:int;
    var y3:int;
    var dx0:int;
    var dy0:int;
    var dx1:int;
    var dy1:int;
    var dx2:int;
    var dy2:int;
    var dx3:int;
    var dy3:int;
    var counter:int = 0;
    var clearBuffer:Buffer = new Buffer();
    var drawing:Shape = new Shape();
    var color1:uint = uint(0xFFFFFF * Math.random());

    // Initialize Line Values
    x0 = int(Math.random() * 320);
    x1 = int(Math.random() * 320);
    y0 = int(Math.random() * 200);
    y1 = int(Math.random() * 200);
    x2 = x0;
    x3 = x1;
    y2 = y0;
    y3 = y1;

    // Initializing Line Velocities
    dx0 = int(Math.random() * 5);
    dx1 = int(Math.random() * 5);
    dy0 = int(Math.random() * 5);
    dy1 = int(Math.random() * 5);
    dx2 = dx0;
    dx3 = dx1;
    dy2 = dy0;
    dy3 = dy1;

    // Double Buffer Setup
    var bitmap:BitmapData = new BitmapData(stage.stageWidth,stage.stageHeight,true,0xff000000);                          
    var buffer:BitmapData = new BitmapData(stage.stageWidth,stage.stageHeight,true,0xff000000);
    var image:Bitmap = new Bitmap(bitmap);
    addChild(image);

    // Listeners
    addEventListener(Event.ENTER_FRAME,onEnterFrame);

    function onEnterFrame(event:Event):void {
         
         // Clear The Sreen
         buffer.draw(clearBuffer);
         
         // Logic
         drawing.graphics.lineStyle(1, color1);
         drawing.graphics.moveTo(x0,y0);
         drawing.graphics.lineTo(x1,y1);
         if ((x0 += dx0) >= 315 || x0 < 5)
              dx0 *= -1;
         if ((y0 += dy0) >= 195 || y0 < 5)
              dy0 *= -1;
         if ((x1 += dx1) >= 315 || x1 < 5)
              dx1 *= -1;
         if ((y1 += dy1) >= 195 || y1 < 5)
              dy1 *= -1;
              
         if (++counter > 50) {
              drawing.graphics.lineStyle(1, 0x000000);
              drawing.graphics.moveTo(x2,y2);
              drawing.graphics.lineTo(x3,y3);
              if ((x2 += dx2) >= 315 || x2 < 5)
                   dx2 *= -1;
              if ((y2 += dy2) >= 195 || y2 < 5)
                   dy2 *= -1;
              if ((x3 += dx3) >= 315 || x3 < 5)
                   dx3 *= -1;
              if ((y3 += dy3) >= 195 || y3 < 5)
                   dy3 *= -1;
         }
         
         if (counter > 250)
              counter = 51;
                   
         // Draw The Screen
         buffer.draw(drawing, drawing.transform.matrix);
         bitmap.draw(buffer);
    }

    P.S. - Is there a way I can post my code in a small box with a scroll bar?

    You get a slow down because you are filling the shape to your drawing with vectors and never cleaning. You need to publish periodically a drawing.graphics.clear () to clear all these vector lines. You can play with it, but as a simple solution, you can replace the line:

    If (counter > 250)

    counter = 51;

    with this:

    If {(counter > 250)
    counter = 51;
    Drawing.Graphics.Clear ();
    Color1 = uint (0xFFFFFF * Math.random ());

    }

  • circular buffer USB

    Hello

    I wonder if it's possible a streaming of data in a memory connected to the port USB 9063 cRIO.

    My application is currently broadcasting data in a circular buffer implemented in the host Pc, using network flow. I need data from 24 channels sampled at 250 Hz for half an hour. This because sometimes the trigger condition is given a web service that is updated every 20 minutes giving the timestamp of the event. So, I use the timestamp to search for data in the buffer and remove it from there.

    This can be done by 9063. I withdraw my request for a host Pc and use the USB memory. Is this possible? I'm looking for an example, but it seems that there are no examples on the web.

    KR

    Davide

    You don't need to remove anything.  Say you name the files "Folder 1" and "file 2"(très imaginatif, je sais...). "»  I would write a sub - VI, perhaps called "Open Double Buffer" that:

    1. Opens the specified file (file 1 or 2 file - you need to keep track of who), using 'Open or create' so it does not matter whether the file exists or not.
    2. File Position value 0.  This effectively "deletes" all the data already contained in the selected file, combining the steps remove old and new of the Open.
    3. Start saving until it's time to buffers to Exchange again.  Close the file and quit.  The appellant then rocker pads and we call again (or you could do this with a reentrant call...

    Bob Schor

  • Create a data streaming from C++ stream and read it in LabView

    Hi all.

    I'm working on a project that is to connect to a tracker of movement and reading data of position and orientation of this in real time. The code to get the data is in c ++, so I decided that the best way to do it would be to create a c++ DLL that contains all the functions necessary to first connect to the device and it reads the data and use the node to call a library function to power the Labview data.

    I have a problem, because, ideally, I would like a continuous flow of data from the code c ++ in Labview, and I don't know how to do this. Put the node function of library call for a while loop seems like an obvious solution, but if I do it this way I'd have to reconnect to the device whenever I get the data, which is quite a bit too slow.

    So my question is, if I created c ++ function that creates a data stream, could I read that in Labview without continually having to call a function? I would rather have only to call a function once, and then read the data stream until a stop command is given.

    I'm using Labview 2010, version 10.0.

    Apologies if the question is badly worded, thank you very much for your help.

    Dave

    dr8086 wrote:

    This method resembles an excellent suggestion, but I have a few questions where I don't think I understood fully.

    I understand the basic principle is to use a call library function node to access a DLL that creates an instance of the device object and passes a pointer too in labview. Then a separate call library function node would pass this pointer to another DLL that could access the device object, update and read the data. This part could be in a while loop, then continue on reading the data until a stop command is given.

    That's all. I'm including some skeleton for example code. I am also including the code because I don't know how you experience multi threading so I show how you can use critical sections to avoid interactions between threads so that they do not lead to questions.

    // exported function to access the devices
    extern "C"  __declspec(dllexport) int __stdcall init(uintptr_t *ptrOut)
    {
        *ptrOut= (uintptr_t)new CDevice();
        return 0;
    }
    
    extern "C"  __declspec(dllexport) int __stdcall get_data(uintptr_t ptr, double vals[], int size)
    {
        return ((CDevice*)ptr)->get_data(vals, size);
    }
    
    extern "C"  __declspec(dllexport) int __stdcall close(uintptr_t ptr, double last_vals[], int size)
    {
        int r= ((CDevice*)ptr)->close();
        ((CDevice*)ptr)->get_data(last_vals, size);
        delete (CDevice*)ptr;
        return r;
    }
    
    // h file
    // Represents a device
    class CDevice
    {
    public:
        virtual ~CDevice();
        int init();
        int get_data(double vals[], int size);
        int close();
    
        // only called by new thread
        int ThreadProc();
    
    private:
        CRITICAL_SECTION    rBufferSafe;    // Needed for thread saftey
        vhtTrackerEmulator *tracker;
        HANDLE              hThread;
        double              buffer[500];
        int                 buffer_used;
        bool                done;       // this HAS to be protected by critical section since 2 threads access it. Use a get/set method with critical sections inside
    }
    
    //cpp file
    
    DWORD WINAPI DeviceProc(LPVOID lpParam)
    {
        ((CDevice*)lpParam)->ThreadProc();      // Call the function to do the work
        return 0;
    }
    
    CDevice::~CDevice()
    {
        DeleteCriticalSection(&rBufferSafe);
    }
    
    int CDevice::init()
    {
        tracker = new vhtTrackerEmulator();
        InitializeCriticalSection(&rBufferSafe);
        buffer_used= 0;
        done= false;
        hThread = CreateThread(NULL, 0, DeviceProc, this, 0, NULL); // this thread will now be saving data to an internal buffer
        return 0;
    }
    
    int CDevice::get_data(double vals[], int size)
    {
        EnterCriticalSection(&rBufferSafe);
        if (vals)   // provides a way to get the current used buffer size
        {
            memcpy(vals, buffer, min(size, buffer_used));
            int len= min(size, buffer_used);
            buffer_used= 0;                 // Whatever wasn't read is erased
        } else  // just return the buffer size
            int len= buffer_used;
        LeaveCriticalSection(&rBufferSafe);
        return len;
    }
    
    int CDevice::close()
    {
        done= true;
        WaitForSingleObject(hThread, INFINITE); // handle timeouts etc.
        delete tracker;
        tracker= NULL;
        return 0;
    }
    
    int CDevice::ThreadProc()
    {
        while (!bdone)
        {
            tracker->update();
            EnterCriticalSection(&rBufferSafe);
            if (buffer_used<500)
                buffer[buffer_used++]= tracker->getRawData(0);
            LeaveCriticalSection(&rBufferSafe);
            Sleep(100);
        }
        return 0;
    }
    

    dr8086 wrote:

    My main concern is that the object can get out of memory or be deallocated since it would not take place to any namespace or whatever it is.

    As you create the object with the new, the object expire not until the dll is unloaded or the process (LabVIEW) closes. If the object will remain valid between condition LabVIEW dll calls not a not unload the dll (who does if the screws are closed). When that happens, I don't know exactly what happens to the active objects (that is, if you forgot to call close), I guess the system recovers the memory, but the device could still be opened.

    What to do to make sure that everything is closed when the dll before I could call unloads close and remove the object is whenever I create a new object in the dll that I add to a list when the dll is unloaded, if the object is still on the list, that I'm deleting it.

    dr8086 wrote:

    I also have a more general question of programming on the purpose of the buffer. The buffer would essentially be a large table of position values, which are stored until they can be read in the rest of the VI?

    Yes, see the code example.

    However, according to the frequency with which you need to collect data from the device you have this buffer at all. That is, if take you a sample on every 100ms, then you can remove all threads and buffer related functions and instead to read data from the read feature itself like this:

    double CDevice::get_data()
    {
        tracker->update();
        return tracker->getRawData(0);
    }
    

    Because you need only a buffer and a separate if thread you collect data at a high frequency and you can not lose any data.

    Matt

  • Traditional DAQ and DAQmx data representation

    Hello

    I use a card PCI-6013-NOR and used DAQ_Op and DAQ_Start to acquire the data of the device (with game 1 win), who have a CCD camera to acquire data.

    I migrated the DAQmx application, it works fine, but the intensity of the curve drawn using data is lower than expected.

    During the migration of the old code, I replaced the logic below DAQ_Op

    /*------------------------------------------------------------------------------------------------*/

    TaskHandle ulTaskHandle = 0;

    DAQmxCreateTask ("", & ulTaskHandle);

    Double dMaxVolt = 5.0;
    Double dMinVolt = - 5.0;

    DAQmxCreateAIVoltageChan (ulTaskHandle, "Dev1/ai0", "", DAQmx_Val_Cfg_Default, dMinVolt, dMaxVolt, DAQmx_Val_Volts, NULL);

    / * This function handles various combinations to select the signal.
    * - Select_Signal (1, ND_PFI_2, ND_IN_CONVERT, ND_HIGH_TO_LOW)
    * - Select_Signal (1, ND_SCANCLK_LINE, ND_SCANCLK, ND_LOW_TO_HIGH)

    */

    RouteSignal();

    DAQmxCfgSampClkTiming (ulTaskHandle, NULL, dSampleRate, DAQmx_Val_Rising, DAQmx_Val_FiniteSamps, ul64SamplePerChan);

    DAQmxStartTask (ulTaskHandle);

    / * Allocation of memory for data acquisition. */
    Double * pDataBuf = new double [ulCount + 1];

    long lSamplesToRead = (long) ulCount;
    long lSampsPerChanRead = 0;

    DAQmxReadAnalogF64 (ulTaskHandle, DAQmx_Val_Auto, DAQmx_Val_WaitInfinitely, DAQmx_Val_GroupByChannel, pDataBuf, lSamplesToRead, & lSampsPerChanRead, NULL);

    If (ulCount! = (unsigned long) lSampsPerChanRead)
    {
    }
    on the other
    {
    for (unsigned long ulIdx = 0; ulIdx)< ulcount;="">
    {

    / * psBuffer is a short table.

    * Here, I'm trying to convert and copy the new buffer (double value)

    * to the old buffer (short values)

    *

    * I guess that old values will be in the millivolts range.

    * To convert the values of v of the buffer in millivolt I am multiplying by 1000

    *

    * I don't know if it is true.

    *(psBuffer+ulIdx) = static_cast((*(pDataBuf+ulIdx) * 1000));
    }
    }

    I'm not sure whether the conversion I did new buffer for old buffer is true. I need to create a DAQmx_Val_FromCustomScale to get the same value DAQ_Op returned?

    Could you find something wrong with the logic? How can I get the same DAQ_Op value returned by the double buffer returned by DAQmxReadAnalogF64() is there any best mechanism available?

    concerning

    Praveen.DA

    The reason for your bug is that you apparently did not understand what does the DAQ_Op function. In help for this, it is clearly stated that the data returned is I16. Your choice of data F64 was an obvious conflict with how you have porgrammed traditional in DAQ board. The Council resolution doesn't really matter. The big difference is set to scale and without scales.

  • HP Compaq DC7800 SFF - no sound from the HP FX380 Video Card connector

    The above machine was working perfectly until I installed a HP FX380 graphics card.

    I wanted to improve graphics performance as it was slow when you use Adobe Photoshop and did not support OpenGL. The resolution of my screen (1920 x 1200) also seems to challenge the on-board graphics chip.

    I bought a HP NVIDIA Quadro FX380 thought (512 MB) graphics card that using a card in a HP computer HP has been a guarantee of success, but it was not to be!

    The FX380 mounting was easy, but there is only one in the DC 7800 PCI-Express slot, so I had to remove the original graphic adapter (a double buffer x 16 Silicon Image AD02-N card). As far as I see it, there is no audio on this map.

    When I rebooted the new graphics card was correctly recognized, and I was able to install the video drivers with no problems. Graphics performance has also been greatly improved, while the memory system is out, and I activated the OpenGL support in Photoshop. So far so good!

    However, I got an error message saying the SounMax (audio drivers) should be reinstalled, and there is no sound other than the default system beep.

    I tried to reinstall the software SoundMax from various sources, including the recovery partition, but I always get the message "that the audio driver files do support not your hardware.

    The search in Windows XP Device Manager and selecting sound, video and game controllers, audio only I see are several pilots 'NVIDIA High Definition Audio. There is no yellow asterisk.

    I spent several hours online agent HP cat, uninstalling and reinstalling the drivers. I even have the officer to take control of the machine for a while, but still have no sound! I also updated the BIOS OF THE v 1.28 system.

    The obvious answer seems to be that I do not have the correct sound card drivers, but nobody knows what they should be. I don't even know if I have a sound card, not more, or if the NVIDIA card has taken up somehow the system sound card?

    Anyone know if there is a problem using the HP FX380 map in the DC 7800 SFF, or am I missing something somewhere?

    Would it not possible/useful to adapt to a sound card in the PCI vacnt slot? If so, any reccomendations?

    Any advice welcome.

    NN

    Hello:

    I can say that your new video card has an HDMI output port because of the new nVidia HD audio, which now takes the place of your integrated audio system. This is why you have no sound (unless you hold on to a TV or something).

    In any case, the solution is simple (I hope).  As you know the dc7800 is a professional PC intended for use as a home theater and at the time of its manufacture, that there is no video input with HDMI output are supported in these offices of class business.

    I hope that when you installed this new HDMI video card, a new audio BIOS setting appeared in your system configuration in the Advanced menu.

    So please go and see if there is an audio setting boarded, that you can change auto to "Enabled". In the affirmative. Press the F10 key there and at the exit of the BIOS, save settings and exit.

    That should allow both audio devices to operate independently.  You've got audio when HDMI cable is not plugged into a TV and you have HDMI audio when HDMI cable is connected to a TV.

    Please let me know if this is the case.

    Paul

  • Status code: internal software error-223091 occurred in the DSA software. Please contact National Instruments support

    Hello

    I work with card 4461.

    When writing the data on the card I get this error

    The channel which has been set up had

    Update rate: 9210

    None of the samples: 87643

    Sample mode: finite samples

    Sync: Synchronization with AI0 even of the same device

    The values lie between 6 V and 1 .2V

    error occurred in the function .

    {Message of error =-223091 = "internal software error occurred in the software DSA. Please contact National Instruments Support.\n\nTask name: Magnet\n\nStatus Code:-223091 "}"

    The Stack Trace:

    «to nNIMSSAIL100.StatusObserverT<><>otNetApi > >.» CheckWithName (StatusObserverT<><>otNetApi > *, tCaseInsensitiveBasicString\\,_STL::allocator\\,nNIDMXS100::tLocaleConsideringWideStringComparitor\\,nNIDMXS100::tLocaleConsideringWideStringCaseForcer>* pName) \r\n

    to nNIMSSAIL100.StatusObserverT<><>otNetApi > >. Check (StatusObserverT<><>otNetApi > *) \r\n

    to nNIMSSAIL100.StatusObserverWrapperT<><>otNetApi > >. Check (StatusObserverWrapperT<><>otNetApi > *) \r\n

    to nNIMSSAIL100.WriteotNetApi >, class nNIMSSAIL100::AnalogWrite, double > (tTask *, Double *, UInt32, UInt32, UInt32, Double, Boolean, Boolean, tScaledDataFormat, StatusObserverT<><>otNetApi > *) \r\n

    to nNINETAI2005100.Write1DotNetApi >, class nNIMSSAIL100::AnalogWrite, double, double, cli::array^ > (task task, Double [] buffer, UInt32 numChannels, UInt32, UInt32 numSamples lines, Double timeout, Boolean autoStart, Boolean interlace) \r\n

    at NationalInstruments.DAQmx.Internal.AnalogSingleChannelWriterImpl.WriteMultiSample (Boolean autoStart, Double [] data) \r\n

    at NationalInstruments.DAQmx.AnalogSingleChannelWriter.WriteMultiSample (Boolean autoStart, Double [] data) \r\n

    Project.Analog1ChannelWriterTask.Write (Double [] data, Boolean AutoStart) in C:\\Project\\AnalogWriterTask.cs:line 446\r\n

    to Project.HardwareIO.WriteAO (Double [] Data, Boolean AutoStart) in C:\\Project\\HardwareIO.cs:line 120\r\n

    at Project.DataAcquisition.RunAcq (C:\\Project\\DataAcquisition.cs:line 182\r\n)

    at Project.DataAcquisition.Run (C:\\Project\\DataAcquisition.cs:line 68\r\n)

    at Project.Program.ThreadFunction (C:\\Project\\Program.cs:line 47\r\n)

    at System.Threading.ThreadHelper.ThreadStart_Context (Object state) \r\n

    at System.Threading.ExecutionContext.Run (ExecutionContext executionContext, ContextCallback callback, Object state) \r\n

    to System.Threading.ThreadHelper.ThreadStart ().

    TargetSite:

    {Void nNIMSSAIL100.StatusObserverT<><>otNetApi > >.} {CheckWithName (nNIMSSAIL100.StatusObserverT<><>otNetApi > *, nNIDMXS100.tCaseInsensitiveBasicString\,_STL::allocator\,nNIDMXS100::tLocaleConsideringWideStringComparitor\, nNIDMXS100::tLocaleConsideringWideStringCaseForcer > *)}

    I am using VS2005 c#

    Please tell me what wroing

    Kind regards

    Alok dandois

    Hey Alok,.

    This error code means that the revision of the map is more recent and not yet supported by the driver.  That the release of new versions of the same map with new features, the ID usually changes requiring a new version of DAQmx.  Try upgrading to the latest version of DAQmx and try again.

    While you're there.  See if you can find the product ID located in Device Manager (if you are using Windows).  Once in the Device Manager, right click on the device and click Properties.  Go to the Details tab, and then copy the entire string that is displayed under "Device Instance Id".  It should look something like PCI\VEN_xxxx & DEV_xxxx...  Paste in a reply in this thread can I be sure of your problem.

    Germano-

  • Error in line 578

    Hey guys

    I have a problem when running my application

    the shown console this error

    slogger2 uninitialized buffer handle. .. /.. lgmon_api.c, logEvent(), around line 578!

    strangely it is running but no idea where this error comes - a week ago, when I changed my app all has been fine... nd now... this an idea what it means?

    It appears to most of the people, and we are ignoring that there is no apparent negative effects.

    I think it's just a bit of rest of debugging code internal support. They have either removed initialization for some record that still occurs in at least one place or they rearranged the code and managed to have it try to connect something before the corresponding initialization has taken place.

  • CASE of Condition causing Plan difference

    Version
    SQL> SELECT * FROM v$version;
    
    BANNER
    --------------------------------------------------------------------------------
    Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
    PL/SQL Release 11.2.0.2.0 - Production
    CORE    11.2.0.2.0      Production
    TNS for Linux: Version 11.2.0.2.0 - Production
    NLSRTL Version 11.2.0.2.0 - Production
    
    5 rows selected.
    Optimizer
    SQL> show parameter optimizer
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    _optimizer_autostats_job             boolean     FALSE
    _optimizer_join_elimination_enabled  boolean     FALSE
    optimizer_capture_sql_plan_baselines boolean     FALSE
    optimizer_dynamic_sampling           integer     2
    optimizer_features_enable            string      11.2.0.2
    optimizer_index_caching              integer     0
    optimizer_index_cost_adj             integer     100
    optimizer_mode                       string      ALL_ROWS
    optimizer_secure_view_merging        boolean     FALSE
    optimizer_use_invisible_indexes      boolean     FALSE
    optimizer_use_pending_statistics     boolean     FALSE
    optimizer_use_sql_plan_baselines     boolean     TRUE
    Problem

    We have a system of providers that built the SQL to be sent to the database. These queries have the following generic structure for a condition in WHERE clause:
    CASE WHEN <condition> THEN <table>.<column> END = '<value>'
    We have noticed different execution plans when the optimizer compares the numbers instead of varchar2. The examples below show that. In our case, this difference is an impact on the execution of a longer query plans effectively doubling buffer gets and leading to the execution times that are 2 to 4 times as worse.

    Query 1
    SQL> SELECT /*+gather_plan_statistics*/ * FROM DUAL WHERE CASE WHEN 1=1 THEN 'X' END = dummy;
    
    D
    -
    X
    
    1 row selected.
    
    SQL> SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY_CURSOR(null,null,'ALLSTATS LAST'));
    
    PLAN_TABLE_OUTPUT
    ----------------------------------------------------------------------------------------------
    SQL_ID  6ghjubgpwpr61, child number 0
    -------------------------------------
    SELECT /*+gather_plan_statistics*/ * FROM DUAL WHERE CASE WHEN 1=1 THEN
    'X' END = dummy
    
    Plan hash value: 272002086
    
    ---------------------------------------------------------------------------------------------
    | Id  | Operation         | Name | Starts | E-Rows | A-Rows |   A-Time   | Buffers | Reads  |
    ---------------------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT  |      |      1 |        |      1 |00:00:00.02 |       2 |      2 |
    |*  1 |  TABLE ACCESS FULL| DUAL |      1 |      1 |      1 |00:00:00.02 |       2 |      2 |
    ---------------------------------------------------------------------------------------------
    
    Predicate Information (identified by operation id):
    ---------------------------------------------------
    
       1 - filter("DUMMY"='X')
    Query 2
    SQL> SELECT /*+gather_plan_statistics*/ * FROM DUAL WHERE CASE WHEN 'A'='A' THEN 'X' END = dummy;
    
    D
    -
    X
    
    1 row selected.
    
    SQL> SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY_CURSOR(null,null,'ALLSTATS LAST'));
    
    PLAN_TABLE_OUTPUT
    --------------------------------------------------------------------------------------------------
    SQL_ID  gcpwzksqr2w9n, child number 0
    -------------------------------------
    SELECT /*+gather_plan_statistics*/ * FROM DUAL WHERE CASE WHEN 'A'='A'
    THEN 'X' END = dummy
    
    Plan hash value: 272002086
    
    ------------------------------------------------------------------------------------
    | Id  | Operation         | Name | Starts | E-Rows | A-Rows |   A-Time   | Buffers |
    ------------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT  |      |      1 |        |      1 |00:00:00.01 |       2 |
    |*  1 |  TABLE ACCESS FULL| DUAL |      1 |      1 |      1 |00:00:00.01 |       2 |
    ------------------------------------------------------------------------------------
    
    Predicate Information (identified by operation id):
    ---------------------------------------------------
    
       1 - filter("DUMMY"=CASE  WHEN ('A'='A') THEN 'X' END )
    To my eyes the status 'A' = 'A' is equivalent to the condition 1 = 1. How did in the case of the comparison digital Oracle allows to eliminate the case expression, but compared to the character he can't?

    Thank you!

    Centinul wrote:
    To my eyes the status 'A' = 'A' is equivalent to the condition 1 = 1.

    Well, question is Oracle looks like 'A' = 'A' as the string comparison. And the result of a string comparison is NLS charging. This is why it can not evaluate CASES at compile time.

    SY.

  • Interpreting the Trace file.

    Hi, I use 10.2.0.4.0 oracle version.

    I have some info to trace file as below, for one of the query. So how should I interpret the trace file? What is the problem in the application and scope of the improvements in the query? Please note that I withdrew the request and plans of the trace file, I've posted only the sections of waiting.
    call     count       cpu    elapsed       disk      query    current        rows
    ------- ------  -------- ---------- ---------- ---------- ----------  ----------
    Parse        1      0.14       0.13          0          0          1           0
    Execute      1      6.63     162.12      33540      72921        383           0
    Fetch    17272    178.89    1933.95     274835    3147603         20      259063
    ------- ------  -------- ---------- ---------- ---------- ----------  ----------
    total    17274    185.66    2096.21     308375    3220524        404      259063
    
    Misses in library cache during parse: 1
    Optimizer mode: CHOOSE
    Parsing user id: 36  
    
    Elapsed times include waiting on following events:
      Event waited on                             Times   Max. Wait  Total Waited
      ----------------------------------------   Waited  ----------  ------------
      control file sequential read                    4        0.00          0.00
      db file sequential read                    302812        0.62       1913.89
      latch: cache buffers chains                     3        0.04          0.04
      direct path write temp                        501        0.01          0.30
      SQL*Net message to client                   17272        0.00          0.04
      db file scattered read                        120        0.02          0.63
      direct path read temp                         608        0.14          1.71
      SQL*Net message from client                 17272       44.81      31865.74
      SQL*Net more data to client                    15        0.00          0.00
      latch: object queue header operation            1        0.00          0.00
      latch: library cache                            3        0.03          0.04
      latch: library cache pin                        1        0.00          0.00
      latch: cache buffer handles                     1        0.00          0.00
    
    
    
    ********************************************************************************
    
    OVERALL TOTALS FOR ALL NON-RECURSIVE STATEMENTS
    
    call     count       cpu    elapsed       disk      query    current        rows
    ------- ------  -------- ---------- ---------- ---------- ----------  ----------
    Parse        1      0.14       0.13          0          0          1           0
    Execute      1      6.63     162.12      33540      72921        383           0
    Fetch    17272    178.89    1933.95     274835    3147603         20      259063
    ------- ------  -------- ---------- ---------- ---------- ----------  ----------
    total    17274    185.66    2096.21     308375    3220524        404      259063
    
    Misses in library cache during parse: 1
    
    Elapsed times include waiting on following events:
      Event waited on                             Times   Max. Wait  Total Waited
      ----------------------------------------   Waited  ----------  ------------
      SQL*Net message to client                   17275        0.00          0.04
      SQL*Net message from client                 17274       75.57      31941.39
      SQL*Net more data from client                   2        0.00          0.01
      db file sequential read                    302812        0.62       1913.89
      control file sequential read                    4        0.00          0.00
      latch: cache buffers chains                     3        0.04          0.04
      direct path write temp                        501        0.01          0.30
      db file scattered read                        120        0.02          0.63
      direct path read temp                         608        0.14          1.71
      SQL*Net more data to client                    15        0.00          0.00
      latch: object queue header operation            1        0.00          0.00
      latch: library cache                            3        0.03          0.04
      latch: library cache pin                        1        0.00          0.00
      latch: cache buffer handles                     1        0.00          0.00
    
    
    OVERALL TOTALS FOR ALL RECURSIVE STATEMENTS
    
    call     count       cpu    elapsed       disk      query    current        rows
    ------- ------  -------- ---------- ---------- ---------- ----------  ----------
    Parse       11      0.02       0.01          0          0          0           0
    Execute    348      0.20       0.17          0          0          1           0
    Fetch      367      0.06       0.37         59       1187          0        3806
    ------- ------  -------- ---------- ---------- ---------- ----------  ----------
    total      726      0.28       0.56         59       1187          1        3806
    
    Misses in library cache during parse: 11
    Misses in library cache during execute: 10
    
    Elapsed times include waiting on following events:
      Event waited on                             Times   Max. Wait  Total Waited
      ----------------------------------------   Waited  ----------  ------------
      db file sequential read                        59        0.01          0.32
    
        1  user  SQL statements in session.
      348  internal SQL statements in session.
      349  SQL statements in session.
    ********************************************************************************

    But rewrite the SQL code will probably be irrelevant.

    If most of the numbers in the file plan and execution of trace is correct, then it is not more time is lost somewhere in the network that you send to 260 000 lines back and forward with a size of 15 lines extraction (the default in sql * more)?

    You must increase the size of mining significantly.

    And you can watch some of the writings of Charles Hooper on the monitoring network:
    http://hoopercharles.WordPress.com/category/network-monitoring/

  • GUI for OEL6 Server Blade

    Hello

    I installed OEL6 on VM to the blade server. We use Citrix for virtualization. Problem is that since the installation is done on the server without any VGA monitor card attached so Linux got installed without GUI. Now I need to install the Oracle database on this virtual machine. I believe that X-Window is necessary at least. I installed X Windows System and the Gnome desktop environment. Now when I run gdmsetup it does not work. I installed tigervnc on the server and updated the iptables for also made of changes in the gdm configuration file, but when I try to connect from my computer Windows XP using Tightvncviewer error, it throws firewall rules. "Unable to RRs data socket. My windows Firewall is disabled. I disabled the firewall and SELinux on the server, but that did not help either.

    I just need to be able to access the linux VM since my machine windows in graphical mode. I, therefore, ask you to help me set up.

    Note: The startx command server throws this error.
    Build Date: 07 March 2012  04:10:46PM
    Build ID: xorg-x11-server 1.10.4-6.el6_2.3 
    Current version of pixman: 0.18.4
    Before reporting problems, check https://www.redhat.com/apps/support/
    to make sure that you have the latest version.
    Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    (==) Log file: "/var/log/Xorg.0.log", Time: Fri Jun  1 23:42:07 2012
    (==) Using default built-in configuration (21 lines)
    (EE) open /dev/fb0: No such device
    (EE) No devices detected.
    
    Fatal server error:
    no screens found
    
    Please consult the Red Hat, Inc. support 
     at https://www.redhat.com/apps/support/
     for help. 
    Please also check the log file at "/var/log/Xorg.0.log" for additional information.
    
    giving up.
    xinit:  No such file or directory (errno 2):  unable to connect to X server
    xinit:  No such process (errno 3):  Server error.
    Xorg.0.log file contains the following information
    [ 33282.906]
    X.Org X Server 1.10.4
    Release Date: 2011-08-19
    [ 33282.906] X Protocol Version 11, Revision 0
    [ 33282.907] Build Operating System: ca-build44 2.6.31.5-127.fc12.x86_64
    [ 33282.907] Current Operating System: Linux aud-devdbs-01.adcci.gov.ae 2.6.32-220.el6.x86_64 #1 SMP Wed Dec 7 10:41:06 EST 2011 x86_64
    [ 33282.907] Kernel command line: ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD console=hvc0  KEYTABLE=us rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 rhgb crashkernel=129M@0M quiet rd_LVM_LV=VolGroup/lv_root rd_NO_DM  graphical utf8
    [ 33282.907] Build Date: 07 March 2012  04:10:46PM
    [ 33282.907] Build ID: xorg-x11-server 1.10.4-6.el6_2.3
    [ 33282.907] Current version of pixman: 0.18.4
    [ 33282.907]    Before reporting problems, check https://www.redhat.com/apps/support/
     to make sure that you have the latest version.
    [ 33282.907] Markers: (--) probed, (**) from config file, (==) default setting,
     (++) from command line, (!!) notice, (II) informational,
     (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    [ 33282.908] (==) Log file: "/var/log/Xorg.0.log", Time: Fri Jun  1 23:42:07 2012
    [ 33282.908] (II) Loader magic: 0x7d6d20
    "Xorg.0.log" 146L, 7594C
    [ 33282.908] (II) Loader magic: 0x7d6d20
    [ 33282.908] (II) Module ABI versions:
    [ 33282.908]    X.Org ANSI C Emulation: 0.4
    [ 33282.908]    X.Org Video Driver: 10.0
    [ 33282.908]    X.Org XInput driver : 12.2
    [ 33282.908]    X.Org Server Extension : 5.0
    [ 33282.909] (==) Using default built-in configuration (21 lines)
    [ 33282.909] (==) --- Start of built-in configuration ---
    [ 33282.909]    Section "Device"
    [ 33282.909] Identifier      "Builtin Default vesa Device 0"
    [ 33282.909] Driver  "vesa"
    [ 33282.909]    EndSection
    [ 33282.909]    Section "Screen"
    [ 33282.909] Identifier      "Builtin Default vesa Screen 0"
    [ 33282.909] Device  "Builtin Default vesa Device 0"
    [ 33282.909]    EndSection
    [ 33282.909]    Section "Device"
    [ 33282.909] Identifier      "Builtin Default fbdev Device 0"
    [ 33282.909] Driver  "fbdev"
    [ 33282.909]    EndSection
    [ 33282.909]    Section "Screen"
    [ 33282.909] Identifier      "Builtin Default fbdev Screen 0"
    [ 33282.909] Device  "Builtin Default fbdev Device 0"
    [ 33282.909] Device  "Builtin Default fbdev Device 0"
    [ 33282.909]    EndSection
    [ 33282.909]    Section "ServerLayout"
    [ 33282.909] Identifier      "Builtin Default Layout"
    [ 33282.910] Screen  "Builtin Default vesa Screen 0"
    [ 33282.910] Screen  "Builtin Default fbdev Screen 0"
    [ 33282.910]    EndSection
    [ 33282.910] (==) --- End of built-in configuration ---
    [ 33282.910] (==) ServerLayout "Builtin Default Layout"
    [ 33282.910] (**) |-->Screen "Builtin Default vesa Screen 0" (0)
    [ 33282.910] (**) |   |-->Monitor "<default monitor>"
    [ 33282.910] (**) |   |-->Device "Builtin Default vesa Device 0"
    [ 33282.910] (==) No monitor specified for screen "Builtin Default vesa Screen 0".
     Using a default monitor configuration.
    [ 33282.911] (**) |-->Screen "Builtin Default fbdev Screen 0" (1)
    [ 33282.911] (**) |   |-->Monitor "<default monitor>"
    [ 33282.911] (**) |   |-->Device "Builtin Default fbdev Device 0"
    [ 33282.911] (==) No monitor specified for screen "Builtin Default fbdev Screen 0".
     Using a default monitor configuration.
    [ 33282.911] (==) Automatically adding devices
    [ 33282.911] (==) Automatically enabling devices
    [ 33282.911] (==) FontPath set to:
     catalogue:/etc/X11/fontpath.d,
     built-ins
    [ 33282.911] (==) ModulePath set to "/usr/lib64/xorg/modules"
    [ 33282.911] (II) The server relies on HAL to provide the list of input devices.
     If no devices become available, reconfigure HAL or disable AutoAddDevices.
    [ 33282.911] (II) LoadModule: "extmod"
    [ 33282.912] (II) Loading /usr/lib64/xorg/modules/extensions/libextmod.so
    [ 33282.914] (II) Module extmod: vendor="X.Org Foundation"
    [ 33282.914]    compiled for 1.10.4, module version = 1.0.0
    [ 33282.914]    Module class: X.Org Server Extension
    [ 33282.914]    ABI class: X.Org Server Extension, version 5.0
    [ 33282.914] (II) Loading extension SELinux
    [ 33282.914] (II) Loading extension MIT-SCREEN-SAVER
    [ 33282.914] (II) Loading extension XFree86-VidModeExtension
    [ 33282.914] (II) Loading extension XFree86-DGA
    [ 33282.914] (II) Loading extension DPMS
    [ 33282.914] (II) Loading extension XVideo
    [ 33282.914] (II) Loading extension XVideo-MotionCompensation
    [ 33282.914] (II) Loading extension X-Resource
    [ 33282.914] (II) LoadModule: "dbe"
    [ 33282.915] (II) Loading /usr/lib64/xorg/modules/extensions/libdbe.so
    [ 33282.915] (II) Module dbe: vendor="X.Org Foundation"
    [ 33282.915]    compiled for 1.10.4, module version = 1.0.0
    [ 33282.915]    Module class: X.Org Server Extension
    [ 33282.915]    ABI class: X.Org Server Extension, version 5.0
    [ 33282.915] (II) Loading extension DOUBLE-BUFFER
    [ 33282.915] (II) LoadModule: "glx"
    [ 33282.915] (II) Loading /usr/lib64/xorg/modules/extensions/libglx.so
    [ 33282.916] (II) Module glx: vendor="X.Org Foundation"
    [ 33282.916]    compiled for 1.10.4, module version = 1.0.0
    [ 33282.916]    ABI class: X.Org Server Extension, version 5.0
    [ 33282.916] (==) AIGLX enabled
    [ 33282.916] (II) Loading extension GLX
    [ 33282.916] (II) LoadModule: "record"
    [ 33282.917] (II) Loading /usr/lib64/xorg/modules/extensions/librecord.so
    [ 33282.917] (II) Module record: vendor="X.Org Foundation"
    [ 33282.917]    compiled for 1.10.4, module version = 1.13.0
    [ 33282.917]    Module class: X.Org Server Extension
    [ 33282.917]    ABI class: X.Org Server Extension, version 5.0
    [ 33282.917] (II) Loading extension RECORD
    [ 33282.917] (II) LoadModule: "dri"
    [ 33282.918] (II) Loading /usr/lib64/xorg/modules/extensions/libdri.so
    [ 33282.918] (II) Module dri: vendor="X.Org Foundation"
    [ 33282.919]    compiled for 1.10.4, module version = 1.0.0
    [ 33282.919]    ABI class: X.Org Server Extension, version 5.0
    [ 33282.919] (II) Loading extension XFree86-DRI
    [ 33282.919] (II) LoadModule: "dri2"
    [ 33282.919] (II) Loading /usr/lib64/xorg/modules/extensions/libdri2.so
    [ 33282.919] (II) Module dri2: vendor="X.Org Foundation"
    [ 33282.919]    compiled for 1.10.4, module version = 1.2.0
    [ 33282.919]    ABI class: X.Org Server Extension, version 5.0
    [ 33282.920] (II) Loading extension DRI2
    [ 33282.920] (II) LoadModule: "vesa"
    [ 33282.920] (II) Loading /usr/lib64/xorg/modules/drivers/vesa_drv.so
    [ 33282.921] (II) Module vesa: vendor="X.Org Foundation"
    [ 33282.921]    compiled for 1.10.4, module version = 2.3.0
    [ 33282.921]    Module class: X.Org Video Driver
    [ 33282.921]    ABI class: X.Org Video Driver, version 10.0
    [ 33282.921] (II) LoadModule: "fbdev"
    [ 33282.922] (II) Loading /usr/lib64/xorg/modules/drivers/fbdev_drv.so
    [ 33282.922] (II) Module fbdev: vendor="X.Org Foundation"
    [ 33282.922]    compiled for 1.10.4, module version = 0.4.2
    [ 33282.922]    ABI class: X.Org Video Driver, version 10.0
    [ 33282.922] (II) VESA: driver for VESA chipsets: vesa
    [ 33282.922] (II) FBDEV: driver for framebuffer: fbdev
    [ 33282.922] (--) using VT number 7
    
    [ 33282.923] (WW) Falling back to old probe method for vesa
    [ 33282.923] (WW) Falling back to old probe method for fbdev
    [ 33282.923] (II) Loading sub module "fbdevhw"
    [ 33282.924] (II) LoadModule: "fbdevhw"
    [ 33282.925] (II) Loading /usr/lib64/xorg/modules/libfbdevhw.so
    [ 33282.925] (II) Module fbdevhw: vendor="X.Org Foundation"
    [ 33282.925]    compiled for 1.10.4, module version = 0.0.2
    [ 33282.925]    ABI class: X.Org Video Driver, version 10.0
    [ 33282.932] (EE) open /dev/fb0: No such device
    [ 33282.932] (EE) No devices detected.
    [ 33282.932]
    Fatal server error:
    [ 33282.932] no screens found
    [ 33282.932]
    Please consult the Red Hat, Inc. support
     at https://www.redhat.com/apps/support/
     for help.
    [ 33282.932] Please also check the log file at "/var/log/Xorg.0.log" for additional information.
    I'm sorry if you find my silly post since I'm new to Linux and still learning.

    Published by: 938187 on June 1, 2012 12:49

    Published by: 938187 on June 1, 2012 12:56

    Maybe you try more. What happens if you use ' xclock - norender "?

  • Slight skip FLV... Any help?

    Hey guys,.

    I'm working on a project that can be found here:

    http://clients.light-power.com/RPI_flash/production

    the problem is, there is a slight hiccup in the first 5 seconds approximately. This does not happen always, but especially in IE which is weird. Here is the code I use to load the netstream:



    any thoughts?

    Maybe the initial report of the buffer we too small, so the hiccups? Perhaps impliment a stratergy double buffer as shown here:

    http://www.Adobe.com/devnet/flashmediaserver/articles/fms_dual_buffering.html

    Refers to the SGF, it should work the same for your application.

    K.

  • Handling Nullable Double

    Hi guys,.

    In my application, I have a table of values double at least 500. Get the values of the server through the web service, memory store and persistence store.

    The double stored values can be null.

    My question is how would store these values that I can't use double because it does not support null. Should I go with Double or convert it to a string and store the values into a String? Just keep in mind that I compare this values some evoke as well. It is not only once read only data.

    This may seem like a really easy question for most of you guys, but due to the limitation of memory and processor, I won't do this bad thing.

    No idea on the Nullable object management (I mean int, double, long) would be highly appreciated.

    Thank you

    Nitin

    "I can't use double because it does not support null.

    What value

    Double.NaN

    You can set the double value to that in your application under when it should be null and have your treatment treat this as if the value is null.

    "Should I go with Double or convert in String '

    Double would be better than the chain in my opinion.  I consider using Group objects when you store these persistent store to reduce the overhead object handle.

    However, I would recommend that you use an array of doubles, with Double.NaN to indicate a null value.

  • handle double click on a table row

    Hi all

    In the link below

    http://www.Oracle.com/technetwork/developer-tools/ADF/learnmore/56-handle-DoubleClick-in-table-170924.PDF

    Popup is implemented

    < af:table value = "#{bindings.allEmployees.collectionModel} '"

    selectionListener ="

    "#{bindings.allEmployees.collectionModel.makeCurrent}".

    < / af:column >

    ...

    < af:clientListener method = "handleTableDoubleClick".

    Type = "dblClick" / >

    < af:serverListener type = "TableDoubleClickEvent".

    Method = "#{empbean.handleTableDoubleClick}" / >

    < / af:table >

    < af:popup id = "p1" binding = "#{allEmployeesBean.editEmployees} '"

    contentDelivery = "lazyUncached" >

    "< af:dialog id ="d2"type ="none"ITRE ="... "resize ="on">

    < af:panelFormLayout id = "pfl1" >

    < af:selectOneChoice... >

    ...

    < / af:selectOneChoice >

    < af:inputText value =... >

    ...

    < / af:inputText >

    ...

    < / af:panelFormLayout >

    < / af:dialog >

    < / af:popup >

    < af:resource type = "javascript" >

    function handleTableDoubleClick (evt) {}

    var table = evt.getSource ();

    AdfCustomEvent.queue (table, "TableDoubleClickEvent", (), true);

    evt. Cancel();

    }

    < / af:resource >

    {} public void handleTableDoubleClick (EC ClientEvent)

    Popup RichPopup = this.getEditEmployees ();

    no indication means that popup is launched in the

    Center of the page

    RichPopup.PopupHints ph = new RichPopup.PopupHints ();

    Popup.Show (pH);

    }

    {} public void onSubmitPopup (ActionEvent actionEvent)

    Popup RichPopup = this.getEditEmployees ();

    Popup.Hide ();

    refresh the table

    AdfFacesContext adfctx = AdfFacesContext.getCurrentInstance ();

    adfctx.addPartialTarget (getEmployeesTable ());

    }

    {} public void onCancel (ActionEvent actionEvent)

    Undo changes

    Table richeTableau = this.getEmployeesTable ();

    Model CollectionModel = table.getValue ((CollectionModel));

    JUCtrlHierBinding = treeBinding

    Model.getWrappedData ((JUCtrlHierBinding));

    Iterator = DCIteratorBinding

    treeBinding.getDCIteratorBinding ();

    Line rw = iterator.getCurrentRow ();

    RW. Refresh (Row.REFRESH_UNDO_CHANGES);

    Popup RichPopup = this.getEditEmployees ();

    Popup.Hide ();

    }

    For my use case.

    I want to execute a function on double click.

    From now on, I am able to run it on single click inside makeCurrent.

    < af:table value = "#{bindings.allEmployees.collectionModel} '"

    selectionListener ="

    #{bindings.allEmployees.collectionModel.makeCurrent} ">"

    {} public void makeCurrent (SelectionEvent selectionEvent)

    Table richeTableau = (RichTable) selectionEvent.getSource ();

    Object selectedRowData = table.getSelectedRowData ();

    SomeBean rowdata = selectedRowData (SomeBean);

    }

    {} public void handleTableDoubleClick (EC ClientEvent)

    I want to make the features inside makeCurrent here

    }

    User is simple java.

    Javadoc for ClientEvent tells you that you get the component that has been the source of the event by (not with getSource() as I told you last time of memory)

    {} public void handleTableDoubleClick (EC ClientEvent)

    Object obj = ce.getComponent ();

    UIComponent ui = (UIComponent) obj;

    UIComponent component = ui.getParent ();

    //...

    }

    If you're lucky, the user interface component that you get from the event of the customer's table (I can't check because I'm not in front of the pc).

    Timo

  • Don't double-click stills to obtain handles to resize the.  Before Pu...

    Able to do this at one time was given.  JPEG in the program monitor and double-click would give me the sizing handles.

    Make sure they are on the top track otherwise

    Select in the timeline panel and highlight the word Motion in the effect options.

Maybe you are looking for

  • Hard drive may not...

    I have a HP Pavilion dm4-1265dx that Windows 7 running. I bought this laptop in January 2011. I like much this laptop. For several months he did turn more slowly than usual and I had the Geek Squad run test to see if I have a virus or hardware proble

  • Why my screen has turned 90 degrees? 4th of July aid!

    My screen has rotated 90 degrees and is on the side. That's happened? Thank you

  • Windows xp repair disc

    I have an old laptop IBM Thinkpad A22m, he had originally put win2k upgraded to XP.  The HARD drive started clicking on this I tried the image of the drive to mount on a new hard drive.  I only got a part of the image before the HARD drive became a p

  • Building with compile.exe made inconsistent project CVI

    Hi all I have to build CVI projects using the command-line compile.exe. It works well, except that after compiling when I open the project with LabWindows/CVI, files (.h, .c, .uir...) are not sorted by category more (source files, Include files, User

  • Cannot read a CD or CD - RW

    I can't get my computer to read a new CD or a CD - RW to copy the item from my computer to a CD