| | |
| | |
|
| | | }
|
| | |
|
| | | void pl_gainer_deleter_func(PipeMaterial* pm)
|
| | | void pl_gainer_deleter_func(PipeMaterial* pm, bool lastRet)
|
| | | {
|
| | | PL_Gainer_Internal* in = (PL_Gainer_Internal*)(pm->args);
|
| | |
|
| | |
| | | break;
|
| | | default:
|
| | | //#todo support list or pm::copier operator
|
| | | LOG_ERROR << "Only support PMT_BYTES / PMT_FRAME";
|
| | | LOG_ERROR << "Only support PMT_BYTES / PMT_FRAME" << std::endl;
|
| | | return;
|
| | | }
|
| | | }
|
| | |
| | |
|
| | | bool PL_Gainer::pay(const PipeMaterial& pm)
|
| | | {
|
| | | return true;
|
| | | return false;
|
| | | }
|
| | |
|
| | | bool PL_Gainer::gain(PipeMaterial& pm)
|
| | |
| | | break;
|
| | | default:
|
| | | //#todo support list or pm::copier operator
|
| | | LOG_ERROR << "Only support PMT_BYTES / PMT_FRAME";
|
| | | LOG_ERROR << "Only support PMT_BYTES / PMT_FRAME" << std::endl;
|
| | | return false;
|
| | | }
|
| | |
|
| | |
| | | newPm.former = this;
|
| | |
|
| | | if (pm.deleter != nullptr)
|
| | | (pm.deleter)(&pm);
|
| | | (pm.deleter)(&pm, false);//#todo
|
| | |
|
| | | pm = newPm;
|
| | | return true;
|