- Processor::Blocks were assigned in/out buffers from outside

git-svn-id: http://moon:8086/svn/software/trunk/libsrc/cpp@1024 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
2022-06-17 11:23:46 +00:00
parent 8b8ac38727
commit 9de592a8c9
3 changed files with 23 additions and 26 deletions
+15 -3
View File
@@ -14,6 +14,7 @@ class Block
Block(size_t num_in, size_t num_out)
: m_num_in(num_in)
, m_num_out(num_out)
, m_buf_in(nullptr)
, m_buf_out(nullptr)
, m_isBypass(false)
{
@@ -22,7 +23,12 @@ class Block
virtual ~Block() = default;
virtual void process() = 0;
virtual IBuffer* buffer_in(size_t index=0) = 0;
IBuffer* buffer_in(size_t index=0)
{
return m_buf_in;
}
IBuffer* buffer_out(size_t index=0)
{
return m_buf_out;
@@ -38,14 +44,20 @@ class Block
return m_num_out;
}
void buffer_out_add(IBuffer *out)
void buffer_in_add(IBuffer *buf)
{
m_buf_out = out;
m_buf_in = buf;
}
void buffer_out_add(IBuffer *buf)
{
m_buf_out = buf;
}
protected:
size_t m_num_in;
size_t m_num_out;
IBuffer* m_buf_in;
IBuffer* m_buf_out;
bool m_isBypass;