File: jDSRImageValue.java

package info (click to toggle)
dicomscope 3.6.0-28
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 6,256 kB
  • sloc: java: 22,911; cpp: 5,957; sh: 270; makefile: 45
file content (187 lines) | stat: -rw-r--r-- 6,671 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
/*
 *
 *  Copyright (C) 2000-2003, OFFIS and Institute for MicroTherapy
 *
 *  This software and supporting documentation were developed by
 *
 *    Kuratorium OFFIS e.V.
 *    Healthcare Information and Communication Systems
 *    Escherweg 2
 *    D-26121 Oldenburg, Germany
 *
 *  and
 *
 *    University of Witten/Herdecke
 *    Department of Radiology and MicroTherapy
 *    Institute for MicroTherapy
 *    Medical computer science
 *
 *    Universitaetsstrasse 142
 *    44799 Bochum, Germany
 *
 *    http://www.microtherapy.de/go/cs
 *    mailto:computer.science@microtherapy.de
 *
 *  THIS SOFTWARE IS MADE AVAILABLE,  AS IS,  AND THE INSTITUTE MAKES  NO
 *  WARRANTY REGARDING THE SOFTWARE, ITS PERFORMANCE, ITS MERCHANTABILITY
 *  OR FITNESS FOR ANY PARTICULAR USE, FREEDOM FROM ANY COMPUTER DISEASES
 *  OR ITS CONFORMITY TO ANY SPECIFICATION. THE ENTIRE RISK AS TO QUALITY
 *  AND PERFORMANCE OF THE SOFTWARE IS WITH THE USER.
 *
 *  Author :      $Author: kleber $
 *  Last update : $Date: 2001/06/06 10:32:30 $
 *  Revision :    $Revision: 1.1.1.1 $
 *  State:        $State: Exp $
*/


package J2Ci;


/**
 *  <em>jDSRImageValue</em> represents the relating C++ class
 *  DSRImageReferenceValue in Java.
 *
 *  @author 	Joerg Riesmeier
 */
public class jDSRImageValue
{
    /**
     * Constructor is disabled !!!
    */
    private jDSRImageValue()
    {
        // emtpy
    }


    /**
     * Constructor for attaching an existing C++ object. FOR INTERNAL USE ONLY!
     * @param attachAdr address of C++ object
    */
    public jDSRImageValue(long attachAdr)
    {
        cppClassAddress = attachAdr;
    }


    // --------------------- methods for C++ class binding ---------------------

    /**
     * Address of relating C++ object [for access to the DLL].
     * Never change manually!
    */
    private long cppClassAddress = (long) 0; // never change!



    // --------------------------- native methods ------------------------------

    /* --- Image Value --- */

    /** get image SOP class UID
     ** @return current image SOP class UID (might be invalid or an empty string)
     */
    public native String getImageSOPClassUID();

    /** get image SOP class name.
     *  The SOP class name as defined in the OFFIS dcmtk is used if available,
     *  an empty string if the SOP class UID is also empty, the static string
     *  "unknown SOP class" plus the SOP class UID otherwise.
     ** @return name of the current image SOP class (should never be null or empty)
     */
    public native String getImageSOPClassName();

    /** get image SOP instance UID
     ** @return current image SOP instance UID (might be invalid or an empty string)
     */
    public native String getImageSOPInstanceUID();

    /** set image SOP class UID and SOP instance UID value.
     *  Before setting the values they are checked (non-empty UIDs).  If the value
     *  pair is invalid the current value pair is not replaced and remains unchanged.
     ** @param  sopClassUID     SOP class UID of the image to be set
     *  @param  sopInstanceUID  SOP instance UID of the image to be set
     ** @return status, EC_Normal if successful, an error code otherwise
     */
    public native int setImageReference(String sopClassUID,
                                        String sopInstanceUID);

    /** get presentation state SOP class UID
     ** @return current pstate SOP class UID (might be invalid or an empty string)
     */
    public native String getPStateSOPClassUID();

    /** get presentation state SOP class name.
     *  The SOP class name as defined in the OFFIS dcmtk is used if available,
     *  an empty string if the SOP class UID is also empty, the static string
     *  "unknown SOP class" plus the SOP class UID otherwise.
     ** @return name of the current pstate SOP class (should never be null or empty)
     */
    public native String getPStateSOPClassName();

    /** get presentation state SOP instance UID
     ** @return current pstate SOP instance UID (might be invalid or an empty string)
     */
    public native String getPStateSOPInstanceUID();

    /** set presentation state SOP class UID and SOP instance UID value.
     *  Before setting the values they are checked.  The presentation state object is
     *  "valid" if both UIDs are empty or both are not empty and SOP class UID equals
     *  to "GrayscaleSoftcopyPresentationStateStorage".  If the value pair is invalid
     *  the current value pair is not replaced and remains unchanged.
     ** @param  sopClassUID     SOP class UID of the pstate to be set
     *  @param  sopInstanceUID  SOP instance UID of the pstate to be set
     ** @return status, EC_Normal if successful, an error code otherwise
     */
    public native int setPStateReference(String sopClassUID,
                                         String sopInstanceUID);

    /** clear the referenced frame list
     */
    public native void clearFrameList();

    /** get number of entries contained in the referenced frame list
     ** @return number of frames if any, 0 otherwise
     */
    public native int getNumberOfFrames();

    /** get copy of the specified entry from the referenced frame list
     ** @param  idx          index of the entry to be returned (starting from 1)
     *  @param  frameNumber  reference to variable where the frame number should be stored
     ** @return status, EC_Normal if successful, an error code otherwise
     */
    public native int getFrame(int idx,
                               jIntByRef frameNumber);

    /** add entry to the referenced frame list.
     *  Please note that only frames are added that are not already contained in the list.
     ** @param  frameNumber  frame number to be added
     */
    public native void addFrame(int frameNumber);

    /** remove entry from the referenced frame list
     ** @param  idx  index of the entry to be removed (starting from 1)
     ** @return status, EC_Normal if successful, an error code otherwise
     */
    public native int removeFrame(int idx);

    /** check whether the image reference applies to a specific frame.
     *  The image reference applies to a frame (of multiframe images) if the list of
     *  referenced frame numbers is empty or the frame number is part of the list.
     ** @param  frameNumber  number of the frame to be checked
     ** @return OFTrue if reference applies to the specified frame, OFFalse otherwise
     */
    public native boolean appliesToFrame(int frameNumber);
}


/*
 *  CVS Log
 *  $Log: jDSRImageValue.java,v $
 *  Revision 1.1.1.1  2001/06/06 10:32:30  kleber
 *  Init commit for DICOMscope 3.5
 *  Create new CVS
 *
 *
*/