lumiera_/src/steam/engine/engine-service-mock.cpp
Ichthyostega 25c8579695 Job-Planning: new draft - organise the overall planning process
- introduce a new entity: RenderDrive
- it supersedes the CalcPlanCalculation, but is managed by CalcStream
- moreover, the RenderDrive will house a IterTreeExplorer-Pipeline
- define the concerns and relationships more clearly (see Drawing)
- prerequisite to disentangle the Job-planning "mechanics"
2023-04-17 04:51:38 +02:00

80 lines
2.1 KiB
C++

/*
EngineServiceMock - dummy render engine implementation for test/development
Copyright (C) Lumiera.org
2012, Hermann Vosseler <Ichthyostega@web.de>
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of
the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
* *****************************************************/
/** @file engine-service-mock.cpp
** Implementation translation unit for a mock render engine for unit testing.
** @todo draft from 2012, and, while stalled, still relevant as of 2016
*/
#include "steam/engine/engine-service-mock.hpp"
#include "steam/engine/worker/dummy-tick.hpp"
//#include <string>
//#include <memory>
//#include <functional>
namespace steam {
namespace engine{
// using std::string;
// using lumiera::Subsys;
// using std::bind;
namespace { // hidden local details of the service implementation....
} // (End) hidden service impl details
/**
* Initialise a mock render engine.
* This dummy implementation manages a collection of
* "Processors", each running in a separate thread.
*/
EngineServiceMock::EngineServiceMock()
: processors_()
{ }
/** special engine configuration for mock/testing operation.
*/
RenderEnvironment&
EngineServiceMock::configureCalculation (ModelPort,Timings,Quality)
{
UNIMPLEMENTED ("represent *this as RenderEnvironment Closure)");
RenderEnvironment* todo_fake(0); ////KABOOOM
return *todo_fake;
}
}} // namespace steam::engine