Objects Defined over IManagerSrv

1 view
Skip to first unread message

Anant Vemuri

unread,
Mar 17, 2010, 12:14:25 AM3/17/10
to fw4spl-discuss
Hi,

I am having some problem with the starting of adaptors defined on
objects that are declared inside an IManagerSrv. If I declare the
objects directly on the composite, the adaptor starts up. However, if
I declare them inside the IManagerSrv, they dont start immediately as
the program loads.

Here is an example of the config which is creating this problem:

<object uid="myComposite" id="myComposite" type="::fwData::Composite">
<service uid="myManager"
implementation="::ctrlSelection::manager::SwapperSrv"
type="::ctrlSelection::IManagerSrv" autoComChannel="yes">
<mode type="stop" />
<config>
<object id="myObj1"
type="::fwData::TransformationMatrix3D" />
</config>
</service>


<service uid="myGenericScene"
implementation="::fwRenderVTK::VtkRenderService"
type="::fwRender::IRender" autoComChannel="yes">
<scene>
...
...
...
...
<adaptor id="myObjAdaptor" class="::myBundle::myAdaptor"
objectId="myObj1">
<config transform="vtkTrf1" forceRender="yes" />
</adaptor>

...
...
...

</scene>
</service>
</object>

When I define the object id="myObj1" on myComposite directly, I
adaptor myObjAdaptor starts as soon as the program loads. However,
when I define as above, it does not start until an add or swap has
been performed on object id="myObj1"

Is there a work-around to fix this problem, because I need to use the
adaptor as soon as I load the program.

Thank you.

Anant.

Anant Vemuri

unread,
Mar 17, 2010, 12:24:19 AM3/17/10
to fw4spl-discuss
I also wanted to add that, in case I dont define my object inside
myManager service, I get warning messages as this:

Object myObj1 not found in managed objects.

for every swap or update I do. An additional information is that I do
create an IUpdater service specifically for this myObj1 I create.


Thank you.

Anant.

Arnaud Charnoz

unread,
Mar 22, 2010, 12:37:02 PM3/22/10
to fw4spl-discuss
An IManager manages services on selected data push in Composite. An
IManager not creates data in composite. Well, it works well when the
IManager starts services only when your push an object whose the label
is "myObj1" in Composite. If you define the object id="myObj1" in
myComposite directly, normal that the services manage by IManager
start when the program is launched. Well, All works fine :)

If you want use an adptor as soon as you load the program, yes, you
need define the object id="myObj1" in myComposite directly.

Yes you get this WARNING message : "Object myObj1 not found in managed
objects." from IManager. No panic, it's normal. In the next release,
this WARNING Message will be replaced by DEBUG or INFO Message.

Arnaud.

Anant Vemuri

unread,
Mar 22, 2010, 7:25:45 PM3/22/10
to fw4spl-...@googlegroups.com
thanks Arnaud...

To unsubscribe from this group, send email to fw4spl-discuss+unsubscribegooglegroups.com or reply to this email with the words "REMOVE ME" as the subject.

Reply all
Reply to author
Forward
0 new messages