CATPLMUpdateUseItf Interface CATIPLMUpdateActor

Usage: you can reimplement this interface by deriving the supplied CATPLMUpdateActorADP adapter class.


interface CATIPLMUpdateActor

Interface to implement new update actors to integrate in the update graph and to participate in the update process.

BOA information: this interface can be implemented using the BOA (Basic Object Adapter). To know more about the BOA, refer to the "Object Modeler" chapter in the CAA Encyclopedia.


Method Index


o GetErrorInCycleBehavior(ErrorInCycleBehavior&)
Returns the behavior of this actor in case the update fails (with an error).
o GetInDependencies(CATListValCATBaseUnknown_var&,CATListOfInt&)
Retrieves the list of IN dependencies of this actor.
o GetOtherLoadDependencies(CATListValCATBaseUnknown_var&,CATListOfInt&,LoadDepType&)
Retrieves the list of Load dependencies of this actor.
o GetOtherRelatedActors(CATListValCATBaseUnknown_var&,CATListOfInt&)
Retrieves the list of Other related actors of this actor.
o GetOutDependencies(CATListValCATBaseUnknown_var&,CATListOfInt&)
Retrieves the list of OUT dependencies of this actor.
o GetPLMComponentsPotentiallyModifiedByUpdate(CATListValCATBaseUnknown_var&)
Returns all PLM components on which write rights could be needed for update.
o GetPLMStaticErrors(CATUnicodeString&)
Retrieves a static error or a static warning.
o GetUnitStatus(CATPLMUpdateStatus&)
Retrieves unit status of this actor.
o GetVisibility(ActorVisibility&)
Retrieves the visibility of this actor.
o IsActive(int&)
Retrieves the activity of this actor.
o UnitPLMUpdate(CATUnicodeString&)
Updates this actor unitarily.

Enumerated Type Index


o ActorVisibility
Enumeration to determine if the current update actor should appear as a node in the displayed update graph that can be viewed in the update assistant.
o CATPLMUpdateStatus
Enumeration of possible statuses of the public actor (statuses returned by the GetUnitStatus method).
o ErrorInCycleBehavior
Enumeration of the ways in which the node associated to this actor should be dealt with in case an error occurs during the unit update of this actor.
o LoadDepType
Enumeration of the ways in which the other load dependencies declared by this actor should be dealt with.

Methods


o GetErrorInCycleBehavior
public virtual GetErrorInCycleBehavior( oBehavior)
Returns the behavior of this actor in case the update fails (with an error).
Role: This method returns the behavior of this actor in case it is in a complex node, and its update fails. In some case, other actors of the same complex node need to be updated first so that the update of the current actor succeeds, so we allow the current actor to have its update fail once.
Default Behavior: the actor is in error at the first failed update attempt.
Parameters:
oBehavior
[out] The behavior in case of failure at update. StopAtFirst = 0 : the node and the complex node are in error when the update of an actor failed with an error. StopAtSecond = 1 : at first error, the actor is considered as out of date, and it is really in error when the update still fails at the second time in the cycle.
Returns:
S_OK if everything ran ok, E_UNEXPECTED if an unexpected error occurs.
o GetInDependencies
public virtual GetInDependencies( oDep,
oListOfLoadMode)
Retrieves the list of IN dependencies of this actor.
Role: This method retrieves a list of IN dependencies, which are actors which must be already up to date before updating this actor. Note that all the IN dependencies may not be in the returned list, as they can also be integrated in the update graph through their own GetOutDependencies for example.
Default Behavior: the default behavior of this method is to append nothing in the output list oDep.
Parameters:
oDep
[out] The list of IN dependencies. Those elements should adhere either to CATIAssemblyUpdateActor, or to CATIPLMUpdateActor.
oListOfLoadMode
[out] The list of load mode in which the dependency must be, associated to oDep. PLMMode = 0, VisuMode = 1, LinkableMode = 2, EditMode = 3, DMUMode = 4, UVMode = 5.
Returns:
S_OK if everything ran ok, E_UNEXPECTED if an unexpected error occurs.
o GetOtherLoadDependencies
public virtual GetOtherLoadDependencies( oDep,
oListOfLoadMode,
oType)
Retrieves the list of Load dependencies of this actor.
Role: This method retrieves a list of Load dependencies, which are actors which need to be loaded before this actor is updated.
Default Behavior: the default behavior of this method is to append nothing in the output list oDep.
Parameters:
oDep
[out] The list of Load dependencies. Those elements should adhere either to CATIAssemblyUpdateActor, or to CATIPLMUpdateActor.
oListOfLoadMode
[out] The list of load mode in which the dependency must be, associated to oDep. PLMMode = 0, VisuMode = 1, LinkableMode = 2, EditMode = 3, DMUMode = 4, UVMode = 5.
oType
[out] The load type. Direct: the components in the oDep list will be loaded before updating this actor. DispatchIn: the components in the oDep list (if it is loadable) or their IN dependencies (if it is transitive) will be loaded before updating this actor. DispatchOut: the components in the oDep list (if it is loadable) or their OUT dependencies (if it is transitive) will be loaded before updating this actor.
Returns:
S_OK if everything ran ok, E_UNEXPECTED if an unexpected error occurs.
o GetOtherRelatedActors
public virtual GetOtherRelatedActors( oDep,
oListOfLoadMode)
Retrieves the list of Other related actors of this actor.
Role: This method retrieves a list of Other related actors, which are neither IN, OUT nor LOAD dependencies of this actor. It may be useful to prepare caches of these related actors.
Default Behavior: the default behavior of this method is to append nothing in the output list oDep.
Parameters:
oDep
[out] The list of Other related actors. Those elements should adhere either to CATIAssemblyUpdateActor, or to CATIPLMUpdateActor.
oListOfLoadMode
[out] The list of load mode in which the related actor must be, associated to oDep. PLMMode = 0, VisuMode = 1, LinkableMode = 2, EditMode = 3, DMUMode = 4, UVMode = 5.
Returns:
S_OK if everything ran ok, E_UNEXPECTED if an unexpected error occurs.
o GetOutDependencies
public virtual GetOutDependencies( oDep,
oListOfLoadMode)
Retrieves the list of OUT dependencies of this actor.
Role: This method retrieves a list of OUT dependencies, which are actors which need that is actor is up to date before being updated. Note that most OUT dependencies already declared this actor as an IN dependency, and they do not need to be declared as OUT dependencies again. This method only needs to return OUT dependencies corresponding to actors which has not declared this actor as an IN dependency.
Default Behavior: the default behavior of this method is to append nothing in the output list oDep.
Parameters:
oDep
[out] The list of OUT dependencies. Those elements should adhere either to CATIAssemblyUpdateActor, or to CATIPLMUpdateActor.
oListOfLoadMode
[out] The list of load mode in which the dependency must be, associated to oDep. PLMMode = 0, VisuMode = 1, LinkableMode = 2, EditMode = 3, DMUMode = 4, UVMode = 5.
Returns:
S_OK if everything ran ok, E_UNEXPECTED if an unexpected error occurs.
o GetPLMComponentsPotentiallyModifiedByUpdate
public virtual GetPLMComponentsPotentiallyModifiedByUpdate( oListImpacted)
Returns all PLM components on which write rights could be needed for update.
Role: This method must return every PLM components that may be modified by the update of this CATIPLMUpdateActor. If a PLM component is not returned, that means that this PLM component is never modified by the update of this CATIPLMUpdateActor, whatever its state.
Default Behavior: the default behavior of this method is to append nothing in the output list oComponentsList.
Parameters:
ioComponentsList
[inout] The list in which every components on which write rights could be needed will be added.
Returns:
S_OK if everything ran ok, E_UNEXPECTED if an unexpected error occurs.
o GetPLMStaticErrors
public virtual GetPLMStaticErrors( oDisplayedError)
Retrieves a static error or a static warning.
Role: In case the update returns a status in warning or in error even before being updated, the static warning or error can be retrieved using this method.
Default Behavior: no default behavior for this method : it would fail.
Parameters:
oDisplayedError
[out] In case the status is in error or in warning, this is the static error or warning to be displayed to the user.
Returns:
S_OK if there is one error (oDisplayedError is valued), S_FALSE if there is one warning but no error (oDisplayedError is valued), E_FAIL if there is neither error nor warning. E_UNEXPECTED if an unexpected error occurs.
o GetUnitStatus
public virtual GetUnitStatus( oUnitStatus)
Retrieves unit status of this actor.
Role: This method retrieves the PLM Update unit status of this actor.
Default Behavior: by default, the returned status is "Up to Date".
Parameters:
oUnitStatus
[out] The unit status of this actor.
Returns:
S_OK if everything ran ok, E_UNEXPECTED if an unexpected error occurs.
o GetVisibility
public virtual GetVisibility( oVisibility)
Retrieves the visibility of this actor.
Role: This method returns the visibility of this actor. If the actor is visible, it will appear in its own simple node in the update graph in the update assistant. If it is not visible, it will not appear in the graph but it will still appear in the detailed list below the graph when its complex node is selected.
Default Behavior: the actor is not visible by default.
Parameters:
oVisibility
[out] The visibility of the actor: 0 = NeverVisible, 1 = VisibleInList, 2 = AlwaysVisible.
Returns:
S_OK if everything ran ok, E_UNEXPECTED if an unexpected error occurs.
o IsActive
public virtual IsActive( oActivity)
Retrieves the activity of this actor.
Role: This method returns the activity of this actor. If the actor is inactive, it will not be inserted in the update graph and it will not participate to the PLM Update process.
Default Behavior: the actor is active by default.
Parameters:
oActivity
[out] The activity of the actor: 0 = inactive, 1 = active.
Returns:
S_OK if everything ran ok, E_UNEXPECTED if an unexpected error occurs.
o UnitPLMUpdate
public virtual UnitPLMUpdate( oDisplayedError)
Updates this actor unitarily.
Role: This method launches the process which will update this actor. At the end of this method, this method must be either up to date, or out of date with error (dynamic error).
Default Behavior: no default behavior for this method : it would fail.
Parameters:
oDisplayedError
[out] In case the update failed, this is the error to be displayed to the user.
Returns:
S_OK if the update succeeded and the actor should be up to date now, E_FAIL if a dynamic error occured, in which case oDisplayedError is valued. E_UNEXPECTED if an unexpected error occurs.

Enumerated Types


o ActorVisibility
enum ActorVisibility {
  NeverVisible,
  VisibleInList,
  AlwaysVisible
}
Enumeration to determine if the current update actor should appear as a node in the displayed update graph that can be viewed in the update assistant. In case this actor is set as not visible, it will not appear in the graph as a node, but will be merged with the another displayed node. As a result, this actor will still be seen in the detailed list of that node when selected, below the update graph. This is only used in the GetVisibility method.
Parameters:
NeverVisible
Actor is never visible, neither in the update graph nor in the detailed list below the update graph.
VisibleInList
Actor is not visible in the update graph, except in the detailed list below the update graph.
AlwaysVisible
Actor is visible in the update graph and in the detailed list below the update graph.
o CATPLMUpdateStatus
enum CATPLMUpdateStatus {
  Status_UndefinedStatus,
  Status_UpToDate,
  Status_OutOfDate,
  Status_UpToDateWithWarnings,
  Status_OutOfDateWithWarnings,
  Status_Error,
  Status_DynamicError
}
Enumeration of possible statuses of the public actor (statuses returned by the GetUnitStatus method). Notions of persistent errors or warnings and volatile errors or warnings are introduced. A persistent error or warning is detected by the GetUnitStatus, a volatile error or warning is only detected during the update (UnitPLMUpdate method), it is a runtime error or warning. The UnitPLMUpdate method and the following enumeration only manage persistent errors.
Parameters:
Status_UndefinedStatus
Undefined status (should never be returned or given as input parameter).
Status_UpToDate
UpToDate, no persistent warnings or errors.
Status_OutOfDate
OutOfDate, no persistent warnings or errors.
Status_UpToDateWithWarnings
UpToDate, no persistent errors, but at least one persistent warning.
Status_OutOfDateWithWarnings
OutOfDate, no persistent errors, but at least one persistent warning.
Status_Error
Update operation is impossible because there is a persistent error.
Status_DynamicError
Update operation failed because a volatile error occurred.
o ErrorInCycleBehavior
enum ErrorInCycleBehavior {
  StopAtFirst,
  StopAtSecond
}
Enumeration of the ways in which the node associated to this actor should be dealt with in case an error occurs during the unit update of this actor. Either an error in the unit update automatically stops the update process and triggers the update report to display that error, or the first error is "ignored" and the actor is given a second chance to be corretly updated (it may be useful in a complex node where this unit update requires that another node amongst the ones in the same complex node is updated first). In that case, the second error will stop the update process and display the update report. This is only used in the GetErrorInCycleBehavior method.
Parameters:
StopAtFirst
Normal behavior : the node and the complex node are in error when the update of an actor failed with an error.
StopAtSecond
At first error, the actor is considered as out of date, and it is really in error when the update still fails at the second time in the cycle.
o LoadDepType
enum LoadDepType {
  Direct,
  DispatchIn,
  DispatchOut
}
Enumeration of the ways in which the other load dependencies declared by this actor should be dealt with. In any case the load dependency will be loaded before this actor is updated. But it can also be chosen that the load dependency is loaded before that any IN dependency of this actor is updated (meaning that it is loaded way before this actor is updated), or that the load dependency remain loaded until the last OUT dependency of this actor (it should be the root) is updated (meaning that it remains loaded until the end of the PLM Update). This is only used in the GetOtherLoadDependencies method.
Parameters:
Direct
Direct : the load dependency is loaded before this actor is updated.
DispatchIn
Dispatch inwards: the load dependency is loaded before any IN dependency of this actor is updated.
DispatchOut
Dispatch outwards: the load dependency remains loaded before any OUT dependency of this actor is updated.

This object is included in the file: CATIPLMUpdateActor.h
If needed, your Imakefile.mk should include the module: CATPLMUpdateUseItf

Copyright © 1999-2014, Dassault Systèmes. All rights reserved.