ArrayProducerAdapter::ArrayProducerAdapter( RC::ConstHandle<Manager> const &manager, RC::ConstHandle<RT::ArrayProducerDesc> const &arrayProducerDesc ) : Adapter( manager, arrayProducerDesc, FL_PASS_BY_REFERENCE ) , m_arrayProducerDesc( arrayProducerDesc ) , m_elementAdapter( manager->getAdapter( arrayProducerDesc->getElementDesc() ) ) , m_elementVariableArrayAdapter( manager->getVariableArrayOf( m_elementAdapter ) ) { }
ArrayCache::ArrayCache( RC::ConstHandle<ArrayProducer> const &inputArrayProducer ) : m_inputArrayProducer( inputArrayProducer ) , m_cacheCountExists( false ) , m_mutex( "ArrayCache" ) { RC::ConstHandle<RT::Desc> inputElementDesc = inputArrayProducer->getElementDesc(); if ( !inputElementDesc ) throw Exception("input is invalid"); m_inputElementDesc = inputElementDesc; }