Scramble.h
Scramble.h
CPP1/* Copyright Statement:2 *3 * (C) 2021-2024 Cubios Inc. All rights reserved.4 */56#ifndef WASMLIBS_CPP_SCRAMBLE_H_7#define WASMLIBS_CPP_SCRAMBLE_H_8#pragma once910#include <memory>11#include "native.h"1213namespace Cubios14{1516 class Scramble17 {18 public:19 Scramble()20 {21 this->previosTwist.count = 0;22 this->previosTwist.screen = SCREENS_MAX;23 };24 ~Scramble(){};2526 void StartScramble(uint8_t twistsCount);27 void VirtualTwist(uint8_t screen, uint8_t direction);2829 virtual void on_BeforeTwist() = 0;30 virtual void on_MappingChanged(uint8_t moduleTo, uint8_t screenTo, uint8_t moduleFrom, uint8_t screenFrom) = 0;31 virtual void on_Twist(const Cubios::TOPOLOGY_twistInfo_t twist) = 0;3233 private:3435 Cubios::TOPOLOGY_twistInfo_t previosTwist;3637 TOPOLOGY_faceletInfo_t TopFaceletsStarting[SCREENS_MAX][MODULES_MAX / 2];38 TOPOLOGY_faceletInfo_t TopFaceletsEndind[SCREENS_MAX][MODULES_MAX / 2];3940 void rememberCurrentTopology();41 void rotate(uint8_t scr, uint8_t dir);42 };43}44#endif /* WASMLIBS_CPP_SCRAMBLE_H_ */45
Wrapped for easier reading. Turn wrap off to inspect exact line lengths.