[Rock-dev] Syskit: Specialize generic profile

Christian Rauch Christian.Rauch at dfki.de
Wed Oct 16 21:04:15 CEST 2013


Hi,

I would like to have a common profile, where some definitions should be 
specialized in a specific profile.

E.g., 'aria' is already used in the generic profile by another definition:
{{{
module Virgo
     module Profiles
         profile 'Prediction' do

             define 'aria', <...some placeholder...>

             define 'gyro_prediction_mlp', Trigger::Gyro2Prediction.
                 use('motion2' => aria_def)

         end
     end
end
}}}


in the specific profile, 'aria' from the generic profile should be 
overwritten:
{{{
module Virgo
     module Profiles
         profile 'Robot' do
             use_profile Prediction

             define 'aria', <... overwrite 'aria' in profile 
'Prediction'...>

        end
     end
end
}}}

Currently this is not possible, because if profile 'Robot' is applied, 
'gyro_prediction_mlp' would still rely on 'aria' defined in 'Prediction' 
and not on 'aria' of the applied profile.

This could be solved by using services. But the downside would be, that 
if I have multiple definitions in the generic profile that rely on the 
same interface/service, I can just select one task in the specific 
profile to provide that service. If I have multiple definitions in the 
generic profile, I could each of them overwrite in the specific profile. 
Having multiple services with the same interface and different names is 
no option.

Is there an alternative like inheriting from generic profiles? What is 
the common practice to specialize generic profiles in syskit?

Regards,
Christian


-- 
  Christian Rauch
  Space Robotics

  Universität Bremen
  FB 3 - Mathematik und Informatik
  AG Robotik
  Robert-Hooke-Straße 5
  28359 Bremen, Germany

  Tel:     +49 (0)421 178 45-6619
  Empfang: +49 (0)421 178 45-6611
  Fax:     +49 (0)421 178 45-4150
  E-Mail:  Christian.Rauch at dfki.de

  Weitere Informationen: http://www.informatik.uni-bremen.de/robotik



More information about the Rock-dev mailing list