svvitch
digital signage player
D:/vs_workspace/switch_sf/src/svvitch/DissolveTransition.cpp
Go to the documentation of this file.
00001 #include "DissolveTransition.h"
00002 
00003 
00004 DissolveTransition::DissolveTransition(ContentPtr c1, ContentPtr c2, float speed): Transition(c1, c2), _speed(speed) {
00005 }
00006 
00007 DissolveTransition::‾DissolveTransition() {
00008 }
00009 
00010 void DissolveTransition::initialize(const DWORD& frame) {
00011     if (_c1) _c1->set("alpha", "1");
00012     if (_c2) _c2->set("alpha", "0");
00013 }
00014 
00015 bool DissolveTransition::process(const DWORD& frame) {
00016     if (_c2) {
00017         bool finished = false;
00018         float alpha = _c2->getF("alpha");
00019         alpha += _speed;
00020         if (alpha >= F(1)) {
00021             alpha = F(1);
00022             finished = true;
00023         }
00024         _c2->set("alpha", alpha);
00025         return finished;
00026     }
00027     return false;
00028 }
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines