node.table not updating above index 0 from a dataTable



  • @Christoph-Hart I'm trying to figure out a way to fix the fact that tables in scriptnode are not updating above the index 0.
    So there's only the table with index 0 that connects to tableData no matter if the indexes correspond.
    The tableData are good in the script watchtable after init (the goal is to get the table nodes ready after init/preset change)
    When manually changing the node index of the second table it reconnects though.

    HiseSnippet 1376.3oc4Xs0SiaDE1FvKP1EotR6yUV6SAQZvdu1JZEKDHszxEKBktRHzpA6IIivYFqwS.RQ7+q+b3eP643wNYb3RQQB5JUyC34bY7249LIPJBoooBok87GLHgZY+BmVC3ptM5RXbqs1.Ib.4jXpqhlprVePBIMkFYYaO8OiRXO+LVYOWu55jXBOjNhjk0gBVHcaVOlZD0fO8ar33ljH5ArdFR+tOsUnf2PDK5CnYZGOqDR3ojNzcInXS4XY+rMiXJgrkh.fwxdl0EQCZ0UbNWK+grTFfTbguUKXizjaJhiPDiTsZzkEGETX0oVvtDLxGLs1G7JmcXQrgzG4K9lLFtizvzeXO08AOeS348vgmsA7lQCuW5zJTxRTi3fX64NawUTYaBDBLgkVVK6+xog.Dfqp2ibJsoDVLTgpevyql6687VbkEpn+qcednhI3tB9tBEcOd0EqbYk4qbUE2wY0t8sxC+bRQbLUdqrwnu79TrJueuSnxZtmQh6SGJH3FJ6mcta+rYZPn15MDTv2hyT6kP42k22J2kAu86asAQQv.RNMPtDpTwPHXuA8LHSWGdl2YCZ5oJQBjqeiXGjAIh5GSTkSqvZobFfOnT7CCR7TlZfYs1iRt1CEtuzIfoB6d63cpaAufW6wFu4UtK3rY61zP0HvNiSyO+DWlNqFKUxKSguutOpdoayO6WBP61uWqXVDUF.86v7Yaav1.pY8cMIrV+HlnIyfXdw8T+xzNP9cpBpUjtQoIt+j6l7NLNsdnjB14FoI6RUmKjmV80.6WqqyWdY2.BmF6p5RUtcAKDeyMBRzWnRmXwIj3rEA7XXCKZezgpZH5kH3vBX2z7y1QX+z5lSrdJUcHV7V8ni7p+wZtd0eyw0Vnh6Md.19H6e33i0Paj0zlISU5QPiaUqwi1m1gkBcwxD.qPql0Caj5oT38Hs9OD08KZAx3wfnl8kxsph1SgENghNTKT4RssY.45RJ3DphaJxw.MFbz7.u21BRTlKzkwcUYg+7cTHcqx.CvaEWl6O59F3eKszhWVn63eURj9iDHXPPpJaI+EW9s0JBlXHTGWV7HuiOhcbA7FGhO7sw2batZgJWsRorfbeVCRb7IPVd0wclnlC8zIRZBQROPDDSFTMkzKIltODup4dRrH7zVr+jdywFI55u0QIpF1kvg75zIY5xXGxX5G1zkao6z9h9JFuyNDkjcATvh04vYaBoMxQGVDOENjQu1CWiMKaQ4QYK9a3Imo+vJdfoeAyQymzik.6BfiJuUX9oDvJbKVDNXJ2oakYyV1eqyu1ZucMqMMKDgVN5VFY82xeGdCal43.cQPphHXelqIIDbYCBHpt33AbTKz+kJqGNrO7yPM7wtXia9aCQrRjgVhv1VbRPsOA53zCMT7bf4u+GrH7y4XWCjP2PceHWAOWwNolmqzdZiY0fUAat1jx.+rH5l0IMIFNk5cZHZ1OVn+NP3TFHrhSOQj1cVBjux.jCk3IFm4dx40dxr9VkA4K.PJo00b9uHEnX5ML9urIL5PLGPjP+rriUPjvUNfoB5A6EqPCjeFnodi1gwOTWFM5XN6PtXLZWu51hyoxwtCDbbxjjaP85UaonIX6sRzNkdt1YZR03lYawinWXcCrTxLrLxjd9vLI+uZSklCA5b5TI+uxxk9eRFz0qVNC5tWLIWMBkM+3SfO+eeh0ElldoqVjRNCLffrSSg2+3IYtaORnT7kP8HWLHOWFEHqlm8qULuyN3ZW+hQsNNd08r5whXeILDuUx2AWi3104MSfNucBz4cSfNueBz4CSfNebBz46uWcve3l05qD8z2XEHDrYVZqs8lbrHHqjz5ebKapf.
    

    Does it have something to do with this part in Tables.h?
    (I don't know if this part is rewritten in v3)

    class Table: public SafeChangeBroadcaster
    {
    public:
    
        struct Updater: private SafeChangeBroadcaster,
                        private SafeChangeListener
        {
            struct Listener
            {
                virtual ~Listener() {};
    
                    /** Called when the index has been changed. */
                    virtual void indexChanged(float newIndex) = 0;   // HERE
    
                    JUCE_DECLARE_WEAK_REFERENCEABLE(Listener);
            };
    

    Or should I look at ComplexDataNodes.cpp?

    void TableNode::setTable(double indexAsDouble)
    {
        jassert(tp != nullptr);
        auto index = (int)indexAsDouble;
        tableData = dynamic_cast<SampleLookupTable*>(tp.get()->getTable(index));
    }
    

Log in to reply
 

7
Online

673
Users

2.7k
Topics

22.7k
Posts