Rewrites layouts to be much smaller, and deal with much less annoying BS. Improves the overall architecture, unifies handling of pseudotiling, and various other improvements.
26 lines
No EOL
508 B
C++
26 lines
No EOL
508 B
C++
#pragma once
|
|
|
|
#include "../../helpers/math/Math.hpp"
|
|
#include "../../helpers/memory/Memory.hpp"
|
|
|
|
#include "ModeAlgorithm.hpp"
|
|
|
|
namespace Layout {
|
|
|
|
class ITarget;
|
|
class CAlgorithm;
|
|
|
|
class ITiledAlgorithm : public IModeAlgorithm {
|
|
public:
|
|
virtual ~ITiledAlgorithm() = default;
|
|
|
|
virtual SP<ITarget> getNextCandidate(SP<ITarget> old) = 0;
|
|
|
|
protected:
|
|
ITiledAlgorithm() = default;
|
|
|
|
WP<CAlgorithm> m_parent;
|
|
|
|
friend class Layout::CAlgorithm;
|
|
};
|
|
} |