Modified C++ implementation of compute graph to support new scheduler

pull/53/head
Christophe Favergeon 3 years ago
parent c91c8d6cec
commit 30be135940

@ -137,8 +137,8 @@ public:
GenericNode(FIFOBase<IN> &src,FIFOBase<OUT> &dst):mSrc(src),mDst(dst){}; GenericNode(FIFOBase<IN> &src,FIFOBase<OUT> &dst):mSrc(src),mDst(dst){};
protected: protected:
OUT * getWriteBuffer(){return mDst.getWriteBuffer(outputSize);}; OUT * getWriteBuffer(int nb = outputSize){return mDst.getWriteBuffer(nb);};
IN * getReadBuffer(){return mSrc.getReadBuffer(inputSize);}; IN * getReadBuffer(int nb = inputSize){return mSrc.getReadBuffer(nb);};
private: private:
FIFOBase<IN> &mSrc; FIFOBase<IN> &mSrc;
@ -153,9 +153,9 @@ public:
mDst1(dst1),mDst2(dst2){}; mDst1(dst1),mDst2(dst2){};
protected: protected:
OUT1 * getWriteBuffer1(){return mDst1.getWriteBuffer(output1Size);}; OUT1 * getWriteBuffer1(int nb=output1Size){return mDst1.getWriteBuffer(nb);};
OUT2 * getWriteBuffer2(){return mDst2.getWriteBuffer(output2Size);}; OUT2 * getWriteBuffer2(int nb=output2Size){return mDst2.getWriteBuffer(nb);};
IN * getReadBuffer(){return mSrc.getReadBuffer(inputSize);}; IN * getReadBuffer(int nb=inputSize){return mSrc.getReadBuffer(nb);};
private: private:
FIFOBase<IN> &mSrc; FIFOBase<IN> &mSrc;
@ -178,11 +178,11 @@ public:
mDst1(dst1),mDst2(dst2),mDst3(dst3){}; mDst1(dst1),mDst2(dst2),mDst3(dst3){};
protected: protected:
OUT1 * getWriteBuffer1(){return mDst1.getWriteBuffer(output1Size);}; OUT1 * getWriteBuffer1(int nb=output1Size){return mDst1.getWriteBuffer(nb);};
OUT2 * getWriteBuffer2(){return mDst2.getWriteBuffer(output2Size);}; OUT2 * getWriteBuffer2(int nb=output2Size){return mDst2.getWriteBuffer(nb);};
OUT3 * getWriteBuffer3(){return mDst3.getWriteBuffer(output3Size);}; OUT3 * getWriteBuffer3(int nb=output3Size){return mDst3.getWriteBuffer(nb);};
IN * getReadBuffer(){return mSrc.getReadBuffer(inputSize);}; IN * getReadBuffer(int nb=inputSize){return mSrc.getReadBuffer(nb);};
private: private:
FIFOBase<IN> &mSrc; FIFOBase<IN> &mSrc;
@ -201,9 +201,9 @@ public:
mDst(dst){}; mDst(dst){};
protected: protected:
OUT * getWriteBuffer(){return mDst.getWriteBuffer(outputSize);}; OUT * getWriteBuffer(int nb=outputSize){return mDst.getWriteBuffer(nb);};
IN1 * getReadBuffer1(){return mSrc1.getReadBuffer(input1Size);}; IN1 * getReadBuffer1(int nb=input1Size){return mSrc1.getReadBuffer(nb);};
IN2 * getReadBuffer2(){return mSrc2.getReadBuffer(input2Size);}; IN2 * getReadBuffer2(int nb=input2Size){return mSrc2.getReadBuffer(nb);};
private: private:
FIFOBase<IN1> &mSrc1; FIFOBase<IN1> &mSrc1;
@ -220,7 +220,7 @@ public:
GenericSource(FIFOBase<OUT> &dst):mDst(dst){}; GenericSource(FIFOBase<OUT> &dst):mDst(dst){};
protected: protected:
OUT * getWriteBuffer(){return mDst.getWriteBuffer(outputSize);}; OUT * getWriteBuffer(int nb=outputSize){return mDst.getWriteBuffer(nb);};
private: private:
FIFOBase<OUT> &mDst; FIFOBase<OUT> &mDst;
@ -233,7 +233,7 @@ public:
GenericSink(FIFOBase<IN> &src):mSrc(src){}; GenericSink(FIFOBase<IN> &src):mSrc(src){};
protected: protected:
IN * getReadBuffer(){return mSrc.getReadBuffer(inputSize);}; IN * getReadBuffer(int nb=inputSize){return mSrc.getReadBuffer(nb);};
private: private:
FIFOBase<IN> &mSrc; FIFOBase<IN> &mSrc;
@ -385,7 +385,7 @@ public:
#if !defined(CHECKERROR) #if !defined(CHECKERROR)
#define CHECKERROR if (cgStaticError < 0) \ #define CHECKERROR if (cgStaticError < 0) \
{\ {\
break;\ goto errorHandling;\
} }
#endif #endif

@ -96,6 +96,7 @@ uint32_t scheduler(int *error,int someVariable)
nbSchedule++; nbSchedule++;
} }
errorHandling:
*error=cgStaticError; *error=cgStaticError;
return(nbSchedule); return(nbSchedule);
} }

@ -206,6 +206,7 @@ uint32_t scheduler(int *error,int opt1,int opt2)
nbSchedule++; nbSchedule++;
} }
errorHandling:
*error=cgStaticError; *error=cgStaticError;
return(nbSchedule); return(nbSchedule);
} }

@ -180,6 +180,7 @@ uint32_t scheduler(int *error)
nbSchedule++; nbSchedule++;
} }
errorHandling:
*error=cgStaticError; *error=cgStaticError;
return(nbSchedule); return(nbSchedule);
} }

@ -122,6 +122,7 @@ uint32_t scheduler(int *error,arm_mfcc_instance_f32 *mfccConfig)
nbSchedule++; nbSchedule++;
} }
errorHandling:
*error=cgStaticError; *error=cgStaticError;
return(nbSchedule); return(nbSchedule);
} }

@ -148,6 +148,7 @@ uint32_t scheduler(int *error,int someVariable)
nbSchedule++; nbSchedule++;
} }
errorHandling:
*error=cgStaticError; *error=cgStaticError;
return(nbSchedule); return(nbSchedule);
} }

@ -74,6 +74,7 @@ class Configuration:
# Display FIFO buffers in graph instead of datatype # Display FIFO buffers in graph instead of datatype
self.displayFIFOBuf = False self.displayFIFOBuf = False
@property @property
def debug(self): def debug(self):
return (self.debugLimit > 0) return (self.debugLimit > 0)

@ -128,6 +128,7 @@ uint32_t {{config.schedName}}(int *error{{optionalargs()}})
nbSchedule++; nbSchedule++;
} }
errorHandling:
*error=cgStaticError; *error=cgStaticError;
return(nbSchedule); return(nbSchedule);
} }

@ -70,6 +70,7 @@ uint32_t {{config.schedName}}(int *error{{optionalargs()}})
/* Run several schedule iterations */ /* Run several schedule iterations */
{% block scheduleLoop %} {% block scheduleLoop %}
{% endblock %} {% endblock %}
errorHandling:
*error=cgStaticError; *error=cgStaticError;
return(nbSchedule); return(nbSchedule);
} }
Loading…
Cancel
Save