'''[wiki:GEC16Agenda/WiMAX-Tutorial/Coop/03 Previous]''' == Application Wrappers == When an OML-enabled application is run using OMF, the application itself is installed on the resource and a simple [https://mytestbed.net/projects/omf/wiki/BasicTutorialStage3-5-2 OMF application wrapper] is installed on the console where the OMF Experiment Controller runs. This wrapper just gives some basic information about the application, the parameters that can be passed at the command line, and the OML measurement points that have been defined in the application. Here's the wrapper for the OML-ized coopshim: {{{ #!ruby defApplication('coopshim', 'coopshim') do |a| a.path = "/usr/bin/coopshim" a.shortDescription = "Runs CoopShim Shim" a.description = < :string, :dynamic => false}) # The Measurement Points for this application: a.defMeasurement('req') do |m| m.defMetric('id',:long) m.defMetric('total',:long) end a.defMeasurement('recv') do |m| m.defMetric('id',:long) m.defMetric('total',:long) m.defMetric('source', :string) end a.defMeasurement('sent') do |m| m.defMetric('id',:long) m.defMetric('total',:string) m.defMetric('dest', :string) end end }}} '''[wiki:GEC16Agenda/WiMAX-Tutorial/Coop/05 Next]'''