Skip to content
jukea edited this page Jan 25, 2013 · 46 revisions

TODOS Drone réunion 7 jan 2013:

GUI:

Plugs / connections : refactoring

  • refine and implement new rules for connections (can connect A->B if B is subclass of A)

    • see QObject's :
      • inline bool inherits(const char *classname) const
      • { return const_cast<QObject *>(this)->qt_metacast(classname) != 0; }
  • changing plug numbers/type at runtime

  • défine what can be changed at runtime

Types:

  • remove depracted subtype stuff
  • incoherence between "IsA" et "HasA" (ex : value vs array)
  • specify the "final" list of types
  • 2d vs 3d .. single type or 2 types?

Gears:

  • Solve this conflict : gearinfo XMLs get updated to match the gear structural modification (at least for Plugs , maybe more), but the modified version is the one in the "installed plugins directory". Not the developpement version.

  • Q_OBJECTness :

    • Currently, Gears inheriting class Gear don'T have the Q_OBJECT Macro, consider this :
    • While it is possible to use QObject as a base class without the Q_OBJECT macro and without meta-object code, neither signals and slots nor the other features described here will be available if the Q_OBJECT macro is not used. From the meta-object system's point of view, a QObject subclass without meta code is equivalent to its closest ancestor with meta-object code. This means for example, that QMetaObject::className() will not return the actual name of your class, but the class name of this ancestor.
  • code a scriptingGear (probably using QScript?)

  • import d'effets audio de PD

Other :

Engine :

  • refactor unique gear names by concatening with a random hash instead of incremented integers
    • seems safer for undo stack, which could cause names collisions
  • Make some system so gears can throw an error/warning (And the GUI counterpart)
  • ISchemaEventListener ... what's this ? why not signal/slot instead ?
  • Copy vs Reference …. ex : for the scene type (3d). Do element selectors copy to next gear of pass references to subset of the data?
  • scene -> julien imagines a DOM-style datatype with selection gears( à la jQuery) that return subsets containing references to elements. Doesn't suit dataflow programming so well thought… Tats propose de faire une copie pour tout split d'output (fournir une copie pour les connection 2..3..4..N )
  • connection with type casting : implement a mecanism that create a default conversion gear for the types
  • implement something like vvvv's spreads
  • clarify sleeping plugs ... (Tats -> sleep state travels toward beginning of graph, which is the other way around currently. (can route to a single subgraph using 1 select gear with Tats way of doing) .. also : "This is a very comprehensive article on dataflow programming. Section 2 is very interesting. There's even graphics about switch and merge "gears" which are more or less what Julien and I were discussing about tonight. http://www.cs.ucf.edu/~dcm/Teaching/COT4810-Spring2011/Literature/DataFlowProgrammingLanguages.pdf Also cf. pp 5 and 6: data-driven approach vs demand-driven approach which are exactly the two models Julien and I were opposing tonight."

Clone this wiki locally