Avatar

Please consider registering
guest

sp_LogInOut Log In sp_Registration Register

Register | Lost password?
Advanced Search

— Forum Scope —




— Match —





— Forum Options —





Minimum search word length is 3 characters - maximum search word length is 84 characters

sp_Feed Topic RSS sp_TopicIcon
OffNormalAlarmType extension and TimedShelve access
May 27, 2013
9:25, EEST
Avatar
fred
Member
Members
Forum Posts: 37
Member Since:
January 27, 2012
sp_UserOfflineSmall Offline

In my project I implemented an extension to OffNormalAlarmType. Thus, I thought that any method of parent classes will be inherited by my own AlarmType class.

However, when I browse to an instance of my AlarmType (extends of OffNormalAlarmType) either using UaExpert or SampleConsoleClient, I do not see methods “TimedShelve”, “OneShotShelve”, and “Unshelve”. Strange thing for me is that I do see the object “ShelvingState” with its variables CurrentState and LastTransition.

How will I get access to the methods of ShelvingState? What might I have done wrong?

Thanks

May 28, 2013
8:21, EEST
Avatar
Jouni Aro
Moderator
Moderators
Forum Posts: 846
Member Since:
December 21, 2011
sp_UserOfflineSmall Offline

Yes, you are correct, they seem to be missing. I will need to check why this is, since it seems the nodes have been commented out from the ShelvingStateMachineType.

May 28, 2013
11:41, EEST
Avatar
fred
Member
Members
Forum Posts: 37
Member Since:
January 27, 2012
sp_UserOfflineSmall Offline

Jouni Aro said

Yes, you are correct, they seem to be missing. I will need to check why this is, since it seems the nodes have been commented out from the ShelvingStateMachineType.

Thanks Jouni for the information. Looking forward to getting notified on any updates.

BR

May 29, 2013
8:33, EEST
Avatar
Jouni Aro
Moderator
Moderators
Forum Posts: 846
Member Since:
December 21, 2011
sp_UserOfflineSmall Offline

Well, I think it is and it isn’t as it should be 🙂

The methods are defined in the type, so you can handle them anyway, since the MethodId is defined in the type, and the call gets the object that the method is called as a parameter.

However, for ConditionType, for example, we have used registerOverridePlainMethod() to add a reference to the method nodes also to every instance.

For some reason (memory optimization to avoid extra references), the method references have been removed from the ShelvingStateMachineType. I am considering whether we should add them there again – or whether there should some option to define whether the method nodes should be added or not. It is probably best to add them there.

Anyway, as I explained, you should still be able to use the methods, even when they are not defined for every instance.

May 29, 2013
8:35, EEST
Avatar
Jouni Aro
Moderator
Moderators
Forum Posts: 846
Member Since:
December 21, 2011
sp_UserOfflineSmall Offline

The UnshelveTime should be there in any case, since it is a unique property for each instance.

Forum Timezone: Europe/Helsinki

Most Users Ever Online: 267

Currently Online:
16 Guest(s)

Currently Browsing this Page:
1 Guest(s)

Top Posters:

hbrackel: 100

pramanj: 86

ibrahim: 70

kapsl: 57

gjevremovic: 49

TimK: 41

Fransua33: 39

fred: 37

Rainer Versteeg: 32

Thomas Reuther: 26

Member Stats:

Guest Posters: 0

Members: 1058

Moderators: 14

Admins: 1

Forum Stats:

Groups: 3

Forums: 14

Topics: 981

Posts: 4145

Newest Members:

mats989, Sebastien Petitrenaud, sting2005, Ron Hoppe, Seb, p.devito, g.ilengo, MohamedLazrek, brittr83165991, martintinsley9

Moderators: Jouni Aro: 846, Otso Palonen: 32, Tuomas Hiltunen: 5, janimakela: 0, Pyry: 1, Terho: 0, Petri: 0, Bjarne Boström: 523, Heikki Tahvanainen: 402, Jukka Asikainen: 1, Teppo Uimonen: 20, Markus Johansson: 18, Matti Siponen: 31, Lusetti: 0

Administrators: admin: 0