| | |
| | | class PipeLineElem; |
| | | class PipeLine; |
| | | |
| | | enum PipeMaterialBufferType |
| | | { |
| | | PMT__FIRST, |
| | | PMT_BYTES, |
| | | PMT_TEXT, |
| | | PMT_IMAGE, |
| | | PMT_PM_LIST, |
| | | PMT_PTR_AVFRAME, |
| | | PMT__LAST |
| | | }; |
| | | |
| | | struct PipeMaterial; |
| | | typedef void (* pm_deleter_func)(PipeMaterial* pm); |
| | | |
| | | // PipeMaterial instance should be unref when pay() finished |
| | | struct PipeMaterial |
| | | { |
| | | PipeMaterialBufferType type; |
| | | uint8_t* buffer; |
| | | enum PipeMaterialBufferType |
| | | { |
| | | PMT__FIRST, |
| | | PMT_BYTES, // uint8_t[] |
| | | PMT_FRAME, // MB_Frame* |
| | | PMT_PM_LIST, |
| | | PMT__LAST |
| | | }; |
| | | |
| | | PipeMaterialBufferType type; // #todo MaterialBuffer merge into there |
| | | uint8_t* buffer;//#todo void* |
| | | size_t buffSize; |
| | | PipeLineElem* former; |
| | | pm_deleter_func deleter; |