diff options
author | Treeki <treeki@gmail.com> | 2010-10-08 04:53:53 +0200 |
---|---|---|
committer | Treeki <treeki@gmail.com> | 2010-10-08 04:53:53 +0200 |
commit | d74825ae7be1cee0cfd625a79289e9494fcda661 (patch) | |
tree | f3b9a19c76734802697a6d053e24dab4a4708f38 /lyt/materials/tevswaptable.cpp | |
parent | e813d6ede6bed1e69d749bb32529d657a9d96173 (diff) | |
download | LayoutStudio-d74825ae7be1cee0cfd625a79289e9494fcda661.tar.gz LayoutStudio-d74825ae7be1cee0cfd625a79289e9494fcda661.zip |
added a short-term todo list to the readme, and some more material code. three structs left! hopefully I'll have materials done tomorrow :D
Diffstat (limited to 'lyt/materials/tevswaptable.cpp')
-rw-r--r-- | lyt/materials/tevswaptable.cpp | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/lyt/materials/tevswaptable.cpp b/lyt/materials/tevswaptable.cpp new file mode 100644 index 0000000..05ed497 --- /dev/null +++ b/lyt/materials/tevswaptable.cpp @@ -0,0 +1,60 @@ +/******************************************************************************* + This file is part of LayoutStudio (http://github.com/Treeki/LayoutStudio) + Copyright (c) 2010 Treeki (treeki@gmail.com) + + 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, version 2.0. + + 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 2.0 for more details. + + You should have received a copy of the GNU General Public License 2.0 + along with this program. If not, see <http://www.gnu.org/licenses/>. +*******************************************************************************/ + +#include "tevswaptable.h" +#include "../layout.h" + +LYTTevSwapTable::LYTTevSwapTable() { +} + +void LYTTevSwapTable::dumpToDebug() { + qDebug() << "LYTTevSwapTable @" << (void*)this; + + for (int i = 0; i < 4; i++) { + LYTTevSwapMode *m = &mode[i]; + qDebug() << i << ":" << m->red << "," << m->green << "," << m->blue << "," << m->alpha; + } +} + + + +void LYTTevSwapTable::writeToDataStream(QDataStream &out) { + for (int i = 0; i < 4; i++) { + quint8 val = 0; + val |= mode[i].red; + val |= (mode[i].green) << 2; + val |= (mode[i].blue) << 4; + val |= (mode[i].alpha) << 6; + + out << (quint8)val; + } +} + + +void LYTTevSwapTable::readFromDataStream(QDataStream &in) { + for (int i = 0; i < 4; i++) { + quint8 val; + in >> (quint8&)val; + + mode[i].red = BitExtract(val, 2, 32 - 8); + mode[i].green = BitExtract(val, 2, 32 - 6); + mode[i].blue = BitExtract(val, 2, 32 - 4); + mode[i].alpha = BitExtract(val, 2, 32 - 2); + } +} + + |