12.10.1-6 baseline
Former-commit-id:ba648f8e72
[formerly b0c7a01c0318ed09bb5eb7ff6cc6550948f19cbc] Former-commit-id:cebe6534ae
This commit is contained in:
parent
82feb4de50
commit
81d91a8289
13 changed files with 41 additions and 124 deletions
|
@ -73,8 +73,7 @@ import com.raytheon.uf.viz.d2d.core.D2DLoadProperties;
|
||||||
* Date Ticket# Engineer Description
|
* Date Ticket# Engineer Description
|
||||||
* ------------ ---------- ----------- --------------------------
|
* ------------ ---------- ----------- --------------------------
|
||||||
* Feb 10, 2009 chammack Initial creation
|
* Feb 10, 2009 chammack Initial creation
|
||||||
* 2012-04-20 DR 14699 D. Friedman Work around race conditions
|
* 2012-04-20 DR 14699 D. Friedman Work around race conditions
|
||||||
* 2012-08-14 DR 15160 D. Friedman Reduce chance of UI blocking
|
|
||||||
*
|
*
|
||||||
* </pre>
|
* </pre>
|
||||||
*
|
*
|
||||||
|
@ -95,7 +94,9 @@ public class D2DTimeMatcher extends AbstractTimeMatcher implements
|
||||||
@Override
|
@Override
|
||||||
public void disposed(AbstractVizResource<?, ?> resource) {
|
public void disposed(AbstractVizResource<?, ?> resource) {
|
||||||
if ((resource == timeMatchBasis)) {
|
if ((resource == timeMatchBasis)) {
|
||||||
internalSetTimeMatchBasis(null);
|
synchronized (D2DTimeMatcher.this) {
|
||||||
|
timeMatchBasis = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -127,11 +128,6 @@ public class D2DTimeMatcher extends AbstractTimeMatcher implements
|
||||||
private boolean needRetry;
|
private boolean needRetry;
|
||||||
private int nRetries;
|
private int nRetries;
|
||||||
|
|
||||||
// DR 15160 state
|
|
||||||
private transient boolean pendingTmbChange = false;
|
|
||||||
private transient boolean inTimeMatch = false;
|
|
||||||
private transient AbstractVizResource<?, ?> pendingTimeMatchBasis;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Default Constructor.
|
* Default Constructor.
|
||||||
*/
|
*/
|
||||||
|
@ -162,15 +158,8 @@ public class D2DTimeMatcher extends AbstractTimeMatcher implements
|
||||||
public void redoTimeMatching(IDescriptor descriptor) throws VizException {
|
public void redoTimeMatching(IDescriptor descriptor) throws VizException {
|
||||||
|
|
||||||
synchronized (this) {
|
synchronized (this) {
|
||||||
if (inTimeMatch) {
|
|
||||||
needRetry = true;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
pendingTmbChange = false;
|
|
||||||
inTimeMatch = true;
|
|
||||||
needRetry = false;
|
needRetry = false;
|
||||||
}
|
|
||||||
try {
|
|
||||||
if (timeMatchBasis != null) {
|
if (timeMatchBasis != null) {
|
||||||
IDescriptor tmDescriptor = timeMatchBasis.getDescriptor();
|
IDescriptor tmDescriptor = timeMatchBasis.getDescriptor();
|
||||||
if (tmDescriptor != null && tmDescriptor != descriptor) {
|
if (tmDescriptor != null && tmDescriptor != descriptor) {
|
||||||
|
@ -216,27 +205,13 @@ public class D2DTimeMatcher extends AbstractTimeMatcher implements
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} finally {
|
if (needRetry) {
|
||||||
boolean scheduleRetry = false;
|
if (nRetries < 200) {
|
||||||
synchronized (this) {
|
++nRetries;
|
||||||
inTimeMatch = false;
|
TimeMatchingJob.scheduleTimeMatch(descriptor);
|
||||||
if (pendingTmbChange) {
|
}
|
||||||
pendingTmbChange = false;
|
} else
|
||||||
changeTimeMatchBasis(pendingTimeMatchBasis);
|
nRetries = 0;
|
||||||
pendingTimeMatchBasis = null;
|
|
||||||
scheduleRetry = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (needRetry) {
|
|
||||||
if (nRetries < 200) {
|
|
||||||
++nRetries;
|
|
||||||
scheduleRetry = true;
|
|
||||||
}
|
|
||||||
} else
|
|
||||||
nRetries = 0;
|
|
||||||
}
|
|
||||||
if (scheduleRetry)
|
|
||||||
TimeMatchingJob.scheduleTimeMatch(descriptor);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -733,7 +708,9 @@ public class D2DTimeMatcher extends AbstractTimeMatcher implements
|
||||||
IDescriptor descriptor) {
|
IDescriptor descriptor) {
|
||||||
if ((resource == timeMatchBasis)
|
if ((resource == timeMatchBasis)
|
||||||
&& (descriptor instanceof AbstractDescriptor)) {
|
&& (descriptor instanceof AbstractDescriptor)) {
|
||||||
internalSetTimeMatchBasis(null);
|
synchronized (this) {
|
||||||
|
timeMatchBasis = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1027,17 +1004,4 @@ public class D2DTimeMatcher extends AbstractTimeMatcher implements
|
||||||
configFactory.resetMultiload();
|
configFactory.resetMultiload();
|
||||||
}
|
}
|
||||||
|
|
||||||
// For DR 15160
|
|
||||||
protected void internalSetTimeMatchBasis(AbstractVizResource<?, ?> timeMatchBasis) {
|
|
||||||
synchronized (this) {
|
|
||||||
if (inTimeMatch) {
|
|
||||||
pendingTmbChange = true;
|
|
||||||
pendingTimeMatchBasis = timeMatchBasis;
|
|
||||||
} else {
|
|
||||||
pendingTmbChange = false;
|
|
||||||
pendingTimeMatchBasis = null;
|
|
||||||
changeTimeMatchBasis(timeMatchBasis);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,6 +25,9 @@ import java.util.Collection;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.eclipse.core.runtime.IStatus;
|
||||||
|
import org.eclipse.core.runtime.Status;
|
||||||
|
|
||||||
import com.raytheon.uf.common.dataplugin.gfe.GridDataHistory;
|
import com.raytheon.uf.common.dataplugin.gfe.GridDataHistory;
|
||||||
import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmID;
|
import com.raytheon.uf.common.dataplugin.gfe.db.objects.ParmID;
|
||||||
import com.raytheon.uf.common.dataplugin.gfe.slice.DiscreteGridSlice;
|
import com.raytheon.uf.common.dataplugin.gfe.slice.DiscreteGridSlice;
|
||||||
|
@ -37,6 +40,7 @@ import com.raytheon.uf.common.status.UFStatus;
|
||||||
import com.raytheon.uf.common.status.UFStatus.Priority;
|
import com.raytheon.uf.common.status.UFStatus.Priority;
|
||||||
import com.raytheon.uf.common.time.TimeRange;
|
import com.raytheon.uf.common.time.TimeRange;
|
||||||
import com.raytheon.uf.common.util.RWLArrayList;
|
import com.raytheon.uf.common.util.RWLArrayList;
|
||||||
|
import com.raytheon.viz.gfe.Activator;
|
||||||
import com.raytheon.viz.gfe.core.DataManager;
|
import com.raytheon.viz.gfe.core.DataManager;
|
||||||
import com.raytheon.viz.gfe.core.griddata.AbstractGridData;
|
import com.raytheon.viz.gfe.core.griddata.AbstractGridData;
|
||||||
import com.raytheon.viz.gfe.core.griddata.IGridData;
|
import com.raytheon.viz.gfe.core.griddata.IGridData;
|
||||||
|
@ -107,8 +111,13 @@ public class VCParm extends VParm implements IParmListChangedListener,
|
||||||
|
|
||||||
// Need to check that the above call to mod.getGpi() did not fail
|
// Need to check that the above call to mod.getGpi() did not fail
|
||||||
if (!mod.isValid()) {
|
if (!mod.isValid()) {
|
||||||
statusHandler.handle(Priority.EVENTB, "Can't get GPI: ",
|
//statusHandler.handle(Priority.EVENTB, "Can't get GPI: ",
|
||||||
this.mod.getErrorString());
|
// this.mod.getErrorString());
|
||||||
|
Activator
|
||||||
|
.getDefault()
|
||||||
|
.getLog()
|
||||||
|
.log(new Status(IStatus.WARNING, Activator.PLUGIN_ID,
|
||||||
|
"Can't get GPI: " + this.mod.getErrorString()));
|
||||||
}
|
}
|
||||||
|
|
||||||
// set the parm type
|
// set the parm type
|
||||||
|
|
|
@ -747,9 +747,10 @@
|
||||||
|
|
||||||
<!--S-R Flow & Suggests Tor Supercells Submenu-->
|
<!--S-R Flow & Suggests Tor Supercells Submenu-->
|
||||||
<contribute xsi:type="toolbarSubMenu" menuText="Thom 5, 5a and 6">
|
<contribute xsi:type="toolbarSubMenu" menuText="Thom 5, 5a and 6">
|
||||||
<contribute xsi:type="menuItem" menuText="Thom 5" key="Thom5" indentText="false" />
|
<contribute xsi:type="menuItem" menuText="Thom 5" key="Thom5" indentText="false" />
|
||||||
<contribute xsi:type="menuItem" menuText="Thom 5a" key="Thom5a" indentText="false" />
|
<contribute xsi:type="menuItem" menuText="Thom 5a" key="Thom5a" indentText="false" />
|
||||||
<contribute xsi:type="menuItem" menuText="Thom 6" key="Thom6" indentText="false" />
|
<contribute xsi:type="menuItem" menuText="Thom 6" key="Thom6" indentText="false" />
|
||||||
|
</contribute>
|
||||||
|
|
||||||
<contribute xsi:type="menuItem" menuText="Vertical Totals" key="vTOT" indentText="false" />
|
<contribute xsi:type="menuItem" menuText="Vertical Totals" key="vTOT" indentText="false" />
|
||||||
<contribute xsi:type="menuItem" menuText="Cross Totals" key="cTOT" indentText="false" />
|
<contribute xsi:type="menuItem" menuText="Cross Totals" key="cTOT" indentText="false" />
|
||||||
|
|
|
@ -20312,7 +20312,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
|
||||||
(exit $ac_status); }; }; then
|
(exit $ac_status); }; }; then
|
||||||
echo "$as_me:$LINENO: result: yes" >&5
|
echo "$as_me:$LINENO: result: yes" >&5
|
||||||
echo "${ECHO_T}yes" >&6; cat >>confdefs.h <<\_ACEOF
|
echo "${ECHO_T}yes" >&6; cat >>confdefs.h <<\_ACEOF
|
||||||
#define HAVE_VLA 1
|
#define HAVE_VLA 0
|
||||||
_ACEOF
|
_ACEOF
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|
|
@ -313,11 +313,8 @@ void jpc_qmfb_split_row(jpc_fix_t *a, int numcols, int parity)
|
||||||
{
|
{
|
||||||
|
|
||||||
int bufsize = JPC_CEILDIVPOW2(numcols, 1);
|
int bufsize = JPC_CEILDIVPOW2(numcols, 1);
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE];
|
jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE];
|
||||||
#else
|
|
||||||
jpc_fix_t splitbuf[bufsize];
|
|
||||||
#endif
|
|
||||||
jpc_fix_t *buf = splitbuf;
|
jpc_fix_t *buf = splitbuf;
|
||||||
register jpc_fix_t *srcptr;
|
register jpc_fix_t *srcptr;
|
||||||
register jpc_fix_t *dstptr;
|
register jpc_fix_t *dstptr;
|
||||||
|
@ -325,7 +322,6 @@ void jpc_qmfb_split_row(jpc_fix_t *a, int numcols, int parity)
|
||||||
register int m;
|
register int m;
|
||||||
int hstartcol;
|
int hstartcol;
|
||||||
|
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
/* Get a buffer. */
|
/* Get a buffer. */
|
||||||
if (bufsize > QMFB_SPLITBUFSIZE) {
|
if (bufsize > QMFB_SPLITBUFSIZE) {
|
||||||
if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
|
if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
|
||||||
|
@ -333,7 +329,6 @@ void jpc_qmfb_split_row(jpc_fix_t *a, int numcols, int parity)
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
if (numcols >= 2) {
|
if (numcols >= 2) {
|
||||||
hstartcol = (numcols + 1 - parity) >> 1;
|
hstartcol = (numcols + 1 - parity) >> 1;
|
||||||
|
@ -367,25 +362,18 @@ void jpc_qmfb_split_row(jpc_fix_t *a, int numcols, int parity)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
/* If the split buffer was allocated on the heap, free this memory. */
|
/* If the split buffer was allocated on the heap, free this memory. */
|
||||||
if (buf != splitbuf) {
|
if (buf != splitbuf) {
|
||||||
jas_free(buf);
|
jas_free(buf);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void jpc_qmfb_split_col(jpc_fix_t *a, int numrows, int stride,
|
void jpc_qmfb_split_col(jpc_fix_t *a, int numrows, int stride,
|
||||||
int parity)
|
int parity)
|
||||||
{
|
{
|
||||||
|
|
||||||
int bufsize = JPC_CEILDIVPOW2(numrows, 1);
|
int bufsize = JPC_CEILDIVPOW2(numrows, 1);
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE];
|
jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE];
|
||||||
#else
|
|
||||||
jpc_fix_t splitbuf[bufsize];
|
|
||||||
#endif
|
|
||||||
jpc_fix_t *buf = splitbuf;
|
jpc_fix_t *buf = splitbuf;
|
||||||
register jpc_fix_t *srcptr;
|
register jpc_fix_t *srcptr;
|
||||||
register jpc_fix_t *dstptr;
|
register jpc_fix_t *dstptr;
|
||||||
|
@ -393,7 +381,6 @@ void jpc_qmfb_split_col(jpc_fix_t *a, int numrows, int stride,
|
||||||
register int m;
|
register int m;
|
||||||
int hstartcol;
|
int hstartcol;
|
||||||
|
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
/* Get a buffer. */
|
/* Get a buffer. */
|
||||||
if (bufsize > QMFB_SPLITBUFSIZE) {
|
if (bufsize > QMFB_SPLITBUFSIZE) {
|
||||||
if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
|
if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
|
||||||
|
@ -401,7 +388,6 @@ void jpc_qmfb_split_col(jpc_fix_t *a, int numrows, int stride,
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
if (numrows >= 2) {
|
if (numrows >= 2) {
|
||||||
hstartcol = (numrows + 1 - parity) >> 1;
|
hstartcol = (numrows + 1 - parity) >> 1;
|
||||||
|
@ -435,25 +421,19 @@ void jpc_qmfb_split_col(jpc_fix_t *a, int numrows, int stride,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
/* If the split buffer was allocated on the heap, free this memory. */
|
/* If the split buffer was allocated on the heap, free this memory. */
|
||||||
if (buf != splitbuf) {
|
if (buf != splitbuf) {
|
||||||
jas_free(buf);
|
jas_free(buf);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void jpc_qmfb_split_colgrp(jpc_fix_t *a, int numrows, int stride,
|
void jpc_qmfb_split_colgrp(jpc_fix_t *a, int numrows, int stride,
|
||||||
int parity)
|
int parity)
|
||||||
{
|
{
|
||||||
|
|
||||||
int bufsize = JPC_CEILDIVPOW2(numrows, 1);
|
int bufsize = JPC_CEILDIVPOW2(numrows, 1);
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE * JPC_QMFB_COLGRPSIZE];
|
jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE * JPC_QMFB_COLGRPSIZE];
|
||||||
#else
|
|
||||||
jpc_fix_t splitbuf[bufsize * JPC_QMFB_COLGRPSIZE];
|
|
||||||
#endif
|
|
||||||
jpc_fix_t *buf = splitbuf;
|
jpc_fix_t *buf = splitbuf;
|
||||||
jpc_fix_t *srcptr;
|
jpc_fix_t *srcptr;
|
||||||
jpc_fix_t *dstptr;
|
jpc_fix_t *dstptr;
|
||||||
|
@ -464,7 +444,6 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a, int numrows, int stride,
|
||||||
int m;
|
int m;
|
||||||
int hstartcol;
|
int hstartcol;
|
||||||
|
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
/* Get a buffer. */
|
/* Get a buffer. */
|
||||||
if (bufsize > QMFB_SPLITBUFSIZE) {
|
if (bufsize > QMFB_SPLITBUFSIZE) {
|
||||||
if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
|
if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
|
||||||
|
@ -472,7 +451,6 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a, int numrows, int stride,
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
if (numrows >= 2) {
|
if (numrows >= 2) {
|
||||||
hstartcol = (numrows + 1 - parity) >> 1;
|
hstartcol = (numrows + 1 - parity) >> 1;
|
||||||
|
@ -524,25 +502,18 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a, int numrows, int stride,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
/* If the split buffer was allocated on the heap, free this memory. */
|
/* If the split buffer was allocated on the heap, free this memory. */
|
||||||
if (buf != splitbuf) {
|
if (buf != splitbuf) {
|
||||||
jas_free(buf);
|
jas_free(buf);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void jpc_qmfb_split_colres(jpc_fix_t *a, int numrows, int numcols,
|
void jpc_qmfb_split_colres(jpc_fix_t *a, int numrows, int numcols,
|
||||||
int stride, int parity)
|
int stride, int parity)
|
||||||
{
|
{
|
||||||
|
|
||||||
int bufsize = JPC_CEILDIVPOW2(numrows, 1);
|
int bufsize = JPC_CEILDIVPOW2(numrows, 1);
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE * JPC_QMFB_COLGRPSIZE];
|
jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE * JPC_QMFB_COLGRPSIZE];
|
||||||
#else
|
|
||||||
jpc_fix_t splitbuf[bufsize * numcols];
|
|
||||||
#endif
|
|
||||||
jpc_fix_t *buf = splitbuf;
|
jpc_fix_t *buf = splitbuf;
|
||||||
jpc_fix_t *srcptr;
|
jpc_fix_t *srcptr;
|
||||||
jpc_fix_t *dstptr;
|
jpc_fix_t *dstptr;
|
||||||
|
@ -553,7 +524,6 @@ void jpc_qmfb_split_colres(jpc_fix_t *a, int numrows, int numcols,
|
||||||
int m;
|
int m;
|
||||||
int hstartcol;
|
int hstartcol;
|
||||||
|
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
/* Get a buffer. */
|
/* Get a buffer. */
|
||||||
if (bufsize > QMFB_SPLITBUFSIZE) {
|
if (bufsize > QMFB_SPLITBUFSIZE) {
|
||||||
if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
|
if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
|
||||||
|
@ -561,7 +531,6 @@ void jpc_qmfb_split_colres(jpc_fix_t *a, int numrows, int numcols,
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
if (numrows >= 2) {
|
if (numrows >= 2) {
|
||||||
hstartcol = (numrows + 1 - parity) >> 1;
|
hstartcol = (numrows + 1 - parity) >> 1;
|
||||||
|
@ -613,13 +582,10 @@ void jpc_qmfb_split_colres(jpc_fix_t *a, int numrows, int numcols,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
/* If the split buffer was allocated on the heap, free this memory. */
|
/* If the split buffer was allocated on the heap, free this memory. */
|
||||||
if (buf != splitbuf) {
|
if (buf != splitbuf) {
|
||||||
jas_free(buf);
|
jas_free(buf);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void jpc_qmfb_join_row(jpc_fix_t *a, int numcols, int parity)
|
void jpc_qmfb_join_row(jpc_fix_t *a, int numcols, int parity)
|
||||||
|
@ -684,18 +650,14 @@ void jpc_qmfb_join_col(jpc_fix_t *a, int numrows, int stride,
|
||||||
{
|
{
|
||||||
|
|
||||||
int bufsize = JPC_CEILDIVPOW2(numrows, 1);
|
int bufsize = JPC_CEILDIVPOW2(numrows, 1);
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
jpc_fix_t joinbuf[QMFB_JOINBUFSIZE];
|
jpc_fix_t joinbuf[QMFB_JOINBUFSIZE];
|
||||||
#else
|
|
||||||
jpc_fix_t joinbuf[bufsize];
|
|
||||||
#endif
|
|
||||||
jpc_fix_t *buf = joinbuf;
|
jpc_fix_t *buf = joinbuf;
|
||||||
register jpc_fix_t *srcptr;
|
register jpc_fix_t *srcptr;
|
||||||
register jpc_fix_t *dstptr;
|
register jpc_fix_t *dstptr;
|
||||||
register int n;
|
register int n;
|
||||||
int hstartcol;
|
int hstartcol;
|
||||||
|
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
/* Allocate memory for the join buffer from the heap. */
|
/* Allocate memory for the join buffer from the heap. */
|
||||||
if (bufsize > QMFB_JOINBUFSIZE) {
|
if (bufsize > QMFB_JOINBUFSIZE) {
|
||||||
if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
|
if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
|
||||||
|
@ -703,7 +665,6 @@ void jpc_qmfb_join_col(jpc_fix_t *a, int numrows, int stride,
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
hstartcol = (numrows + 1 - parity) >> 1;
|
hstartcol = (numrows + 1 - parity) >> 1;
|
||||||
|
|
||||||
|
@ -735,12 +696,10 @@ void jpc_qmfb_join_col(jpc_fix_t *a, int numrows, int stride,
|
||||||
++srcptr;
|
++srcptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
/* If the join buffer was allocated on the heap, free this memory. */
|
/* If the join buffer was allocated on the heap, free this memory. */
|
||||||
if (buf != joinbuf) {
|
if (buf != joinbuf) {
|
||||||
jas_free(buf);
|
jas_free(buf);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -749,11 +708,8 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a, int numrows, int stride,
|
||||||
{
|
{
|
||||||
|
|
||||||
int bufsize = JPC_CEILDIVPOW2(numrows, 1);
|
int bufsize = JPC_CEILDIVPOW2(numrows, 1);
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
jpc_fix_t joinbuf[QMFB_JOINBUFSIZE * JPC_QMFB_COLGRPSIZE];
|
jpc_fix_t joinbuf[QMFB_JOINBUFSIZE * JPC_QMFB_COLGRPSIZE];
|
||||||
#else
|
|
||||||
jpc_fix_t joinbuf[bufsize * JPC_QMFB_COLGRPSIZE];
|
|
||||||
#endif
|
|
||||||
jpc_fix_t *buf = joinbuf;
|
jpc_fix_t *buf = joinbuf;
|
||||||
jpc_fix_t *srcptr;
|
jpc_fix_t *srcptr;
|
||||||
jpc_fix_t *dstptr;
|
jpc_fix_t *dstptr;
|
||||||
|
@ -763,7 +719,6 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a, int numrows, int stride,
|
||||||
register int i;
|
register int i;
|
||||||
int hstartcol;
|
int hstartcol;
|
||||||
|
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
/* Allocate memory for the join buffer from the heap. */
|
/* Allocate memory for the join buffer from the heap. */
|
||||||
if (bufsize > QMFB_JOINBUFSIZE) {
|
if (bufsize > QMFB_JOINBUFSIZE) {
|
||||||
if (!(buf = jas_alloc2(bufsize, JPC_QMFB_COLGRPSIZE * sizeof(jpc_fix_t)))) {
|
if (!(buf = jas_alloc2(bufsize, JPC_QMFB_COLGRPSIZE * sizeof(jpc_fix_t)))) {
|
||||||
|
@ -771,7 +726,6 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a, int numrows, int stride,
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
hstartcol = (numrows + 1 - parity) >> 1;
|
hstartcol = (numrows + 1 - parity) >> 1;
|
||||||
|
|
||||||
|
@ -821,25 +775,19 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a, int numrows, int stride,
|
||||||
srcptr += JPC_QMFB_COLGRPSIZE;
|
srcptr += JPC_QMFB_COLGRPSIZE;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
/* If the join buffer was allocated on the heap, free this memory. */
|
/* If the join buffer was allocated on the heap, free this memory. */
|
||||||
if (buf != joinbuf) {
|
if (buf != joinbuf) {
|
||||||
jas_free(buf);
|
jas_free(buf);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void jpc_qmfb_join_colres(jpc_fix_t *a, int numrows, int numcols,
|
void jpc_qmfb_join_colres(jpc_fix_t *a, int numrows, int numcols,
|
||||||
int stride, int parity)
|
int stride, int parity)
|
||||||
{
|
{
|
||||||
|
|
||||||
int bufsize = JPC_CEILDIVPOW2(numrows, 1);
|
int bufsize = JPC_CEILDIVPOW2(numrows, 1);
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
jpc_fix_t joinbuf[QMFB_JOINBUFSIZE * JPC_QMFB_COLGRPSIZE];
|
jpc_fix_t joinbuf[QMFB_JOINBUFSIZE * JPC_QMFB_COLGRPSIZE];
|
||||||
#else
|
|
||||||
jpc_fix_t joinbuf[bufsize * numcols];
|
|
||||||
#endif
|
|
||||||
jpc_fix_t *buf = joinbuf;
|
jpc_fix_t *buf = joinbuf;
|
||||||
jpc_fix_t *srcptr;
|
jpc_fix_t *srcptr;
|
||||||
jpc_fix_t *dstptr;
|
jpc_fix_t *dstptr;
|
||||||
|
@ -849,7 +797,6 @@ void jpc_qmfb_join_colres(jpc_fix_t *a, int numrows, int numcols,
|
||||||
register int i;
|
register int i;
|
||||||
int hstartcol;
|
int hstartcol;
|
||||||
|
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
/* Allocate memory for the join buffer from the heap. */
|
/* Allocate memory for the join buffer from the heap. */
|
||||||
if (bufsize > QMFB_JOINBUFSIZE) {
|
if (bufsize > QMFB_JOINBUFSIZE) {
|
||||||
if (!(buf = jas_alloc3(bufsize, numcols, sizeof(jpc_fix_t)))) {
|
if (!(buf = jas_alloc3(bufsize, numcols, sizeof(jpc_fix_t)))) {
|
||||||
|
@ -857,7 +804,6 @@ void jpc_qmfb_join_colres(jpc_fix_t *a, int numrows, int numcols,
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
hstartcol = (numrows + 1 - parity) >> 1;
|
hstartcol = (numrows + 1 - parity) >> 1;
|
||||||
|
|
||||||
|
@ -907,13 +853,10 @@ void jpc_qmfb_join_colres(jpc_fix_t *a, int numrows, int numcols,
|
||||||
srcptr += numcols;
|
srcptr += numcols;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !defined(HAVE_VLA)
|
|
||||||
/* If the join buffer was allocated on the heap, free this memory. */
|
/* If the join buffer was allocated on the heap, free this memory. */
|
||||||
if (buf != joinbuf) {
|
if (buf != joinbuf) {
|
||||||
jas_free(buf);
|
jas_free(buf);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/******************************************************************************\
|
/******************************************************************************\
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
Name: awips2-python
|
Name: awips2-python
|
||||||
Summary: AWIPS II Python Distribution
|
Summary: AWIPS II Python Distribution
|
||||||
Version: 2.7.1
|
Version: 2.7.1
|
||||||
Release: 6
|
Release: 7
|
||||||
Group: AWIPSII
|
Group: AWIPSII
|
||||||
BuildRoot: %{_build_root}
|
BuildRoot: %{_build_root}
|
||||||
BuildArch: %{_build_arch}
|
BuildArch: %{_build_arch}
|
||||||
|
@ -308,4 +308,4 @@ rm -rf %{_build_root}
|
||||||
%dir /awips2/python/include
|
%dir /awips2/python/include
|
||||||
/awips2/python/include/*
|
/awips2/python/include/*
|
||||||
%dir /awips2/python/bin
|
%dir /awips2/python/bin
|
||||||
/awips2/python/bin/*
|
/awips2/python/bin/*
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -205,6 +205,7 @@ if [ "${1}" = "-full" ]; then
|
||||||
buildRPM "awips2-python-pygtk"
|
buildRPM "awips2-python-pygtk"
|
||||||
buildRPM "awips2-python-pycairo"
|
buildRPM "awips2-python-pycairo"
|
||||||
|
|
||||||
|
buildRPM "awips2"
|
||||||
buildRPM "awips2-adapt-native"
|
buildRPM "awips2-adapt-native"
|
||||||
buildRPM "awips2-aviation-shared"
|
buildRPM "awips2-aviation-shared"
|
||||||
buildRPM "awips2-cli"
|
buildRPM "awips2-cli"
|
||||||
|
@ -221,7 +222,6 @@ if [ "${1}" = "-full" ]; then
|
||||||
buildRPM "awips2-notification"
|
buildRPM "awips2-notification"
|
||||||
buildRPM "awips2-pypies"
|
buildRPM "awips2-pypies"
|
||||||
buildRPM "awips2-data.hdf5-topo"
|
buildRPM "awips2-data.hdf5-topo"
|
||||||
buildRPM "awips2"
|
|
||||||
buildRPM "awips2-rcm"
|
buildRPM "awips2-rcm"
|
||||||
buildLocalizationRPMs
|
buildLocalizationRPMs
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
|
|
Loading…
Add table
Reference in a new issue