mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-05-29 06:12:18 -06:00
63 lines
No EOL
3.1 KiB
C++
63 lines
No EOL
3.1 KiB
C++
topic "DataDrawer";
|
|
[2 $$0,0#00000000000000000000000000000000:Default]
|
|
[i448;a25;kKO9;2 $$1,0#37138531426314131252341829483380:class]
|
|
[l288;2 $$2,2#27521748481378242620020725143825:desc]
|
|
[0 $$3,0#96390100711032703541132217272105:end]
|
|
[H6;0 $$4,0#05600065144404261032431302351956:begin]
|
|
[i448;a25;kKO9;2 $$5,0#37138531426314131252341829483370:item]
|
|
[l288;a4;*@5;1 $$6,6#70004532496200323422659154056402:requirement]
|
|
[l288;i1121;b17;O9;~~~.1408;2 $$7,0#10431211400427159095818037425705:param]
|
|
[i448;b42;O9;2 $$8,8#61672508125594000341940100500538:tparam]
|
|
[b42;2 $$9,9#13035079074754324216151401829390:normal]
|
|
[{_}%EN-US
|
|
[ {{10000@(113.42.0) [s0;%- [*@7;4 DataDrawer]]}}&]
|
|
[s3;%- &]
|
|
[s1;:DataDrawer`:`:class:%- [@(0.0.255)3 class][3 _][*3 DataDrawer]&]
|
|
[s9; This abstract class provides the ability to render the binary
|
|
data of specific type into Draw output. Each type of binary data
|
|
has assigned id, which is used in the call to Draw`::DrawData
|
|
method, to this id there is corresponding registered (using DataDrawer`::Register)
|
|
class of DataDrawer. Draw`::DrawData creates and instance of
|
|
this class and uses it to render the binary data as one or more
|
|
ImageBuffer pixel arrays.&]
|
|
[s9; Draw package predefines DataDrawer registered with id `"image`_data`".
|
|
This represents Image binary encoded with any encoding supported
|
|
by actually included image format plugins like plugin/bmp or
|
|
plugin/jpg.&]
|
|
[s3; &]
|
|
[s0; &]
|
|
[ {{10000F(128)G(128)@1 [s0; [* Public Method List]]}}&]
|
|
[s3;%- &]
|
|
[s5;:DataDrawer`:`:Open`(const String`&`,int`,int`):%- [*@(0.0.255) virtual][*
|
|
][*@(0.0.255) void][* _Open]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/String`$en`-us^ S
|
|
tring][@(0.0.255) `&]_[*@3 data], [@(0.0.255) int]_[*@3 cx], [@(0.0.255) int]_[*@3 cy])_`=_[@3 0
|
|
]&]
|
|
[s2; Called to open [%-*@3 data] for processing, the output size being
|
|
[%-*@3 cx], [%-*@3 cy].&]
|
|
[s3; &]
|
|
[s4; &]
|
|
[s5;:DataDrawer`:`:Render`(ImageBuffer`&`):%- [*@(0.0.255) virtual][*
|
|
][*@(0.0.255) void][* _Render]([_^topic`:`/`/Draw`/src`/ImageBuffer`$en`-us^ ImageBuffe
|
|
r][@(0.0.255) `&]_[*@3 ib])_`=_[@3 0]&]
|
|
[s2; Called to render the part (or all) of the result into [%-*@3 ib].
|
|
The width of [%-*@3 ib] is the same as specified in Open, the
|
|
height is the required height of band to render.&]
|
|
[s3; &]
|
|
[s4; &]
|
|
[s5;:DataDrawer`:`:`~DataDrawer`(`):%- [@(0.0.255) `~][* DataDrawer]()&]
|
|
[s2; Virtual destructor.&]
|
|
[s3; &]
|
|
[s4; &]
|
|
[s5;:DataDrawer`:`:Create`(const String`&`):%- [*@(0.0.255) static][*
|
|
][*_^topic`:`/`/Core`/src`/One`$en`-us^ One][* <][*_^DataDrawer^ DataDrawer][* >_Create(][*@(0.0.255) c
|
|
onst][* _][*_^topic`:`/`/Core`/src`/String`$en`-us^ String][*@(0.0.255) `&][* _][*@3 id][* )]&]
|
|
[s2; Creates a derived DataDrawer with type [%-*@3 id].&]
|
|
[s3; &]
|
|
[s4; &]
|
|
[s5;:DataDrawer`:`:Register`(const char`*`):%- [*@(0.0.255) static][*
|
|
][*@(0.0.255) template][* _<][*@(0.0.255) class][* _][*@4 T][* >_][*@(0.0.255) void][* _Register(
|
|
][*@(0.0.255) const][* _][*@(0.0.255) char][* _`*][*@3 id][* )]&]
|
|
[s2; This method registers specific DataDrawer derived class as renderer
|
|
for type [%-*@3 id].&]
|
|
[s3; &]
|
|
[s0; ]] |