2's comp binary Exponent/Mantissa

How do I handle a 64 bit word where the exponent is at the beginning of the Binary?
I have 4 - 16 bit words that comprise a GPS Time stamp.
The format is as follows
Binary Format: SEEEEEEEEmmmmmmm....m
S: sign
E: 8 bit exponent
m: 55 bit mantissa
Exponent signal type:
Excess 128
MSB 2^7 
LSB 2^0
Resolution 1
Mantissa signal type:
Unsigned
MSB 2^-2
LSB 2^-56
Resolution 1.3878E-17
Any ideas out there?

TonP wrote: Hello jdam, this looks like a IEEE 64-bit binary.
No, DBL has 11 bits in the exponent, not just 8. (SGL has an 8 bit exponent, but is only 32 bits long).
IEEE_floating-point_standard
LabVIEW Data Storage
It should not be too hard to implement this conversion using some masking, shifting and bit twiddling. Unfortunately, you loose 3 bits worth of resolution in the mantissa going to DBL, so you would need to go to EXT.
LabVIEW Champion . Do more with less code and in less time .

Similar Messages

  • Modbus TCP/IP Help

    Hello Labviewers,
    So I just hooked up a couple of Honeywell UDA2182 controllers to my computer using an ethernet connection.  I've established communications using modbus (specifically the Datalogging and Supervisory Control module's Modbus I/O server option) and I can tell that readings are coming through to the computer.  
    My problem is that it's all in some weird alien langauge.  I can't tell which parameters I'm viewing data for, and the data that my computer is recieving are crazy huge numbers that don't relate to anything.  My guess is that I'm supposed to somehow convert these numbers but I'm not sure how to go about it.
    Thanks for any and all help/advice,
    Mike
    Solved!
    Go to Solution.

    Hi Everyone!
    Thanks so much for the help thus far.  When I first hooked up the PLC I was indeed hoping for and expecting simple, easy to understand human readable numbers like 7.07 or 13.72.  After reading through everyone's replies this morning, I have spent the better part of the day reading up on Modbus and going back through the manual that came with the PLC.  Things are starting to make sense a little more but I still need any help you might offer.
    I've figured out that I want to read registers (decimal addresses) 30001, 30003, 30005, and 30007.  I should be able to communicate with these registers via Modbus function code 04, although, it is unclear as to whether I need to specify this function code seeing as how I'm using a Modbus I/O server in continuous operation (rather than sending one request and receiving one response at a time).  These 4 registers are all classifies as type = float and I see in my manual that is says "floating point values require two consecutive registers".  I am now assuming that to accurately read the data associated with register 30001, I will need to read and convert data from 30001 and 30002.
    Further, it appears to me that Labview wishes to represent these register addresses with an extra 0, making 30001 -> 300001?  Earlier this morning, using the DSC module's Modbus I/O server I was able to monitor register 300001 in the Distributed System Manager.  The values reported to me were as follows (can choose any representation): 16,609(decimal); 1.6609000e+04(scientific); 40E1(hex); 40340(octal); and 100000011100001(binary).  I was expecting a value of 7.07 (pH units) but as this is only the single register 300001 perhaps these values are only half of the human readable answer.  
    According to my controller's manual the default setting for communications is Word Swap = yes, or Big Endian, byte order 4,3,2,1.  However, this can be changed on the controller should I need to set this parameter to Little Endian.  There is also a section in the manual regarding IEEE 32-bit floating point stuff where a formula is given for calculating the floating point number from a 23 bit signed binary with 8 bit biased binary exponent.  I will admit that this formula makes no sense but I'm willing to give it a shot if needs be.  The crazy terminology here (mantissa, Endian, etc.) has really been difficult to assimilate.  
    My goal now is to try and read registers 300001 and 300002 and somehow combine the two values to produce a final human readable number?  Does it seem like I'm on the right track?  Does anyone have any advice as to how to combine these two register values?  Thanks again.  I'll report back soon.
    -Mike

  • Do numerical indicators display extended precision floats correctly?

    I'm using windows XP sp2 on a new computer with a new intel processor, nothing weird. I'm displaying an extended precision floating point number using a numeric indicator that is set to display an extended data type with thirty digits of precision. I expect to see at least 19 or 20 significant digits out of my extended precision float, but the numeric indicator only ever displays 17 significant digits before going to a trail of zeros. Does the display routine that converts the float to a display string use double precision or what?
    global variables make robots angry

    Yes, I understand what you are saying and you are completely correct. The problem I have is not that I expect a mathematically perfect representation of a number, but rather that LabVIEW calculates and produces an 80-bit extended precision number on my computer and then appears to convert it to a 64-bit representation of that number before displaying it!
    If you convert the extended precision value into an unflattened string in order to attempt to access the binary representation of the data, you’ll find that it is represented by 80-bits. This is a 64-bit fraction plus a 15-bit exponent plus one bit for the sign. Delightfully, the flatten to string function appears to scramble the bits into “noncontiguous” pieces, so about all I can tell for certain is that we have, as expected, an 80-bit extended precision number in memory. The documentation for the other number-to-Boolean array and bit manipulation functions I looked at (even the exponent-mantissa function) all claim to only be able to handle a maximum input of a 64-bit number (double precision float max) -correct me if I’m wrong on this one, because I’d really like to be able to see the contiguous binary representation of 80-bit extended floats.
    It turns out though that what you said about not being able to tell whether we have twenty digits of precision without bit fiddling is not true at all. If you look at the program I wrote, you can prove with simple addition and subtraction that beyond the shadow of a doubt the extended numbers are being stored and calculated with twenty digits of precision on my computer yet being displayed with less precision.
    As you can plainly see in the previous example I sent:
    A =          0.1111111111
    B =         0.00000000001111111111
    A+B=C= 0.11111111111111111111
    We know that
    C-A=B
    The actual answer we get is
    C-A=0.00000000001111111110887672
    Instead of the unattainable ideal of
    C-A=0.00000000001111111111
    The first nineteen digits of the calculated answer are exactly correct. The remainder of the actual answer is equal to 88.7672% of the remainder of the perfect answer, so we effectively have 19.887672 digits of accuracy.
    That all sounds well and good until you realize that no individual number displayed on the front panel seems to be displayed with more than 16-17 significant digits of accuracy.
    As you see below, the number displayed for the value of A+B was definitely not as close to being the right answer as the number LabVIEW stores internally in memory.
    A+B=0.11111111111111111111 (the mathematically ideal result)
    A+B=0.111111111111111105     (what LabVIEW displays as its result)
    We know darned well that if the final answer of A+B-A was accurate to twenty digits, then the intermediate step of A-B did not have a huge error in the seventeenth or eighteenth digit! The value being displayed by LabVIEW is not close to being the value in the LabVIEW variable because if it were then the result of the subtract operation would be drastically different!
    0.11111111111111110500       (this is what LabVIEW shows as A+B)  
    0.11111111110000000000       (this is what we entered and what LabVIEW shows for A)
    0.00000000001111110500    (this is the best we can expect for A+B-A)
    0.00000000001111111110887672 this is what LabVIEW manages to calculate.
    The final number LabVIEW calculates magically has extra accuracy conjured back into it somehow! It’s more than 1000 times more accurate than a perfect calculation using the corrupted value of A+B that the display shows us – the three extra digits give us three orders of magnitude better resolution than should be possible unless LabVIEW is displaying a less accurate version of A+B than is actually being used!
    This would be like making a huge mistake at the beginning of a math problem, and then making a huge mistake at the end and having them cancel each other out. Except imagine getting that lucky on every answer on every question. No matter what numbers I plug into my LabVIEW program, the intermediate step of A+B has only about 16-17 digits of accuracy, but miraculously the final step of A+B-A will have 19-20 digits of accuracy. The final box at the bottom of the program shows why.
    If you convert the numbers to double and use doubles to calculate the final answer, you only get 16-17 digits of accuracy. That’s no surprise because 16 digits of accuracy is about as good as you’re gonna do with a 64-bit floating point representation. So it’s no wonder all the extended numbers I display appear to only have the same accuracy as a 64-bit representation because the display routine is using double precision numbers, not extended precision.
    This is not cool at all. The indicator is labeled as being able to accept an extended precision number and it allows the user to crank out a ridiculous number of significant digits. There is no little red dot on the input wire telling me, ‘hey, I’m converting to a less accurate representation here, ok!’ Instead, the icon shows me ‘EXT’ for ‘Hey, I’m set to extended precision!’
    The irony is that the documentation for the addition function indicates that it converts input to double. It obviously can handle extended.
    I’ve included a modified version of the vi for you to tinker with. Enter some different numbers on the front panel and see what I mean.
    Regardless of all this jazz, if someone knows the real scoop on the original question, please end our suffering: Can LabVIEW display extended floating point numbers properly, or is it converting to double precision somewhere before numerals get written to the front panel indicator?
    Message Edited by Root Canal on 06-09-2008 07:16 PM
    global variables make robots angry
    Attachments:
    numerical display maxes out at double precision 21.vi ‏17 KB

  • Integer and fractional part of the number

    Hello everybody,
    I want to divide the floating point number to 2 integer words, first will receive the interger part of number, and the second will receive the fractional part of the number.
    For example: I have number 751.98 in DBL, then I create two integer fields: first has value 751, second has value 98.
    I have tried simple conversion from DBL to I16, but it always rounded me to higher interger. I don't want to round it. And I just don't know how to transform the fractional part to integer. Are there any specialized functions for this? Maybe should I use log10 or similar?
    TIA,
    Jacek.

    The place to start with this problem is the IEEE-754 numerical
    representations:
    32 bit floating point is internally:
    highest order bit is the sign bit.
    the next 8 bits are the exponent bits
    the last 23 bits are the mantissa bits
    the mantissas and exponents are binary.
    the mantissa value in a 1.22 fixed point binary number, i.e. the most
    significant binary bit is equal to 1, the next most is equal to 1/2,
    the next most is equal to 1/4, etc., etc.
    The exponent part can go between 2^-127 and 2^128
    You should be able to cast your 32 bit float to a 32 bit unsigned
    integer, separate it into sign, mantissa and exponent parts, use the
    exponent to rotate left or right your mantissa decimal point by the
    exponent value and then separate the whole part from the fractional
    part and then put each into the I16's or U16's as you want.
    Douglas De Clue
    LabVIEW programmer
    [email protected]
    [email protected] (Michael Ross) wrote in message news:...
    > This problem needs some limits. Like: only return the decimal portion
    > out to 6 places.
    >
    > First run the number through Remainder and Quotient (divisor of 1).
    >
    > 751.98743674645641000000 gets remainder of
    >
    > 0.98743674645641021900
    >
    > "floor" is 751
    >
    > Take the remainder and send through Decimal to Fractional String (this
    > is where you set your number of decimal places [default is 6]).
    >
    > returns 0.987437
    >
    > Then use String Subset and set it to an offset of 2 (cleans off the
    > leading zero and decimal point) with the "length" input left at the
    > default of "rest" (of string).
    >
    > 987437 (in string form)
    >
    > Now use String to Decimal Number
    >
    > returns 987437 (as a decimal number)
    > ====================================
    > I think if you don't limit the number of places it is ugly. It is
    > ugly going from numbers to strings and then back. But all numbers is a
    > bad thing.
    >
    > The alogirithm for finding the answer mathematically is nasty.
    > Especially without a limit on decimal places. You have to figure out
    > the number of decimal places and multiply by the inverse of the last
    > decimal place. Sounds easy.
    > =============================
    > Try this: New number: 751.98652
    >
    > Truncate out the remainder (Remainder and Quotient (divisor of 1)):
    >
    > 751.98652 ---> 0.98652
    >
    > Mult by 10 ----> 9.8652
    >
    > Take the floor (9) and divide by 10 ----> 0.9
    >
    > subtract the new number from the old. Is the answer non-zero? Not,
    > then keep on
    >
    > 0.98652 - 0.9 = .08652 which not equal to 0
    >
    > If it is zero, the floor is the answer.
    >
    > Continue - Not:
    >
    > This time multiply by 100 ----> 98.652
    >
    > floor is 98, divide by 100 ----> 0.98
    >
    > Subtract 0.98 from 0.98652 = .00652 still non zero.
    >
    > Keep on. 1,000, 10,000...When you get to 100,000
    >
    > 0.98652 x 100,000 = 98652.00
    >
    > Get the floor
    >
    > divide the floor by 100,000 to get the original number (remainder is
    > now 0.000), compare to original remainder
    >
    > 0.98652 - 0.98652 = 0. Yay.
    >
    > Take the 98652 and go with it. The last place was the one hundred
    > thousandth.
    >
    > I can't take credit for the last, I had uglier stuff going on. I did
    > do the string thing.
    >
    > I swear this is just like some sorry homework problem.
    >
    > Mike

  • C/COBOL interoperability

    Hello all,
    I'm currently looking into possibilities of combining COBOL and C code in a project.
    Services are written in COBOL and buffer type in use is FML32 which is converted to/from VIEW32 by means of FVFTOS32/FVSTOF32 calls from COBOL code. This works fairly well.
    However, I'm currently looking into using a C "hook" that the COBOL code would call in order to deal with a few things that are difficult to do from COBOL (checking or adding specific things in the FML32 buffer that may not fit in the view). While I'm working with the FML buffer, I thought it might be a good idea to actually do the buffer conversion from the C code. But it seems to me that FVSTOF32 and Fvstof32() differs somewhat.
    If I supply the FML buffer and the cobol view record to my C function and call Fvstof32(), all dec_t fields seem to turn into 0.0. Strings seem to work OK, though.
    Is this to be expected? Are there fundamental differences between FVSTOF32 and Fvstof32(), or is it the COBOL record / C structure that are different, especially with regards to the dec_t type?
    Any input on this welcome,
    /Per
    Per Lindstrom R2Meton AB, SWEDEN

    The advantage of using decimal is that addition, subtraction, and
    multiplcation by an integer using decimal fractions produces exact results
    and is not subject to slight rounding errors that can sometimes occur when
    using doubles.
    Another advantage is that the Tuxedo decimal data type can represent larger
    integers exactly than the double or long datatypes can.
    The Tuxedo decimal data type allows up to 16 base-100 digits in the
    mantissa, which is equivalent to 32 base-10 digits for even exponents of 10
    or 31 base-10 digits for odd exponents of 10. Integers up to
    99,999,999,999,999,999,999,999,999,999,999 can be represented exactly in the
    decimal data type.
    An IEEE double has a 1 bit sign, 11 bit binary exponent, and 52 binary
    mantissa bits. Since we are using base 2, the hardware can assume the first
    mantissa bit is 1, giving an effective mantissa of 53 bits. Therefore, an
    IEEE double can represent integers up to
    9,007,199,254,740,991 before losing precision.
    A 32-bit signed long can represent integers up to
    2,147,483,647.
    A 64-bit signed long can represent integers up to
    9,223,372,036,854,775,807. Tuxedo transmits 64-bit longs between
    heterogeneous machine architectures as 32-bit longs, so 64-bit longs greater
    than 2^31-1 are suitable for transmission between 64-bit machines only if
    the machines are of the same architecture and XDR encoding is not needed.
    It is usually possible to code an application such that the effects of small
    arithmetic errors caused by expressing decimal fractions in binary are
    avoided. For example, use a printf format of "%.2f" instead of "%f" in
    order to avoid embarrassing output such as "Account balance is
    $342.629999999999." Another way to avoid arithmetic roundoff errors if
    dealing with dollars and cents is to transmit the number of cents rather
    than dollars and cents, in which case there are no decimal fractions that
    cannot be exactly converted to binary. As long as the amount of money being
    dealt with does not exceed 90 trillion dollars or euros, precision will not
    be lost.
    The preferences of the end customer must also be considered, and some
    banking customers may insist on the use of decimals despite all the
    explanations you can provide about how the carefully programmed use of
    doubles is exact.
    In general, it is possible to use doubles for most applications and still
    produce exact results, and it is easier to code "c = a + b" than "decadd(&a,
    &b, &c)", but there are some specialized situations for which the use of
    decimals is appropriate.
    <plindstrom> wrote in message news:[email protected]...
    Ed,
    thanks for your prompt reply.
    I take it that FVFTOS32 actually does other things than Fvftos32() does.
    Anyway, I guess I just have to stick to using FVFTOS32 when having to dealwith dec_t data.
    >
    I guess this leads to the next question: What's the big advantage of usingdec_t, given the fact that there's no IBM mainframe anywhere near here? Or
    would I be better off using double instead? Would double be more
    "interoperable"?
    >
    Best regards,
    /Per
    Per Lindstrom R2Meton AB, SWEDEN

  • Float - double == loss of accuracy?  why?

    The following test fails:
    public void testFloat() {
            float number = 46702.45F;
            Float numberAsFloat = new Float(number);
            double numberAsDouble = numberAsFloat.doubleValue();
            System.out.println(numberAsDouble);
            assertTrue(46702.45 == numberAsDouble);
    }I probably just don't understand floating point data types or something, but I was very surprised that this test fails. If someone could enlighten me on WHY this fails, I would really appreciate it. For what it's worth, the value printed out for numberAsDouble was 46702.44921875 which I find entirely unexpected considering I am going from a lower precision data type (float) to a higher precision data type (double).

    Remember: the floating point representations (float and double) store binary values. Not decimal. The decimal values are parsed by the compiler and turned into floats and doubles in binary.
    The said binary values are approximations to the decimal values. Sometimes the binary and the decimal values coincide, but some times they don't.
    Floats have less precision than doubles.
    The binary string that represents that number, in a float, will be interpreted differently in a double, because the double has those additional bits of precision.
    Consider this code:
        double nd = 46702.45d;
        float nf = 46702.45F;
        long ndl = Double.doubleToLongBits(nd);
        long nfl = Float.floatToIntBits(nf);
        long nfl2 = Double.doubleToLongBits(nf);
        System.out.println(Long.toBinaryString(ndl));
        System.out.println(Long.toBinaryString(nfl));
        System.out.println(Long.toBinaryString(nfl2));It prints this:
    100000011100110110011011100111001100110011001100110011001100110
    1000111001101100110111001110011
    100000011100110110011011100111001100000000000000000000000000000
    // now I add spaces to line up the various segments
    // sign   exponent  mantissa
         1 00000011100  110110011011100111001100110011001100110011001100110
         1    00011100  1101100110111001110011
         1 00000011100  110110011011100111001100000000000000000000000000000Look at that string of "0011"'s on the version of the number created as a double.
    Compare it to the 0's in the version that was created as a float and used as a double.

  • DEFECT: (Serious!) Truncates display of data in multi-byte environment

    I have an oracle 10g database set up with the following nls parameters:
    NLS_CALENDAR      GREGORIAN
    NLS_CHARACTERSET      AL32UTF8
    NLS_COMP      LINGUISTIC
    NLS_CURRENCY      $
    NLS_DATE_FORMAT      DD-MON-YYYY
    NLS_DATE_LANGUAGE      AMERICAN
    NLS_DUAL_CURRENCY      $
    NLS_ISO_CURRENCY      AMERICA
    NLS_LANGUAGE      AMERICAN
    NLS_LENGTH_SEMANTICS      CHAR
    NLS_NCHAR_CHARACTERSET      UTF8
    NLS_NCHAR_CONV_EXCP      TRUE
    NLS_NUMERIC_CHARACTERS      .,
    NLS_RDBMS_VERSION      10.2.0.3.0
    NLS_SORT BINARY
    NLS_TERRITORY      AMERICA
    NLS_TIMESTAMP_FORMAT      DD-MON-RR HH.MI.SSXFF AM
    NLS_TIMESTAMP_TZ_FORMAT      DD-MON-RR HH.MI.SSXFF AM TZR
    NLS_TIME_FORMAT      HH.MI.SSXFF AM
    NLS_TIME_TZ_FORMAT      HH.MI.SSXFF AM TZR
    I am querying a view in sqlserver 2000 via an odbc database link.
    When I query a 26 character wide column in the view in sql developer, it will only return up to 13 characters of the data.
    When I query the exact same view in the exact same sql server database from the extact same oracle database using the exact same odbc database link using sql navigator, I get the full 26 characters worth of data.
    It also works just fine from the sql command line tool from 10g express.
    Apparently, sql developer is confused about how to handle multi-byte data. If you ask it the length of the data in the column, it will tell you 26, but it will only show you 13.
    I have found a VERY PAINFUL work around, to do a cast(column_name as varchar2(26) when I query it. But I've got hundreds of views and queries...

    In all other respects, the settings I have appear to be working correctly.
    I can enter multi-byte characters into the sql worksheet to create a package, save it, and re-open the package with the multi-byte characters still visible.
    I'm using a fallback directory for my jdk with the correct font installed, so I can see and edit multi-byte data in the data grids.
    In this case, I noticed the problem on a column that only contains the standard ascii letters and digits.
    Environment->Encoding = UTF-16
    All the fonts are set to a font that properly displays western and ge'ez characters. The font has been in use for years, and is working correctly in all other circumstances.
    The Database->NLS Parameters tab under sql developer preferences shows:
    language: American
    territory : American
    sort: binary
    comp: binary
    length: char (I've also tried byte)
    If there are other settings that you think might be relevant, please let me know.
    I've done some more testing. I created an oracle table with a single column and did an insert into ... select from statement across the database link. The correct, full-length data appeared in the oracle table.
    So, it's not a matter of whether the data is being returned or not, it is. It is simply not being displayed correctly. It appears that sql developer is making some unwarranted decisions about the datatable across the database link when it decides to display the data, because sql plus and sql navigator have no such issues.
    This is really a very serious problem, because if I cannot trust the data the tool shows me, I cannot trust the tool.
    It is also an invitation to make an error based upon the erroneous data display.

  • I need help convert a 32 bit hex number to the following form

    is there a java class in the API that help me to do this?
    3e900000 ==> 2^-2(1 + 2^-3)

    okay, lets get technical.
            double d = 0.28125;
            // from BigDecimal(double)
            long valBits = Double.doubleToLongBits(d);
            int sign = ((valBits >> 63) == 0 ? 1 : -1);
            int exponent = (int) ((valBits >> 52) & 0x7ffL);
            long mantissa = (exponent == 0 ? (valBits & ((1L << 52) - 1)) << 1 : (valBits & ((1L << 52) - 1)) | (1L << 52));
            exponent -= 1023;
            System.out.println("sign=" + sign + ", exp=" + exponent + ", mantissa=" + Long.toBinaryString(mantissa));

  • Conversion of Packed Decimal Numbers to Java Data Types

    Hi all,
    I'm working with a mainframe file which contains datas in Packed Decimal Numbers.My requirement is to convert these datas to Java datatypes and also to convert the Java datatypes to Packed Decimal Numbers before storing them in the mainframe.
    Can anyone help me out with any code for converting Java data types to/from other data formats such as: EBCDIC, IBM370 COMP (binary numbers up to 9 digits), and COMP-16 (packed decimal numbers)?
    I would hugely appreciate any response to my query.
    Thanking you all,
    Kaushik.

    Rather than go that route, I'd instead look into providing a "service" on your mainframe to:
    1) provide a textual representation of the numbers (from native to text)
    2) read text, converting to native numeric storage
    And use that service to retrieve that information by your Java app (1)Similarly, instead of trying to write natively-formatted numbers from your Java app, I'd write it as text and make that same "service" read the text (2)
    This is the kind of thing XML is for.

  • Sqldeveloper ORA-12705 NLS parameter problem

    Hi,
    I just have installed sqldeveloper 1.2.1.
    I´m using Oracle 9i with american_america character set.
    My Win XP regional settings: Español (Ecuador) = Spanish (Ecuador)
    I configured sqldevloper with Language=American, Territory=Ecuador, Sort=Spanish, Comp=Binary and Date Language=American. However, I get connected to the db succesfully, but I got an annoying message (2 times):
    An error was encountered performing the following operation:
    ORA-12705: Invalid or unknown NLS parameter value especifed.........
    It could be great if someone could help me to get rid of this messages...
    Regards,
    Santiago

    Fixed ORA-12705 with sqldeveloper Version 1.5.1 Build MAIN-5440 on Windows XP
    I also had ORA-12705 Cannot access NLS data files or invalid environment specified on connect to DBMS instance and was able to track it down to the environemnt variable ORACLE_HOME which I had set in the dos command box as below:
    ORACLE_HOME=C:\programs\oracle\product\10.2
    That pointed to an Oracle Client ORACLE_HOME.
    I realized that the error goes away if:
    a) I remove ORACLE_HOME from the environment, i.e. "set ORACLE_HOME=" in the does box or
    b) I set ORACLE_HOME=C:\programs\oracle\product\11.1, where this is an 11.1 SERVER ORACLE_HOME
    Using regmon I saw that sqldeveloper does not access the Windows registry. Unfortunately I was unable to determine the root cause why the error occured when ORACLE_HOME pointed to the 10.2 client ORACLE_HOME. All I can say is it was not due to file access permissions.
    I was also unable to determine why sqldeveloper kept using C:\programs\oracle\product\10.2\jdbc\lib\ojdbc14.jar even when ORACLE_HOME did not point to C:\programs\oracle\product\10.2.
    With ORACLE_HOME=C:\programs\oracle\product\11.1 the following jar file was used for JDBC:
    C:\programs\oracle\product\11.1\jdbc\lib\ojdbc5.jar
    When I'm setting "set ORACLE_HOME=C:\programs\sqldeveloper", which is the installation directory of sqldeveloper, then it works fine and filemon utility shows that it uses this JDBC jar file:
    C:\programs\sqldeveloper\jdbc\lib\ojdbc5.jar
    Unfortunately neither Oracle&reg; Database SQL Developer Installation Guide Release 1.5 E12153-02 nor Oracle&reg; Database
    SQL Developer User&rsquo;s Guide Release 1.5 E12152-05 (the latest editions as of Dec 08) say anything about ORACLE_HOME that applies.
    However this info in the "User's Guide" is noteworthy: "_Note that SQL Developer does not use default values from the current system for globalization support parameters_;"
    This seems to indicate that any NLS_* parameters in the registry and environment (DOS box) are ignored. Go to Tools &gt; Preferences &gt; Database &gt; NLS in sqldeveloper to set them. But there is no way to set the character set!

  • How to read labview binary files in Matlab

    I would like to read Labview binary files with Matlab. I read some articles of the subject and I am more interesting in know how labview store this data into file. What is the format use by Labview to store this data?
    Any help is appreciated,
    Hernando

    The term "binary file" means that the data on disk is a (pretty close) duplication of the binary format of the data in memory.  For example, a String will appear as an array of Bytes that, if looked at with a text editor, would be "human-readable".  
    An I32 or U32 integer would take 4 bytes, but the order (or "Endian setting") can be Big-Endian or Little -Endian (and I won't confuse both of us by trying to say which is which).  Thus the number "1" would appear as four byte of 0, 0, 0, 1 or 1, 0, 0, 0.  Floating point (Dbl) also has an "Endian" consideration, but the numbers are encoded as a mantissa and exponent, with sign appearing somewhere.  However, if you get the Endian and precision (Sgl, Dbl, etc.) right, both MatLab and LabVIEW should be able to read each other's data.
    Be careful with Booleans.  It wouldn't hurt to do an experiment and see how many bits/bytes are used for simple Boolean data.
    One other "gotcha" -- in LabVIEW, you can prepend Array and String writes with a U32 that is the length of the Array/String -- you obviously want to take this into account.
    Something that I've found helpful when dealing (in both Matlab and LabVIEW) with "unknown" binary data files is to use an old-fashioned "binary editor", something capable of displaying a file as Text and Bytes.  Strings "stand out", and if they seem to be preceded with 4 bytes that are mostly 0 with one Byte more-or-less the length of the String (sign that String Length was prepended).  If you see a lot of byte data that look like they could be 2 or 4 byte integers, they probably are.  If they are four bytes of numeric data that have few zero bytes (i.e. if most of the 32 bits seem to be used), they may well be floats.  Make a guess at the format and write a short routine to read according to your guess -- do you get meaningful data?  Go ahead, be a Scientist, not an Engineer -- study the data, form a hypothesis, then design and do an Experiment and see if you need to reject your hypothesis ...
    Bob (Neuroscientist) Schor

  • Crash when swipe comping

    Im a new logic and mac user. I love the experience so far except when it comes to Logic. When swipe comping Logic inevitably crashes at random points. I cant seem to find a pattern. It happens when theres audio playing and when its still, with multiple takes and with just one. Im on a Mac Book Pro 15" with 2GB of ram and pleanty of HD and I use a PODxt Live for my input and monitoring device. I have the latest drivers from Line 6 for the Pod and this had been stable in all other recording and audio packages, including garage band, so I'm sure its not that. Has anyone else had this problem? I really dont want to return this software as I really do like it otherwise.
    Heres my crash dump:
    Date/Time: 2007-09-26 19:11:00.852 -0700
    OS Version: 10.4.10 (Build 8R2232)
    Report Version: 4
    Command: Logic Pro
    Path: /Applications/Logic Pro.app/Contents/MacOS/Logic Pro
    Parent: WindowServer [55]
    Version: 8.0.0 (1437.23)
    Build Version: 12
    Project Name: Logic
    Source Version: 14372300
    PID: 3270
    Thread: 0
    Exception: EXCBADACCESS (0x0001)
    Codes: KERNPROTECTIONFAILURE (0x0002) at 0x00000006
    Thread 0 Crashed:
    0 com.apple.logic.pro 0x00076d0c 0x1000 + 482572
    1 com.apple.logic.pro 0x0007710d 0x1000 + 483597
    2 com.apple.logic.pro 0x0007726f 0x1000 + 483951
    3 com.apple.logic.pro 0x00081cc1 0x1000 + 527553
    4 com.apple.logic.pro 0x0008233a 0x1000 + 529210
    5 com.apple.logic.pro 0x000b362f 0x1000 + 730671
    6 com.apple.logic.pro 0x002de312 0x1000 + 3003154
    7 com.apple.logic.pro 0x002e0bec 0x1000 + 3013612
    8 com.apple.logic.pro 0x002e1429 0x1000 + 3015721
    9 com.apple.logic.pro 0x002d24db 0x1000 + 2954459
    10 com.apple.logic.pro 0x002d2620 0x1000 + 2954784
    11 com.apple.logic.pro 0x002d282e 0x1000 + 2955310
    12 com.apple.logic.pro 0x002d28c4 0x1000 + 2955460
    13 com.apple.logic.pro 0x002d2b4d 0x1000 + 2956109
    14 com.apple.logic.pro 0x002d2d6f 0x1000 + 2956655
    15 com.apple.logic.pro 0x003f89b5 0x1000 + 4159925
    16 com.apple.logic.pro 0x00014303 0x1000 + 78595
    17 com.apple.logic.pro 0x001a9ebb 0x1000 + 1740475
    18 com.apple.logic.pro 0x004ba739 0x1000 + 4953913
    19 com.apple.logic.pro 0x004c7060 0x1000 + 5005408
    20 com.apple.logic.pro 0x00530292 0x1000 + 5436050
    21 com.apple.AppKit 0x93362350 -[NSApplication sendEvent:] + 5023
    22 com.apple.logic.pro 0x004cced7 0x1000 + 5029591
    23 com.apple.AppKit 0x9328cdfe -[NSApplication run] + 547
    24 com.apple.prokit 0x95f54958 NSProApplicationMain + 324
    25 com.apple.logic.pro 0x00003bf2 0x1000 + 11250
    26 com.apple.logic.pro 0x00003b19 0x1000 + 11033
    Thread 1:
    0 libSystem.B.dylib 0x90009cd7 machmsgtrap + 7
    1 com.apple.CoreFoundation 0x9082d2b3 CFRunLoopRunSpecific + 2014
    2 com.apple.CoreFoundation 0x9082cace CFRunLoopRunInMode + 61
    3 com.apple.audio.CoreAudio 0x9146941e HALRunLoop::OwnThread(void*) + 158
    4 com.apple.audio.CoreAudio 0x91469239 CAPThread::Entry(CAPThread*) + 93
    5 libSystem.B.dylib 0x90024227 pthreadbody + 84
    Thread 2:
    0 libSystem.B.dylib 0x9001a1cc select + 12
    1 libSystem.B.dylib 0x90024227 pthreadbody + 84
    Thread 3:
    0 libSystem.B.dylib 0x900248c7 semaphorewait_signaltrap + 7
    1 com.apple.logic.pro 0x00622e80 0x1000 + 6430336
    2 com.apple.logic.pro 0x00622f47 0x1000 + 6430535
    3 libSystem.B.dylib 0x90024227 pthreadbody + 84
    Thread 4:
    0 libSystem.B.dylib 0x900248c7 semaphorewait_signaltrap + 7
    1 com.apple.logic.pro 0x00622e80 0x1000 + 6430336
    2 com.apple.logic.pro 0x00622f47 0x1000 + 6430535
    3 libSystem.B.dylib 0x90024227 pthreadbody + 84
    Thread 5:
    0 libSystem.B.dylib 0x90047dd7 semaphoretimedwait_signaltrap + 7
    1 com.apple.audio.CoreAudio 0x9147665c CAGuard::WaitFor(unsigned long long) + 212
    2 com.apple.audio.CoreAudio 0x9147657e CAGuard::WaitUntil(unsigned long long) + 66
    3 com.apple.audio.CoreAudio 0x91474efa HP_IOThread::WorkLoop() + 690
    4 com.apple.audio.CoreAudio 0x91474c43 HPIOThread::ThreadEntry(HPIOThread*) + 17
    5 com.apple.audio.CoreAudio 0x91469239 CAPThread::Entry(CAPThread*) + 93
    6 libSystem.B.dylib 0x90024227 pthreadbody + 84
    Thread 6:
    0 libSystem.B.dylib 0x900248c7 semaphorewait_signaltrap + 7
    1 com.apple.logic.pro 0x00111218 0x1000 + 1114648
    2 libSystem.B.dylib 0x90024227 pthreadbody + 84
    Thread 7:
    0 libSystem.B.dylib 0x900248c7 semaphorewait_signaltrap + 7
    1 com.apple.logic.pro 0x00111140 0x1000 + 1114432
    2 libSystem.B.dylib 0x90024227 pthreadbody + 84
    Thread 8:
    0 libSystem.B.dylib 0x900248c7 semaphorewait_signaltrap + 7
    1 com.apple.logic.pro 0x0011132a 0x1000 + 1114922
    2 libSystem.B.dylib 0x90024227 pthreadbody + 84
    Thread 9:
    0 libSystem.B.dylib 0x90047dd7 semaphoretimedwait_signaltrap + 7
    1 ...ple.CoreServices.CarbonCore 0x90ce1da9 TSWaitOnSemaphoreCommon + 163
    2 ...ple.CoreServices.CarbonCore 0x90ce8d91 TimerThread + 87
    3 libSystem.B.dylib 0x90024227 pthreadbody + 84
    Thread 10:
    0 libSystem.B.dylib 0x90009cd7 machmsgtrap + 7
    1 com.apple.audio.midi.CoreMIDI 0x9685193b XServerMachPort::ReceiveMessage(int&, void*, int&) + 101
    2 com.apple.audio.midi.CoreMIDI 0x96849e8d MIDIInPortThread::Run() + 113
    3 com.apple.audio.midi.CoreMIDI 0x9684ab6d XThread::RunHelper(void*) + 17
    4 com.apple.audio.midi.CoreMIDI 0x968524ad CAPThread::Entry(CAPThread*) + 93
    5 libSystem.B.dylib 0x90024227 pthreadbody + 84
    Thread 11:
    0 libSystem.B.dylib 0x900248c7 semaphorewait_signaltrap + 7
    1 com.apple.logic.pro 0x0011f4c7 0x1000 + 1172679
    2 libSystem.B.dylib 0x90024227 pthreadbody + 84
    Thread 12:
    0 libSystem.B.dylib 0x90047dd7 semaphoretimedwait_signaltrap + 7
    1 ...ple.CoreServices.CarbonCore 0x90ce1da9 TSWaitOnSemaphoreCommon + 163
    2 ...ple.CoreServices.CarbonCore 0x90cec9ed DeferredTaskThread + 57
    3 libSystem.B.dylib 0x90024227 pthreadbody + 84
    Thread 13:
    0 libSystem.B.dylib 0x90047dd7 semaphoretimedwait_signaltrap + 7
    1 ...ple.CoreServices.CarbonCore 0x90ce1da9 TSWaitOnSemaphoreCommon + 163
    2 ...ple.CoreServices.CarbonCore 0x90ce1c34 AsyncFileThread(void*) + 72
    3 libSystem.B.dylib 0x90024227 pthreadbody + 84
    Thread 0 crashed with X86 Thread State (32-bit):
    eax: 0x00000000 ebx: 0x00000000 ecx: 0x25ef8e1a edx: 0xffffffff
    edi: 0x25ed11c6 esi: 0x25ef8cca ebp: 0xbffff2d8 esp: 0xbffff260
    ss: 0x0000001f efl: 0x00010286 eip: 0x00076d0c cs: 0x00000017
    ds: 0x0000001f es: 0x0000001f fs: 0x00000000 gs: 0x00000037
    Binary Images Description:
    0x1000 - 0x1006fff com.apple.logic.pro 8.0.0 (1437.23) /Applications/Logic Pro.app/Contents/MacOS/Logic Pro
    0x1777000 - 0x178dfff com.apple.XAudioUnits 1.0.0 (72.2) /Applications/Logic Pro.app/Contents/Frameworks/XAudioUnits.framework/Versions/A/XAudioUnits
    0x179c000 - 0x17c5fff MusicAudioDataServices /Applications/Logic Pro.app/Contents/Frameworks/MusicAudioDataServices.framework/Versions/A/MusicAu dioDataServices
    0x17d9000 - 0x17e4fff libaafintp.dylib /Applications/Logic Pro.app/Contents/Frameworks/libaafintp.dylib
    0x17f3000 - 0x17f5fff com.apple.XLogicImages 1.0.0 (91.3) /Applications/Logic Pro.app/Contents/Frameworks/XLogicImages.framework/Versions/A/XLogicImages
    0x2008000 - 0x2073fff com.apple.LogicLoopBrowser 7.2 (87.4) /Applications/Logic Pro.app/Contents/Frameworks/LogicLoopBrowser.framework/Versions/A/LogicLoopBrow ser
    0x20a2000 - 0x20bafff com.apple.EHardwareSupport 1.0.0 (129.2) /Applications/Logic Pro.app/Contents/Frameworks/EHardwareSupport.framework/Versions/A/EHardwareSupp ort
    0x20c5000 - 0x20dcfff com.apple.LogicFileBrowser 1.0.0 (92.2) /Applications/Logic Pro.app/Contents/Frameworks/LogicFileBrowser.framework/Versions/A/LogicFileBrow ser
    0x20eb000 - 0x20f2fff com.apple.AEProfiling 1.2 (18) /Applications/Logic Pro.app/Contents/Frameworks/AEProfiling.framework/Versions/A/AEProfiling
    0x2205000 - 0x22a2fff com.apple.eloop 3.1.0 (80.2) /Applications/Logic Pro.app/Contents/Frameworks/ELoop.framework/Versions/A/ELoop
    0x233f000 - 0x2391fff libaafpgapi.dylib /Applications/Logic Pro.app/Contents/Frameworks/libaafpgapi.dylib
    0x23c4000 - 0x25c8fff libcom-api.dylib /Applications/Logic Pro.app/Contents/Frameworks/libcom-api.dylib
    0x28ea000 - 0x296dfff com.apple.ecore 1.1.0 (248.4) /Applications/Logic Pro.app/Contents/Frameworks/ECore.framework/Versions/A/ECore
    0x29c8000 - 0x2a46fff com.apple.DotMacKit 21 (3.0.1L) /Applications/Logic Pro.app/Contents/Frameworks/DotMacKit.framework/Versions/A/DotMacKit
    0x2aa3000 - 0x2ab2fff com.apple.AERegistration 1.2 (71) /Applications/Logic Pro.app/Contents/Frameworks/AERegistration.framework/Versions/A/AERegistration
    0x2ee4000 - 0x2f06fff com.apple.prokit.TigerPanels 4.0.2 (689.4) /System/Library/PrivateFrameworks/ProKit.framework/Versions/A/Resources/TigerPa nels.bundle/Contents/MacOS/TigerPanels
    0x192fa000 - 0x19304fff com.apple.iokit.IOHIDLib 1.4.11 /System/Library/Extensions/IOHIDFamily.kext/Contents/PlugIns/IOHIDLib.plugin/Co ntents/MacOS/IOHIDLib
    0x19429000 - 0x1942efff com.apple.audio.AppleHDAHALPlugIn 1.3.3 (1.3.3a1) /System/Library/Extensions/AppleHDA.kext/Contents/PlugIns/AppleHDAHALPlugIn.bun dle/Contents/MacOS/AppleHDAHALPlugIn
    0x195e1000 - 0x195e9fff com.apple.proapps.mrcheckpro 1.4 (193) /Applications/Logic Pro.app/Contents/Resources/MRCheckPro.bundle/Contents/MacOS/MRCheckPro
    0x1a3f8000 - 0x1a551fff GLEngine /System/Library/Frameworks/OpenGL.framework/Resources/GLEngine.bundle/GLEngine
    0x1a57d000 - 0x1a76bfff com.apple.ATIRadeonX1000GLDriver 1.4.56 (4.5.6) /System/Library/Extensions/ATIRadeonX1000GLDriver.bundle/Contents/MacOS/ATIRade onX1000GLDriver
    0x1a7a7000 - 0x1a7c3fff GLDriver /System/Library/Frameworks/OpenGL.framework/Versions/A/Resources/GLDriver.bundl e/GLDriver
    0x1a7ca000 - 0x1a7eefff GLRendererFloat /System/Library/Frameworks/OpenGL.framework/Versions/A/Resources/GLRendererFloa t.bundle/GLRendererFloat
    0x1a94e000 - 0x1a950fff com.apple.gal_common 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/common.res/Contents/MacOS/common
    0x1a957000 - 0x1a959fff com.apple.gal_ebp 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/ebp.res/Contents/MacOS/ebp
    0x1a971000 - 0x1a973fff com.apple.gal_egt 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/egt.res/Contents/MacOS/egt
    0x1a9a4000 - 0x1a9a6fff com.apple.gal_esu 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/esu.res/Contents/MacOS/esu
    0x1b2c6000 - 0x1b2ccfff com.apple.gal_anvil 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/anvil.res/Contents/MacOS/anvil
    0x1b3c5000 - 0x1b3cefff com.apple.gal_efx 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/efx.res/Contents/MacOS/efx
    0x1b5eb000 - 0x1b5f2fff com.apple.gal_efx2 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/efx2.res/Contents/MacOS/efx2
    0x1b7e4000 - 0x1b7e7fff com.apple.gal_emx 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/emx.res/Contents/MacOS/emx
    0x1b8b1000 - 0x1b8b3fff com.apple.gal_es1 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/es1.res/Contents/MacOS/es1
    0x1b916000 - 0x1b919fff com.apple.gal_es2 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/es2.res/Contents/MacOS/es2
    0x1b9b4000 - 0x1b9b7fff com.apple.gal_esp 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/esp.res/Contents/MacOS/esp
    0x1ba34000 - 0x1ba37fff com.apple.gal_evb3 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/evb3.res/Contents/MacOS/evb3
    0x1bac7000 - 0x1bac9fff com.apple.gal_evd6 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/evd6.res/Contents/MacOS/evd6
    0x1bb31000 - 0x1bb34fff com.apple.gal_evoc 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/evoc.res/Contents/MacOS/evoc
    0x1bc27000 - 0x1bc29fff com.apple.gal_evp88 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/evp88.res/Contents/MacOS/evp88
    0x1bd7a000 - 0x1bd7dfff com.apple.gal_exs24 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/exs24.res/Contents/MacOS/exs24
    0x1bdf5000 - 0x1bdf8fff com.apple.gal_mutapdel 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/mutapdel.res/Contents/MacOS/mutapdel
    0x1be3a000 - 0x1be40fff com.apple.gal_revolver 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/revolver.res/Contents/MacOS/revolver
    0x1c019000 - 0x1c01cfff com.apple.gal_sphere 1.0 (134.2) /Applications/Logic Pro.app/Contents/Resources/sphere.res/Contents/MacOS/sphere
    0x1c1ab000 - 0x1c1adfff com.apple.MIDIDevicePlugIn.AlphaTrack 1.0.1 (53.2) /Applications/Logic Pro.app/Contents/MIDI Device Plug-ins/AlphaTrack.bundle/Contents/MacOS/AlphaTrack
    0x1c1bd000 - 0x1c1bffff com.apple.MIDIDevicePlugIn.CS-32 1.0.1 (53.2) /Applications/Logic Pro.app/Contents/MIDI Device Plug-ins/CS-32.bundle/Contents/MacOS/CS-32
    0x1e7fa000 - 0x1e7fbfff com.apple.MIDIDevicePlugIn.iControl 1.0.1 (53.2) /Applications/Logic Pro.app/Contents/MIDI Device Plug-ins/iControl.bundle/Contents/MacOS/iControl
    0x1e9fa000 - 0x1e9fcfff com.apple.MIDIDevicePlugIn.TranzPort 1.0.1 (53.2) /Applications/Logic Pro.app/Contents/MIDI Device Plug-ins/TranzPort.bundle/Contents/MacOS/TranzPort
    0x1ebfa000 - 0x1ebfbfff com.apple.MIDIDevicePlugIn.US-428 1.0.1 (53.2) /Applications/Logic Pro.app/Contents/MIDI Device Plug-ins/US-428.bundle/Contents/MacOS/US-428
    0x20bfc000 - 0x20bfefff com.apple.MIDIDevicePlugIn.microKONTROL 1.0.1 (53.2) /Applications/Logic Pro.app/Contents/MIDI Device Plug-ins/microKONTROL.bundle/Contents/MacOS/microKONTROL
    0x24494000 - 0x24497fff com.apple.MIDIDevicePlugIn.FW-1884 1.0.1 (53.2) /Applications/Logic Pro.app/Contents/MIDI Device Plug-ins/FW-1884.bundle/Contents/MacOS/FW-1884
    0x2449f000 - 0x244a3fff com.apple.MIDIDevicePlugIn.HUI 1.0.1 (53.2) /Applications/Logic Pro.app/Contents/MIDI Device Plug-ins/HUI.bundle/Contents/MacOS/HUI
    0x244af000 - 0x244b1fff com.apple.MIDIDevicePlugIn.US-2400 1.0.1 (53.2) /Applications/Logic Pro.app/Contents/MIDI Device Plug-ins/US-2400.bundle/Contents/MacOS/US-2400
    0x2452c000 - 0x24532fff com.apple.MIDIDevicePlugIn.Logic Control 1.0.1 (53.2) /Applications/Logic Pro.app/Contents/MIDI Device Plug-ins/Logic Control.bundle/Contents/MacOS/Logic Control
    0x24979000 - 0x2498bfff com.apple.FCP Uncompressed 422.component 1.5 /Library/QuickTime/FCP Uncompressed 422.component/Contents/MacOS/FCP Uncompressed 422
    0x24991000 - 0x24b87fff net.telestream.wmv.import 2.1.1.70 /Library/QuickTime/Flip4Mac WMV Import.component/Contents/MacOS/Flip4Mac WMV Import
    0x24bb8000 - 0x24d69fff net.telestream.wmv.advanced 2.1.1.70 /Library/QuickTime/Flip4Mac WMV Advanced.component/Contents/MacOS/Flip4Mac WMV Advanced
    0x24dac000 - 0x24de2fff com.apple.AppleProRes422 1.0.1 (38) /Library/QuickTime/AppleProRes422.component/Contents/MacOS/AppleProRes422
    0x24e2c000 - 0x24e70fff com.apple.DVCPROHDCodec 1.4 (231) /Library/QuickTime/DVCPROHDCodec.component/Contents/MacOS/DVCPROHDCodec
    0x24e91000 - 0x24eecfff com.apple.AppleHDVCodec 1.3.1 (212) /Library/QuickTime/AppleHDVCodec.component/Contents/MacOS/AppleHDVCodec
    0x24ef7000 - 0x24efcfff com.apple.AppleMPEG2Codec 1.0 (211) /Library/QuickTime/AppleMPEG2Codec.component/Contents/MacOS/AppleMPEG2Codec
    0x25068000 - 0x25082fff com.apple.AppleIntermediateCodec 1.2 (145) /Library/QuickTime/AppleIntermediateCodec.component/Contents/MacOS/AppleInterme diateCodec
    0x25087000 - 0x250a7fff com.apple.IMXCodec 1.3 (143) /Library/QuickTime/IMXCodec.component/Contents/MacOS/IMXCodec
    0x250be000 - 0x250d7fff com.apple.applepixletvideo 1.2.9 (1.2d9) /System/Library/QuickTime/ApplePixletVideo.component/Contents/MacOS/ApplePixlet Video
    0x41340000 - 0x4137cfff com.apple.CoreMediaIOServicesPrivate 1.0 /System/Library/PrivateFrameworks/CoreMediaIOServicesPrivate.framework/Versions /A/CoreMediaIOServicesPrivate
    0x41410000 - 0x414adfff com.apple.QuickTimeImporters.component 7.2 /System/Library/QuickTime/QuickTimeImporters.component/Contents/MacOS/QuickTime Importers
    0x41840000 - 0x41863fff com.apple.CoreMediaPrivate 1.0 /System/Library/PrivateFrameworks/CoreMediaPrivate.framework/Versions/A/CoreMed iaPrivate
    0x419b0000 - 0x419ecfff com.apple.QuickTimeFireWireDV.component 7.2 /System/Library/QuickTime/QuickTimeFireWireDV.component/Contents/MacOS/QuickTim eFireWireDV
    0x41a30000 - 0x41a33fff com.apple.CoreMediaAuthoringPrivate 1.0 /System/Library/PrivateFrameworks/CoreMediaAuthoringPrivate.framework/Versions/ A/CoreMediaAuthoringPrivate
    0x8fe00000 - 0x8fe4afff dyld 46.12 /usr/lib/dyld
    0x90000000 - 0x90171fff libSystem.B.dylib /usr/lib/libSystem.B.dylib
    0x901c1000 - 0x901c3fff libmathCommon.A.dylib /usr/lib/system/libmathCommon.A.dylib
    0x901c5000 - 0x90202fff com.apple.CoreText 1.1.2 (???) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ CoreText.framework/Versions/A/CoreText
    0x90229000 - 0x902fffff ATS /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ ATS.framework/Versions/A/ATS
    0x9031f000 - 0x90774fff com.apple.CoreGraphics 1.258.75 (???) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ CoreGraphics.framework/Versions/A/CoreGraphics
    0x9080b000 - 0x908d3fff com.apple.CoreFoundation 6.4.7 (368.28) /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
    0x90911000 - 0x90911fff com.apple.CoreServices 10.4 (???) /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices
    0x90913000 - 0x90a07fff libicucore.A.dylib /usr/lib/libicucore.A.dylib
    0x90a57000 - 0x90ad6fff libobjc.A.dylib /usr/lib/libobjc.A.dylib
    0x90aff000 - 0x90b63fff libstdc++.6.dylib /usr/lib/libstdc++.6.dylib
    0x90bd2000 - 0x90bd9fff libgcc_s.1.dylib /usr/lib/libgcc_s.1.dylib
    0x90bde000 - 0x90c51fff com.apple.framework.IOKit 1.4.8 (???) /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
    0x90c66000 - 0x90c78fff libauto.dylib /usr/lib/libauto.dylib
    0x90c7e000 - 0x90f24fff com.apple.CoreServices.CarbonCore 682.26 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonC ore.framework/Versions/A/CarbonCore
    0x90f67000 - 0x90fcffff com.apple.CoreServices.OSServices 4.1 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServi ces.framework/Versions/A/OSServices
    0x91008000 - 0x91047fff com.apple.CFNetwork 129.21 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CFNetwo rk.framework/Versions/A/CFNetwork
    0x9105a000 - 0x9106afff com.apple.WebServices 1.1.3 (1.1.0) /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/WebServ icesCore.framework/Versions/A/WebServicesCore
    0x91075000 - 0x910f4fff com.apple.SearchKit 1.0.5 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchK it.framework/Versions/A/SearchKit
    0x9112e000 - 0x9114cfff com.apple.Metadata 10.4.4 (121.36) /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadat a.framework/Versions/A/Metadata
    0x91158000 - 0x91166fff libz.1.dylib /usr/lib/libz.1.dylib
    0x91169000 - 0x91308fff com.apple.security 4.5.2 (29774) /System/Library/Frameworks/Security.framework/Versions/A/Security
    0x91406000 - 0x9140efff com.apple.DiskArbitration 2.1.1 /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration
    0x91415000 - 0x9141cfff libbsm.dylib /usr/lib/libbsm.dylib
    0x91420000 - 0x91446fff com.apple.SystemConfiguration 1.8.6 /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfi guration
    0x91458000 - 0x914cefff com.apple.audio.CoreAudio 3.0.4 /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio
    0x9151f000 - 0x9151ffff com.apple.ApplicationServices 10.4 (???) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Application Services
    0x91521000 - 0x9154dfff com.apple.AE 314 (313) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ AE.framework/Versions/A/AE
    0x91560000 - 0x91634fff com.apple.ColorSync 4.4.9 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ ColorSync.framework/Versions/A/ColorSync
    0x9166f000 - 0x916e2fff com.apple.print.framework.PrintCore 4.6 (177.13) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ PrintCore.framework/Versions/A/PrintCore
    0x91710000 - 0x917b9fff com.apple.QD 3.10.24 (???) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ QD.framework/Versions/A/QD
    0x917df000 - 0x9182afff com.apple.HIServices 1.5.2 (???) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ HIServices.framework/Versions/A/HIServices
    0x91849000 - 0x9185ffff com.apple.LangAnalysis 1.6.3 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ LangAnalysis.framework/Versions/A/LangAnalysis
    0x9186b000 - 0x91886fff com.apple.FindByContent 1.5 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ FindByContent.framework/Versions/A/FindByContent
    0x91891000 - 0x918cefff com.apple.LaunchServices 182 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ LaunchServices.framework/Versions/A/LaunchServices
    0x918e2000 - 0x918eefff com.apple.speech.synthesis.framework 3.5 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ SpeechSynthesis.framework/Versions/A/SpeechSynthesis
    0x918f5000 - 0x91935fff com.apple.ImageIO.framework 1.5.5 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ ImageIO.framework/Versions/A/ImageIO
    0x91948000 - 0x919fafff libcrypto.0.9.7.dylib /usr/lib/libcrypto.0.9.7.dylib
    0x91a40000 - 0x91a56fff libcups.2.dylib /usr/lib/libcups.2.dylib
    0x91a5b000 - 0x91a79fff libJPEG.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ ImageIO.framework/Versions/A/Resources/libJPEG.dylib
    0x91a7e000 - 0x91addfff libJP2.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ ImageIO.framework/Versions/A/Resources/libJP2.dylib
    0x91aef000 - 0x91af3fff libGIF.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ ImageIO.framework/Versions/A/Resources/libGIF.dylib
    0x91af5000 - 0x91b7bfff libRaw.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ ImageIO.framework/Versions/A/Resources/libRaw.dylib
    0x91b7f000 - 0x91bbcfff libTIFF.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ ImageIO.framework/Versions/A/Resources/libTIFF.dylib
    0x91bc2000 - 0x91bdcfff libPng.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ ImageIO.framework/Versions/A/Resources/libPng.dylib
    0x91be1000 - 0x91be3fff libRadiance.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ ImageIO.framework/Versions/A/Resources/libRadiance.dylib
    0x91be5000 - 0x91cc3fff libxml2.2.dylib /usr/lib/libxml2.2.dylib
    0x91ce0000 - 0x91ce0fff com.apple.Accelerate 1.3.1 (Accelerate 1.3.1) /System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate
    0x91ce2000 - 0x91d70fff com.apple.vImage 2.5 /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.fr amework/Versions/A/vImage
    0x91d77000 - 0x91d77fff com.apple.Accelerate.vecLib 3.3.1 (vecLib 3.3.1) /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.fr amework/Versions/A/vecLib
    0x91d79000 - 0x91dd2fff libvMisc.dylib /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.fr amework/Versions/A/libvMisc.dylib
    0x91ddb000 - 0x91dfffff libvDSP.dylib /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.fr amework/Versions/A/libvDSP.dylib
    0x91e07000 - 0x92210fff libBLAS.dylib /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.fr amework/Versions/A/libBLAS.dylib
    0x9224a000 - 0x925fefff libLAPACK.dylib /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.fr amework/Versions/A/libLAPACK.dylib
    0x9262b000 - 0x92718fff libiconv.2.dylib /usr/lib/libiconv.2.dylib
    0x9271a000 - 0x92797fff com.apple.DesktopServices 1.3.6 /System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/Desk topServicesPriv
    0x927d8000 - 0x92a08fff com.apple.Foundation 6.4.8 (567.29) /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation
    0x92b22000 - 0x92b39fff libGL.dylib /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
    0x92b44000 - 0x92b9cfff libGLU.dylib /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib
    0x92bb0000 - 0x92bb0fff com.apple.Carbon 10.4 (???) /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
    0x92bb2000 - 0x92bc2fff com.apple.ImageCapture 3.0.4 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture. framework/Versions/A/ImageCapture
    0x92bd1000 - 0x92bd9fff com.apple.speech.recognition.framework 3.6 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecogni tion.framework/Versions/A/SpeechRecognition
    0x92bdf000 - 0x92be5fff com.apple.securityhi 2.0.1 (24742) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.fr amework/Versions/A/SecurityHI
    0x92beb000 - 0x92c7cfff com.apple.ink.framework 101.2.1 (71) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework /Versions/A/Ink
    0x92c90000 - 0x92c94fff com.apple.help 1.0.3 (32.1) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framewor k/Versions/A/Help
    0x92c97000 - 0x92cb5fff com.apple.openscripting 1.2.5 (???) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting .framework/Versions/A/OpenScripting
    0x92cc7000 - 0x92ccdfff com.apple.print.framework.Print 5.2 (192.4) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framewo rk/Versions/A/Print
    0x92cd3000 - 0x92d36fff com.apple.htmlrendering 66.1 (1.1.3) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HTMLRendering .framework/Versions/A/HTMLRendering
    0x92d5d000 - 0x92d9efff com.apple.NavigationServices 3.4.4 (3.4.3) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/NavigationSer vices.framework/Versions/A/NavigationServices
    0x92dc5000 - 0x92dd3fff com.apple.audio.SoundManager 3.9.1 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CarbonSound.f ramework/Versions/A/CarbonSound
    0x92dda000 - 0x92ddffff com.apple.CommonPanels 1.2.3 (73) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels. framework/Versions/A/CommonPanels
    0x92de4000 - 0x930d9fff com.apple.HIToolbox 1.4.9 (???) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.fra mework/Versions/A/HIToolbox
    0x931df000 - 0x931eafff com.apple.opengl 1.4.16 /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL
    0x931ef000 - 0x9320afff com.apple.DirectoryService.Framework 3.2 /System/Library/Frameworks/DirectoryService.framework/Versions/A/DirectoryServi ce
    0x9327a000 - 0x9327afff com.apple.Cocoa 6.4 (???) /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa
    0x9327c000 - 0x93932fff com.apple.AppKit 6.4.8 (824.42) /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
    0x93cb3000 - 0x93d2efff com.apple.CoreData 91 (92.1) /System/Library/Frameworks/CoreData.framework/Versions/A/CoreData
    0x93d67000 - 0x93e21fff com.apple.audio.toolbox.AudioToolbox 1.4.5 /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox
    0x93e64000 - 0x93e64fff com.apple.audio.units.AudioUnit 1.4.2 /System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit
    0x93e66000 - 0x94027fff com.apple.QuartzCore 1.4.12 /System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore
    0x9406d000 - 0x940aefff libsqlite3.0.dylib /usr/lib/libsqlite3.0.dylib
    0x940b6000 - 0x940f0fff libGLImage.dylib /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dyl ib
    0x940f5000 - 0x9410bfff com.apple.CoreVideo 1.4.1 /System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo
    0x94151000 - 0x94199fff com.apple.bom 8.5 (86.3) /System/Library/PrivateFrameworks/Bom.framework/Versions/A/Bom
    0x9429e000 - 0x942adfff libCGATS.A.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ CoreGraphics.framework/Versions/A/Resources/libCGATS.A.dylib
    0x942b4000 - 0x942bffff libCSync.A.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ CoreGraphics.framework/Versions/A/Resources/libCSync.A.dylib
    0x9430b000 - 0x94325fff libRIP.A.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ CoreGraphics.framework/Versions/A/Resources/libRIP.A.dylib
    0x9432b000 - 0x94634fff com.apple.QuickTime 7.2.0 /System/Library/Frameworks/QuickTime.framework/Versions/A/QuickTime
    0x947b7000 - 0x948fdfff com.apple.AddressBook.framework 4.0.5 (487) /System/Library/Frameworks/AddressBook.framework/Versions/A/AddressBook
    0x94989000 - 0x94998fff com.apple.DSObjCWrappers.Framework 1.1 /System/Library/PrivateFrameworks/DSObjCWrappers.framework/Versions/A/DSObjCWra ppers
    0x9499f000 - 0x949c8fff com.apple.LDAPFramework 1.4.2 (69.1.1) /System/Library/Frameworks/LDAP.framework/Versions/A/LDAP
    0x949ce000 - 0x949ddfff libsasl2.2.dylib /usr/lib/libsasl2.2.dylib
    0x949e1000 - 0x94a06fff libssl.0.9.7.dylib /usr/lib/libssl.0.9.7.dylib
    0x94a12000 - 0x94a2ffff libresolv.9.dylib /usr/lib/libresolv.9.dylib
    0x94ad3000 - 0x94ad3fff com.apple.DiscRecording 3.2.0 (???) /System/Library/Frameworks/DiscRecording.framework/Versions/A/DiscRecording
    0x94ad5000 - 0x94b53fff com.apple.DiscRecordingEngine 3.2.0 /System/Library/Frameworks/DiscRecording.framework/Versions/A/Frameworks/DiscRe cordingEngine.framework/Versions/A/DiscRecordingEngine
    0x94b83000 - 0x94bc5fff com.apple.DiscRecordingContent 3.2.0 /System/Library/Frameworks/DiscRecording.framework/Versions/A/Frameworks/DiscRe cordingContent.framework/Versions/A/DiscRecordingContent
    0x9580d000 - 0x95895fff com.apple.syncservices 2.5 (194) /System/Library/Frameworks/SyncServices.framework/Versions/A/SyncServices
    0x95ac8000 - 0x95b48fff com.apple.QTKit 7.2 /System/Library/Frameworks/QTKit.framework/Versions/A/QTKit
    0x95bb1000 - 0x95bb3fff com.apple.ExceptionHandling 1.2 (???) /System/Library/Frameworks/ExceptionHandling.framework/Versions/A/ExceptionHand ling
    0x95f3a000 - 0x960bbfff com.apple.prokit 4.0.2 (689.4) /System/Library/PrivateFrameworks/ProKit.framework/Versions/A/ProKit
    0x96845000 - 0x9687bfff com.apple.audio.midi.CoreMIDI 1.5.1 (41) /System/Library/Frameworks/CoreMIDI.framework/Versions/A/CoreMIDI
    0x96c44000 - 0x96c44fff com.apple.vecLib 3.3.1 (vecLib 3.3.1) /System/Library/Frameworks/vecLib.framework/Versions/A/vecLib
    0x971be000 - 0x97295fff libGLProgrammability.dylib /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLProgramma bility.dylib
    0x972b0000 - 0x972b1fff libGLSystem.dylib /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLSystem.dy lib
    0x972b3000 - 0x972b8fff com.apple.agl 2.5.9 (AGL-2.5.9) /System/Library/Frameworks/AGL.framework/Versions/A/AGL
    0x9739b000 - 0x973befff com.apple.AppleVAFramework 3.3.10 /System/Library/PrivateFrameworks/AppleVA.framework/Versions/A/AppleVA
    0x97654000 - 0x97668fff com.apple.audio.CoreAudioKit 1.0.1 /System/Library/Frameworks/CoreAudioKit.framework/Versions/A/CoreAudioKit
    0x98d22000 - 0x99b86fff com.apple.QuickTimeComponents.component 7.2 /System/Library/QuickTime/QuickTimeComponents.component/Contents/MacOS/QuickTim eComponents
    0x99e07000 - 0x99e09fff com.apple.QuickTimeH264.component 7.2 /System/Library/QuickTime/QuickTimeH264.component/Contents/MacOS/QuickTimeH264
    0x9a20c000 - 0x9a2d2fff com.apple.QuickTimeMPEG4.component 7.2 /System/Library/QuickTime/QuickTimeMPEG4.component/Contents/MacOS/QuickTimeMPEG 4
    0x9c224000 - 0x9c224fff libmx.A.dylib /usr/lib/libmx.A.dylib
    Model: MacBookPro2,2, BootROM MBP22.00A5.B01, 2 processors, Intel Core 2 Duo, 2.33 GHz, 2 GB
    Graphics: ATI Radeon X1600, ATY,RadeonX1600, PCIe, 256 MB
    Memory Module: BANK 0/DIMM0, 1 GB, DDR2 SDRAM, 667 MHz
    Memory Module: BANK 1/DIMM1, 1 GB, DDR2 SDRAM, 667 MHz
    AirPort: AirPort Extreme, 1.1.9.3
    Bluetooth: Version 1.9.0f8, 2 service, 1 devices, 1 incoming serial ports
    Network Service: AirPort, AirPort, en1
    Network Service: Parallels Host-Guest, Ethernet, en2
    Network Service: Parallels NAT, Ethernet, en3
    Serial ATA Device: FUJITSU MHW2120BH, 111.79 GB
    Parallel ATA Device: MATSHITADVD-R UJ-857D
    USB Device: Built-in iSight, Micron, Up to 480 Mb/sec, 500 mA
    USB Device: Apple Internal Keyboard / Trackpad, Apple Computer, Up to 12 Mb/sec, 500 mA
    USB Device: PODxt Live, Line 6, Up to 12 Mb/sec, 500 mA
    USB Device: IR Receiver, Apple Computer, Inc., Up to 12 Mb/sec, 500 mA
    USB Device: Bluetooth USB Host Controller, Apple, Inc., Up to 12 Mb/sec, 500 mA

    Oh, I found a bit more information on this. I was able to make it crash even with my POD completely disconnected and recording from the laptop mic. But heres the process.
    Create a new empty project (compose for instance). Add a stereo real instrument channel with record on. Block off 4 bars and set them up to loop. Hit 'R'. Wait for 4 loops. Hit Space. Wait a couple seconds. Hit 'R'. Boom it hangs every time.

  • Add a unique constraint on binary XML table

    How add a unique constraint of "brevet" field?
    The following INSERT failed
    SQL Error: ORA-19025: EXTRACTVALUE renvoie la valeur d'un seul noeud
    19025. 00000 - "EXTRACTVALUE returns value of only one node"
    If the ALTER is made after the INSERT is done, INSERT is valid but ALTER failed with the same error message!
    /* copy the file compavions.xml
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <compagnie>
         <comp>AB</comp>
         <flotte>
              <avion immat="F-WTSS" capacite="90">
                   <typeAv>Concorde</typeAv>
              </avion>
              <avion immat="F-GFDR" capacite="145">
                   <typeAv>A320</typeAv>
              </avion>
              <avion immat="F-GTYA" capacite="150">
                   <typeAv>A320</typeAv>
              </avion>
         </flotte>
         <nomComp>Air Blagnac</nomComp>
         <pilotes>
              <pilote>
              <brevet>PL-1</brevet>
              <nom>C. Sigaudes</nom>
              </pilote>
              <pilote>
              <brevet>PL-2</brevet>
              <nom>P. Filloux</nom>
              </pilote>
         </pilotes>
    </compagnie>
    in C:\...
    --DROP DIRECTORY repxml;
    --CREATE DIRECTORY repxml AS 'C:\...';
    DROP TABLE pilote_binary_xml5;
    CREATE TABLE pilote_binary_xml5 OF XMLType
    XMLTYPE STORE AS BINARY XML
    VIRTUAL COLUMNS
    (col AS (EXTRACTVALUE(OBJECT_VALUE, '/compagnie/pilotes/pilote/brevet')));
    ALTER TABLE pilote_binary_xml5 ADD CONSTRAINT brevet_unique UNIQUE (col);
    INSERT INTO pilote_binary_xml5 VALUES (XMLType(BFILENAME ('REPXML','compavions.xml'), NLS_CHARSET_ID ('AL32UTF8')));
    --ALTER TABLE pilote_binary_xml5 ADD CONSTRAINT brevet_unique UNIQUE (col);                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

    You could try something like
    (extract(OBJECT_VALUE,compagnie/pilotes/pilote/brevet').getStringVal());
    but this is probably unadvisable.
    I suggest an alternative is for you to look at XMLINDEX so that you can bring the 'proper' XML functions into play like XMLTABLE etc.

  • Binary search in java

    Hi,
    I keep getting a java.lang.ClassCastException with these two classes when I try to perform a binary search. Any tips?
    Phonebook class:
    =============
    import java.util.*;
    public class Phonebook
    private static long comparisons = 0;
    private static long exchanges = 0;
         public static void main (String[] args)
         // Create an array of Phonebook records
         PhoneRecord[] records = new PhoneRecord[10];
         records[0] = new PhoneRecord("Smith","Bob", 1234367);
         records[1] = new PhoneRecord("Jones","Will", 1234548);
         records[2] = new PhoneRecord("Johnson","Frank", 1234569);
         records[3] = new PhoneRecord("Mc John","Pete", 1234560);
         records[4] = new PhoneRecord("OBrien","Frank", 1234571);
         records[5] = new PhoneRecord("OConnor","Joe", 1234572);
         records[6] = new PhoneRecord("Bloggs","Ricky", 1233570);
         records[7] = new PhoneRecord("empty","empty", 8888888);
         records[8] = new PhoneRecord("empty","empty", 9999999);
         records[9] = new PhoneRecord("Van Vliet","Margreet", 1244570);
         // call menu
         Menu(records);
         } // end main
    //================================================
    // menu
    //================================================
    static void Menu(PhoneRecord[] records)
         int option;
         // menu options
         System.out.println("===========Menu==============================");
         System.out.println("=============================================");
         System.out.println(" ");
         System.out.println("1. Find record (Advanced Search) ");
         System.out.println("2. Quick Search ");
         System.out.println("3. Add a record ");
         System.out.println("4. Show database ");
         System.out.println("5. Sort database ");
         System.out.println("6. Exit     ");
         System.out.println(" ");
         System.out.println("=============================================");
         System.out.println("=============================================");
         System.out.println(" ");
         System.out.println("Choose a number ");
         option = Console.readInt();
         // every menu option has its own method
         if (option == 1)
              FindRecord(records);
         if (option == 2)
              QuickSearch(records);
         else if (option == 3)
              AddRecord(records);
         else if (option == 4)
              ShowDatabase(records);
         else if (option == 5)
              quickSort(records, 0, 9);
              ShowDatabase(records);
         // if 6 then terminate the program
         else
                   System.out.println("Goodbye!");
    } // end of menu
    //=================================================
    // menu option 1: Find a record - using linear search
    //=================================================
    static void FindRecord(PhoneRecord[] records)
    int option;
    do
    // the user can search based on first name or last name
    System.out.println("Do you want to search for:");
    System.out.println("1. First Name");
    System.out.println("2. Last Name");
    System.out.println("3. End search");
    option = Console.readInt();
         // option 1 is search based on first name
         if (option == 1)
              System.out.println("Enter First Name");
              String first = Console.readString();
              int notthere = -1;
              for (int i=0; i < 10; i++)
                   if (first.equals(records.first_Name))
                        System.out.println("----------------------------------");
                        System.out.println(records[i].last_Name + ", " + records[i].first_Name);
                        System.out.println(records[i].phonenumber);
                        System.out.println("----------------------------------\n\n");
                   // if a record is found, the variable notthere will be > -1
                   notthere = i;
              } // end search array
                   // if notthere is -1, then there is no record available
                   if (notthere < 0)
                   System.out.println("------------------------------");
                   System.out.println("No record available");
                   System.out.println("------------------------------\n\n");
         } // end option 1 First Name
         // option 2 allows the user to search based on last name
         else if (option == 2)
              System.out.println("Enter Last Name");
              String last = Console.readString();
              int notthere = -1;
              for (int i=0; i < 10; i++)
                   if (last.equals(records[i].last_Name))
                        System.out.println("----------------------------------");
                        System.out.println(records[i].last_Name + ", " + records[i].first_Name);
                        System.out.println(records[i].phonenumber);
                        System.out.println("----------------------------------\n\n");
                   notthere = i;
                   // if notthere is -1 then there is no record available
                   // if notthere is > -1 then there is a record available
                   } // end search array
                   if (notthere < 0)
                   System.out.println("------------------------------");
                   System.out.println("No record available");
                   System.out.println("------------------------------\n\n");
         } // end option 2 Last Name
         else
              // if the user types in a wrong number, he or she returns to the menu
              Menu(records);
    while (option != 3);
    } // end FindRecord
    //=================================================
    // menu option 2: Quick Search - using binary search
    //=================================================
    static void QuickSearch(PhoneRecord[] records)
         // Sort array - Using Quicksort
         quickSort(records, 0, 9);
         // allow user to enter the last name
         System.out.println("Enter Last Name");
         String last = Console.readString();
         // use binary search to find the target
         int index = binarySearch(records, last);
         // -1 means that there are no records
         if (index == -1)
         System.out.println("------------------------------");
         System.out.println("No record available");
         System.out.println("------------------------------\n\n");
         // print out the record
         System.out.println("----------------------------------");
         System.out.println(records[index].last_Name + ", " + records[index].first_Name);
         System.out.println(records[index].phonenumber);
         System.out.println("----------------------------------\n\n");
         // return to menu
         Menu(records);
    } // end QuickSearch
    public static int binarySearch( Comparable [ ] a, Comparable x )
    int low = 0;
    int high = 9;
    int mid;
    while( low <= high )
    mid = ( low + high ) / 2;
    if( a[ mid ].compareTo( x ) < 0 )
    low = mid + 1;
    else if( a[ mid ].compareTo( x ) > 0 )
    high = mid - 1;
    else
    return mid;
    return -1; // not found
    //=================================================
    // menu option 3: Add a record
    //=================================================
    static void AddRecord(PhoneRecord[] records)
    int option;
    int index = 0;
    // enter details
    do
         // to say that the array is not full yet, I use the variable filled
         int filled = 0;
    System.out.println("Enter the First Name");
    String frst = Console.readString();
    System.out.println("Enter the Last Name");
    String lst = Console.readString();
    System.out.println("Enter the phone number");
    int phn = Console.readInt();
    // search the array for the empty slot
         for (int i=0; i < 10; i++)
              if (records[i].first_Name.equals("empty") && filled == 0)
              records[i].first_Name = frst;
              records[i].last_Name = lst;
              records[i].phonenumber = phn;
              filled = 1;
         // Sort array - Using Quicksort
         quickSort(records, 0, 9);
         // Print out sorted values
         for(int i = 0; i < records.length; i++)
              System.out.println("----------------------------------");
              System.out.println(records[i].last_Name + ", " + records[i].first_Name);
              System.out.println(records[i].phonenumber);
              System.out.println("----------------------------------\n\n");
         System.out.println("Do you want to add more records?");
         System.out.println("1. Yes");
         System.out.println("2. No");
         option = Console.readInt();
         if (option == 2)
              Menu(records);
         // sets the database to full
         int empty = 0;
         for (int i=0; i < 10; i++)
              // empty = 1 means that there is an empty slot
              if (records[i].first_Name.equals("empty"))
                   empty = 1;
         // if the system didn't find an empty slot, the database must be full
         if (empty == 0)
         System.out.println("Database is full");
         option = 2;
         Menu(records);
    while (option != 2);
    } // end AddRecord
    //=================================================
    // menu option 4: Show database
    //=================================================
    static void ShowDatabase(PhoneRecord[] records)
              // shows the entire database
              for (int i=0; i < 10; i++)
                        System.out.println("----------------------------------");
                        System.out.println(records[i].last_Name + ", " + records[i].first_Name);
                        System.out.println(records[i].phonenumber);
                        System.out.println("----------------------------------");
         Menu(records);
    //===============================================
    // Sort array
    //=============================================
    public static void quickSort (Comparable[] a, int left, int right)
         // Sort a[left?right] into ascending order.
         if (left < right) {
         int p = partition(a, left, right);
         quickSort(a, left, p-1);
         quickSort(a, p+1, right);
    static int partition (Comparable[] a, int left, int right)
         // Partition a[left?right] such that
         // a[left?p-1] are all less than or equal to a[p], and
         // a[p+1?right] are all greater than or equal to a[p].
         // Return p.
         Comparable pivot = a[left];
         int p = left;
         for (int r = left+1; r <= right; r++) {
         int comp = a[r].compareTo(pivot);
         if (comp < 0) {
         a[p] = a[r]; a[r] = a[p+1];
    a[p+1] = pivot; p++;          }
         return p;
    } // end class PhoneBook
    PhoneRecord class:
    ================
    public class PhoneRecord implements Comparable
    public int phonenumber;
    public String last_Name;
    public String first_Name;
    public PhoneRecord(String last_Name, String first_Name, int phonenumber)
    this.last_Name = last_Name;
    this.phonenumber = phonenumber;
    this.first_Name = first_Name;
    /* Overload compareTo method */
    public int compareTo(Object obj)
    PhoneRecord tmp = (PhoneRecord)obj;
    // sorting based on last name
    String string1 = this.last_Name;
    String string2 = tmp.last_Name;
    int result = string1.compareTo(string2);
    if(result < 0)
    /* instance lt received */
    return -1;
    else if(result > 0)
    /* instance gt received */
    return 1;
    /* instance == received */
    return 0;

    JosAH wrote:
    prometheuzz wrote:
    bats wrote:
    Hi,
    I keep getting a java.lang.ClassCastException with these two classes when I try to perform a binary search. Any tips?
    ...Looking at your binary search method:
    public static int binarySearch( Comparable [ ] a, Comparable x)I see it expects to be fed Comparable objects. So, whatever you're feeding it, it's not a Comparable (ie: it doesn't implement Comparable), hence the CCE.It's even worse: if an A is a B it doesn't make an A[] a B[].
    kind regards,
    JosMy post didn't make much sense: if there were no Comparables provided as an argument, it would have thrown a compile time error. The problem lies in the compareTo(...) method.

  • Convert Raw Binary String to InputStream

    Hi i want to upload a {color:#003366}JPG image file{color} in a {color:#003366}BLOB{color} field in database. At first i was using {color:#003366}AJA{color}X to send file {color:#003366}path{color} to the {color:#003366}servlet{color} creating a {color:#003366}file Object{color} from it, then {color:#003366}FileInputStream{color} from it, and finally passing it to {color:#003366}preparedstatement.setBinaryStream({color}) method. It worked great. But since{color:#003366} Firefox 3{color} stopped sending full path to database i have to use another method.
    So instead of sending image path i used {color:#ff0000}nsIDOMFile{color} property of Firefox 3. It has a method {color:#003366}getAsBinary(){color} which Returns a DOMString containing the file's data in {color:#003366}raw binary{color} format. Now i access this {color:#003366}string{color} from servlet using{color:#003366} request.getParameter(){color} method which creates a {color:#003366}String containing bit code of the image file{color} (I suppose). Now how to convert this string to {color:#003366}InputStream{color} so that i can store this in BLOB field in database using prepared statement.
    Right now I am using following code but it doesn't seem to work.
    String image=request.getParameter("image");
        try{
          InitialContext context = new InitialContext();
          dsource = (DataSource)context.lookup("java:comp/env/jdbc/DataSource");
          con = dsource.getConnection();
          ps = con.prepareStatement("SOME STATEMENT");
          ByteArrayInputStream imagestream = new ByteArrayInputStream(image.getBytes());
          ps.setBinaryStream(1, imagestream, imagestream.available());
          int i = ps.executeUpdate();Edited by: Wonder01 on Oct 22, 2008 12:24 PM

    Yeah i came across that too. But these show either iframes hack method (which really isn't ajax) or else writing large pieces of code just to generate the binary stream of the file, then manually creating multipart/form-data request were the only options until Firefox 3 introduced nsIDOMFile. See this and read first few lines (you'll understand what i mean). So i send request in the form of a parameter containing Raw Binary format of the file
    Now going over to the servlet side i need to somehow accept this parameter and insert in database. First i need to know how should i receive this on servlet (By using request.getParameter() or some other method). And secondly, how to convert that to either a byte array or InputStream. I searched for it and think this might be useful. This page shows 1.) how to convert an array of raw binary data into an array of ASCII 0 and 1 characters and 2.) how to convert a String to byte array where each char of the String represents an ASCII '0' or '1'. But what i nedd is slightly different, I need to convert a String containing Raw Binary into byte array.
    And thanks for the information on the file paths. It was really helpful

Maybe you are looking for

  • How to install BPEL process manager

    Hi All, i am new to the BPEL ,i have installed BPEL ,but i have doubt that is it correct or not , Please let me know how to install BPEL and SOA suite is needed for BPEL installation give me links to download BPEL software with steps. Thanks Maheswar

  • Transfer videos from the "videos" app into the camera roll?

    I have an Iphone 5.  I want to send my friends some of the videos on my Iphone using whatsapp.  The only problem I have is that whatsapp only allows me to send videos from tha Camera Roll.  And I have the videos saved in the videos app in my Iphone.

  • HT4061 my phone is locked up with an i-tunes symbol and a chord

    my i-phone 4 had an update on the settings icon.  i selected it and it said there was an update.  i selected it and it asked me to review the contract and accept.  i did and an itunes icon and power chord showed up on my screen.  my phone is locked w

  • How do I determine o and ou for an individual SearchResult?

    I am doing a search of an LDAP directory on o=company. When I display the results, I would like to see such things as ou and dn, but they aren't showing up in the results. Is there anyway to derive this from the SearchResult? Thanks.

  • Account Locked Unable to check results !!!

    hi , I had appeared for OCJP 6 on 30th Apr 2013, after appearing the exam i got a mail stating that i have to create a web account to access my results, as i was in office i used my official mail id to create a web account and check my results , sadl