zunifikowany system do przetwarzania danych

0

czy są jakieś biblioteki w c++ umożliwiły by w sposób usystematyzowany przetwarzanie danych i ewentualne dynamiczne modyfikowanie przepływem danych ? Tworzymy klasy w ktorych zaszyte są algorytmy operujące na danych, a potem dynamicznie łączymy kolejne kroki

krok 1) mam dane wejściowe o rozmiarze X Y w postaci uint32
krok 2) dla każdego X Y policz32_to_16
krok 3) resize to X2 Y2
krok 4) policz16_to_8

użytkownik robi "klik" usuwamy z grafu przetwarzania jeden krok i mamy
krok 1) mam dane wejściowe o rozmiarze X Y w postaci uint32
krok 2) dla każdego X Y policz32_to_16
krok 3) policz16_to_8

0

@Adamek Adam:

Dynamiczne a C/C++ to nie bardzo ...

ALE
w tymże C/C++ można napisać silnik ewaluacji tychże wyrażeń / sekwencji

Dwa czołowe zastosowania, to embedded Python w data analysis i Lua w grach, ale dalece nie tylko, w systemach inżynierskich, dużych apliacjach graficznych (albo w Redis'ie)
Python ostatni raz był szczupły w wer. 1.7x potem straszliwie obrósł tłuszczem. Lua jest bardzo lekkim do dziś pomysłem, ma WSZYSTKO przemyślane aby się ładnie wbudowywała w dużego hosta

Inna ścieżka a'la - choć może niezbyt słusznie piszę a'la arkusz kalkulacyjny. Dosowskie Borlandy miały jako demo arkusz kalkulacyjny w wersji źródłowej. Nie przysięgnę czy było to C, czy C++, ale miał bardzo dobrą architekturę, elegancję

Co by nie było, nie jest to taka prosta "biblioteka" jak czytanie plików, trzeba trochę włożyć, zaimplementować interfejsy (świat interpretera i host wielokrotnie się przełącza) - ale efekty mogą być fajne

0

Czemu nie napiszesz co chcesz osiągnąć tylko jak to ma działać?

0

Chodzi Ci o coś jak .stream() z Javy?

List<String> namesList = Arrays.asList("John", "Marry", "George", "Paul", "Alice", "Ann");
 
namesList
    .stream()
    .filter(e -> e.startsWith("A"))
    .map(String::toUpperCase)
    .sorted()
    .forEach(System.out::println);
0

Dawno dawno temu dawałem coś takiego do napisania studentom w ramach ćwiczeń z użycia funkcji wirtualnych. Dokładnej specyfikacji już nie pamiętam (pewnie gdybym poszukał w archiwach to bym znalazł...), ale generalnie było to jakoś tak, że mieli zdefiniować hierarchię klas reprezentujących bloczki DSP należące do jednego z typów

  • source (np. generator sinusa albo coś co wczytywało obrazek z pliku)
  • filter (bardzo ogólny bloczek który ma n wejść, coś robi z danymi i wynik udostępnia na wyjściu )
  • sink (np. zapisuje wynik do pliku)

Do tego mieli napisać prosty parser konfiguracji, który budował graf (z tego co pamiętam acykliczny).

0

W JS coś takiego pisałem od zera, więc się da.

0

To wygląda jak wariacja ECS z dynamiczną możliwością usuwania komponentów.

0

A tak w zasadzie... Może po prostu użyć Tensorflow ? ;)

0

Troszkę ten wątek tak mi się kojarzy
screenshot-20230303125908.png

1 użytkowników online, w tym zalogowanych: 0, gości: 1