001/*
002 * BridJ - Dynamic and blazing-fast native interop for Java.
003 * http://bridj.googlecode.com/
004 *
005 * Copyright (c) 2010-2013, Olivier Chafik (http://ochafik.com/)
006 * All rights reserved.
007 *
008 * Redistribution and use in source and binary forms, with or without
009 * modification, are permitted provided that the following conditions are met:
010 * 
011 *     * Redistributions of source code must retain the above copyright
012 *       notice, this list of conditions and the following disclaimer.
013 *     * Redistributions in binary form must reproduce the above copyright
014 *       notice, this list of conditions and the following disclaimer in the
015 *       documentation and/or other materials provided with the distribution.
016 *     * Neither the name of Olivier Chafik nor the
017 *       names of its contributors may be used to endorse or promote products
018 *       derived from this software without specific prior written permission.
019 * 
020 * THIS SOFTWARE IS PROVIDED BY OLIVIER CHAFIK AND CONTRIBUTORS ``AS IS'' AND ANY
021 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
022 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
023 * DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
024 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
025 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
026 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
027 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
028 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
029 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
030 */
031package org.bridj.cpp.com;
032
033import org.bridj.CRuntime;
034import org.bridj.Pointer;
035import org.bridj.StructObject;
036import org.bridj.ann.Field;
037import org.bridj.ann.Library;
038import org.bridj.ann.Runtime;
039
040/**
041 * This file was autogenerated by <a
042 * href="http://jnaerator.googlecode.com/">JNAerator</a>,<br>
043 * a tool written by <a href="http://ochafik.com/">Olivier Chafik</a> that <a
044 * href="http://code.google.com/p/jnaerator/wiki/CreditsAndLicense">uses a few
045 * opensource projects.</a>.<br>
046 * For help, please visit <a
047 * href="http://nativelibs4java.googlecode.com/">NativeLibs4Java</a> or <a
048 * href="http://bridj.googlecode.com/">BridJ</a> .
049 */
050@Runtime(CRuntime.class)
051public class DECIMAL extends StructObject {
052    /// C type : USHORT
053
054    @Field(0)
055    public short wReserved() {
056        return this.io.getShortField(this, 0);
057    }
058    /// C type : USHORT
059
060    @Field(0)
061    public DECIMAL wReserved(short wReserved) {
062        this.io.setShortField(this, 0, wReserved);
063        return this;
064    }
065    /// C type : USHORT
066
067    public final short wReserved_$eq(short wReserved) {
068        wReserved(wReserved);
069        return wReserved;
070    }
071
072    @Field(1)
073    public byte scale() {
074        return this.io.getByteField(this, 1);
075    }
076
077    @Field(1)
078    public DECIMAL scale(byte scale) {
079        this.io.setByteField(this, 1, scale);
080        return this;
081    }
082
083    public final byte scale_$eq(byte scale) {
084        scale(scale);
085        return scale;
086    }
087
088    @Field(2)
089    public byte sign() {
090        return this.io.getByteField(this, 2);
091    }
092
093    @Field(2)
094    public DECIMAL sign(byte sign) {
095        this.io.setByteField(this, 2, sign);
096        return this;
097    }
098
099    public final byte sign_$eq(byte sign) {
100        sign(sign);
101        return sign;
102    }
103    /// C type : ULONG
104
105    @Field(3)
106    public int Hi32() {
107        return this.io.getIntField(this, 3);
108    }
109    /// C type : ULONG
110
111    @Field(3)
112    public DECIMAL Hi32(int Hi32) {
113        this.io.setIntField(this, 3, Hi32);
114        return this;
115    }
116    /// C type : ULONG
117
118    public final int Hi32_$eq(int Hi32) {
119        Hi32(Hi32);
120        return Hi32;
121    }
122
123    @Field(4)
124    public long Lo64() {
125        return this.io.getLongField(this, 4);
126    }
127
128    @Field(4)
129    public DECIMAL Lo64(long Lo64) {
130        this.io.setLongField(this, 4, Lo64);
131        return this;
132    }
133
134    public final long Lo64_$eq(long Lo64) {
135        Lo64(Lo64);
136        return Lo64;
137    }
138}