#include "pibytearray.h" #include "piclientserver_client.h" #include "piclientserver_server.h" #include "picodeparser.h" #include "piintrospection_server.h" #include "piiostream.h" #include "pijson.h" #include "pilog.h" #include "pimathbase.h" #include "pip.h" #include "pitranslator.h" #include "pivaluetree_conversions.h" using namespace PICoutManipulators; template void foo() { static_assert(std::is_arithmetic::value || is_complex::value, "Type must be arithmetic"); } int main(int argc, char * argv[]) { PITranslator::loadLang("ru"); piCout << PIString::readableSize(50_KiB); piCout << PIString::readableSize(1_GB); PITranslator::clear(); piCout << PIString::readableSize(50_KiB); piCout << PIString::readableSize(1_GB); // PICodeParser parser; // parser.parseFile("cmg_test.h"); /*for (auto m: parser.macros) { piCout << ""; piCout << m.name << m.args << m.value; piCout << m.expand({"hello"}); } */ /*PISet set; piCout << set << piSerialize(set) << piDeserialize>(piSerialize(set)); set << 1 << 2 << 3; piCout << set << piSerialize(set) << piDeserialize>(piSerialize(set)); set << 1 << -2 << 50 << -100; piCout << set << piSerialize(set) << piDeserialize>(piSerialize(set));*/ return 0; std::numeric_limits::epsilon(); using cmlp = complexf; PIMathMatrixT<3, 3, double> v0; PIMathMatrixT<3, 3, cmlp> v1; v0[0][1] = 1; v0[1][1] = 2; v0[2][1] = 3; v1[0][1] = cmlp(1., 0); v1[1][1] = cmlp(2., -1); v1[2][1] = cmlp(3., 2); piCout << v0 << v1; piCout << (v0 * 2.) << (v1 * cmlp(2., 2.)); piCout << (v0 + 2.) << (v1 + cmlp(2.)); piCout << (v0 - 2.) << (v1 - cmlp(2.)); piCout << (v0 / 2.) << (v1 / cmlp(2., 1.)); // piCout << (v0.length()) << (v1.length()); // piCout << (v0.lengthSqr()) << (v1.lengthSqr()); // piCout << (v0.manhattanLength()) << (v1.manhattanLength()); /*foo(); foo(); foo(); foo(); return 0;*/ return 0; }