/* 
 * dsp_ic_rt.h
 *
 *  Author:  R. Firtion
 *  Copyright (c) 1995-2000 The MathWorks, Inc.
 *  $Revision: 1.4 $  $Date: 2000/03/09 03:20:30 $
 *
 * Abstract:
 *   Header file for initial condition copy functions
 */

#ifndef DSP_IC_RT_H
#define DSP_IC_RT_H

#include "tmwtypes.h" /* For byte_T, int_T, etc. */

typedef struct {
    const byte_T *prIC;
    const byte_T *piIC;
    byte_T       *buffer;

    int_T nChans;
    int_T dWorkRows;
    int_T numICs;
    int_T portNum;
    int_T dataPortWidth;
    int_T bytesPerRealElement;

} TMWDSP_CopyICsFcnArgs; /* TMWDSP_ used to match TLC code since this file is shared. */


extern void Copy3DSampleMatrixICsRealToReal(      const TMWDSP_CopyICsFcnArgs *args);
extern void Copy3DSampleMatrixICsRealToComplex(   const TMWDSP_CopyICsFcnArgs *args);
extern void Copy3DSampleMatrixICsComplexToComplex(const TMWDSP_CopyICsFcnArgs *args);
extern void Copy3DFrameMatrixICsRealToReal(       const TMWDSP_CopyICsFcnArgs *args);
extern void Copy3DFrameMatrixICsRealToComplex(    const TMWDSP_CopyICsFcnArgs *args);
extern void Copy3DFrameMatrixICsComplexToComplex( const TMWDSP_CopyICsFcnArgs *args);
extern void CopyVectorICsRealToReal(              const TMWDSP_CopyICsFcnArgs *args);
extern void CopyVectorICsRealToComplex(           const TMWDSP_CopyICsFcnArgs *args);
extern void CopyVectorICsComplexToComplex(        const TMWDSP_CopyICsFcnArgs *args);
extern void CopyScalarICsRealToReal(              const TMWDSP_CopyICsFcnArgs *args);
extern void CopyScalarICsRealToComplex(           const TMWDSP_CopyICsFcnArgs *args);
extern void CopyScalarICsComplexToComplex(        const TMWDSP_CopyICsFcnArgs *args);


#endif /* DSP_IC_RT_H */

/* [EOF] dsp_ic_rt.h */
