oaPlugInDMTypes.h File Reference

Go to the source code of this file.

Defines

#define oaPlugInDMTypes_P
#define oacDMSystemPreservesFollowersCap   "PreservesFollowers"
#define oacDMSystemSupportsViewFilesCap   "SupportsViewFiles"
#define oacDMSystemMaxNameLengthMetric   "MaxNameLength"
#define oacDMSystemMaxCellViewsMetric   "MaxCellViews"
#define oavNumLibAccessLevels   3
#define oavNumDMLockStatus   3
#define oavNumLibModes   3
#define oavNumLibAccessEnums   2
#define oavNumVCMessageTypes   5
#define oavNumVCOperations   12
#define oavNumVCCaps   15
#define oavNumVCObserverResults   2
#define oavNumVCQueryDepths   5
#define oavNumVersionComps   5
#define oavNumSaveRecoverTypes   2

Enumerations

enum  oaLibAccessLevelEnum { oacNoLibAccessLevel = 0, oacReadLibAccessLevel = 1, oacWriteLibAccessLevel = 2 }
enum  oaDMLockStatusEnum { oacNotLocked = 0, oacLockedByCurrentProcess = 1, oacLockedByForeignProcess = 2 }
enum  oaLibModeEnum { oacSharedLibMode = 0, oacNonSharedLibMode = 1, oacReadOnlyLibMode = 2 }
enum  oaLibAccessEnum { oacReadLibAccess = 0, oacWriteLibAccess = 1 }
enum  oaVCMessageTypeEnum {
  oacVCMsgTypeInfo = 0, oacVCMsgTypeWarning = 1, oacVCMsgTypeError = 2, oacVCMsgTypeStatus = 3,
  oacVCMsgTypeQueryOk = 4
}
enum  oaVCOperationEnum {
  oacVCOperationGetStatus = 0, oacVCOperationGetControlledObjects = 1, oacVCOperationGetControlledLibs = 2, oacVCOperationGetVersions = 3,
  oacVCOperationGetWorkingVersion = 4, oacVCOperationGetWorkingVersions = 5, oacVCOperationUpdate = 6, oacVCOperationMakeEditable = 7,
  oacVCOperationCancelEdit = 8, oacVCOperationCommitEdits = 9, oacVCOperationSetControlled = 10, oacVCOperationUnsetControlled = 11
}
enum  oaVCCapEnum {
  oacCommitMayChangeFilesVCCap = 0, oacHasVersionsVCCap = 1, oacSupportsGetStatusVCCap = 2, oacSupportsGetControlledObjectsVCCap = 3,
  oacSupportsGetControlledLibsVCCap = 4, oacSupportsGetVersionsVCCap = 5, oacSupportsGetWorkingVersionVCCap = 6, oacSupportsGetWorkingVersionsVCCap = 7,
  oacSupportsUpdateVCCap = 8, oacSupportsMakeEditableVCCap = 9, oacSupportsLockVCCap = 10, oacSupportsCancelEditVCCap = 11,
  oacSupportsCommitEditsVCCap = 12, oacSupportsSetControlledVCCap = 13, oacSupportsUnSetControlledVCCap = 14
}
enum  oaVCObserverResultEnum { oacVCObserverResultOk = 0, oacVCObserverResultAbort = 1 }
enum  oaVCQueryDepthEnum {
  oacFileVCQueryDepth = 0, oacCellVCQueryDepth = 1, oacViewVCQueryDepth = 2, oacCellViewVCQueryDepth = 3,
  oacCellViewFileVCQueryDepth = 4, oacMaxQueryDepth = 4
}
enum  oaVersionCompEnum {
  oacVersionCompEqual = 0, oacVersionCompEarlier = 1, oacVersionCompLater = 2, oacVersionCompDifferentBranch = 3,
  oacVersionCompIncompatable = 4
}
enum  oaSaveRecoverTypeEnum { oacAutoSaveType = 0, oacCriticalSaveType = 1 }


Define Documentation

#define oacDMSystemMaxCellViewsMetric   "MaxCellViews"
 

#define oacDMSystemMaxNameLengthMetric   "MaxNameLength"
 

#define oacDMSystemPreservesFollowersCap   "PreservesFollowers"
 

#define oacDMSystemSupportsViewFilesCap   "SupportsViewFiles"
 

#define oaPlugInDMTypes_P
 

#define oavNumDMLockStatus   3
 

#define oavNumLibAccessEnums   2
 

#define oavNumLibAccessLevels   3
 

#define oavNumLibModes   3
 

#define oavNumSaveRecoverTypes   2
 

#define oavNumVCCaps   15
 

#define oavNumVCMessageTypes   5
 

#define oavNumVCObserverResults   2
 

#define oavNumVCOperations   12
 

#define oavNumVCQueryDepths   5
 

#define oavNumVersionComps   5
 


Enumeration Type Documentation

enum oaDMLockStatusEnum
 

Enumeration values:
oacNotLocked  "not locked"
oacLockedByCurrentProcess  "locked by current process"
oacLockedByForeignProcess  "locked by foreign process"

enum oaLibAccessEnum
 

Enumeration values:
oacReadLibAccess  "read"
oacWriteLibAccess  "write"

enum oaLibAccessLevelEnum
 

Enumeration values:
oacNoLibAccessLevel  "no access"
oacReadLibAccessLevel  "read access"
oacWriteLibAccessLevel  "write access"

enum oaLibModeEnum
 

Enumeration values:
oacSharedLibMode  "shared" This process will share the access to the library with other processes and may write to the library files in it
oacNonSharedLibMode  "nonShared" Only this process will be allowed to access the library and it may write to the library and files in it
oacReadOnlyLibMode  "readOnly" This process will only read the library and its files. Other processes may access the library in read mode as well

enum oaSaveRecoverTypeEnum
 

Enumeration values:
oacAutoSaveType  "oaAutoSave"
oacCriticalSaveType  "oaCriticalSave"

enum oaVCCapEnum
 

This enumeration represents all the version control capabilities that the OpenAccess DM implementation requires. This list can grow, but existing values will never change. Implementors must be able to respond to values of this enum that are not in existence at the time the code is compiled. The safest approach is to return false in this case, usually in the default section of a switch statement.

Enumeration values:
oacCommitMayChangeFilesVCCap  "commitMayChangeFiles" A true result when this capability is queried indicates that the contents of controlled files may change when a commit operation is issued.
oacHasVersionsVCCap  "hasVersions" This capability indicates that the current VC system can keep track of multiple version of a file. A false response indicates that only the last version of a file is maintained in the VC repository.
oacSupportsGetStatusVCCap  "supportsGetStatus" This capability represents whether the VC system supports the getStatus funtions.
oacSupportsGetControlledObjectsVCCap  "supportsGetControlledObjects" This capability represents whether the VC system supports the getControlledObjects function.
oacSupportsGetControlledLibsVCCap  "supportsGetControlledLibs" This capability represents whether the VC system supports the getControlledLibs function.
oacSupportsGetVersionsVCCap  "supportsGetVersions" This capability represents whether the VC system supports the getVersions function.
oacSupportsGetWorkingVersionVCCap  "supportsGetWorkingVersion" This capability represents whether the VC system supports the getWorkingVersion function.
oacSupportsGetWorkingVersionsVCCap  "supportsGetWorkingVersions" This capability represents whether the VC system supports the getWorkingVersions function.
oacSupportsUpdateVCCap  "supportsUpdate" This capability represents whether the VC system supports the update function.
oacSupportsMakeEditableVCCap  "supportsMakeEditable" This capability represents whether the VC system supports the makeEditable function.
oacSupportsLockVCCap  "supportsLock" This capability represents whether the VC system supports locking of check-outs from the repository.
oacSupportsCancelEditVCCap  "supportsCancelEdit" This capability represents whether the VC system supports the cancelEdit function.
oacSupportsCommitEditsVCCap  "supportsCommitEdits" This capability represents whether the VC system supports the commitEdits function.
oacSupportsSetControlledVCCap  "supportsSetControlled" This capability represents whether the VC system supports the setControlled function.
oacSupportsUnSetControlledVCCap  "supportsUnSetControlled" This capability represents whether the VC system supports the unSetControlled function.

enum oaVCMessageTypeEnum
 

This enumeration represents the types of messages that are passed to the client via the IVCMessageObserver interface.

Enumeration values:
oacVCMsgTypeInfo  "Info" The message is informational only. This is typically used as the message for information queried from the VC system, for example log information on a controlled file.
oacVCMsgTypeWarning  "Warning" This value of the message type is used when the message being sent to the client represents a warning being issued by the VC system.
oacVCMsgTypeError  "Error" This value of the message type is used when the message being sent to the client represents an error being issued by the VC system.
oacVCMsgTypeStatus  "Status" This value is used to indicate that the message being sent to the client represents status information. For example, if files are being checked out as a result of the current operation, the VC system may send the paths to those files as messages using this message type.
oacVCMsgTypeQueryOk  "QueryOk" The message is a request for an Ok or Cancel decision from the client. When this message type is used, the return value of IVCMessageObserver::onMessageOut() is checked by the VC system. One of the values found in oaVCObserverResultEnum is expected, and used to determine if the current operation should continue or be aborted.

enum oaVCObserverResultEnum
 

This enumeration contains the legal responses to a oacVCMsgTypeQueryOk message type. The appropriate value is passed by the client as the return value from the IVCMessageObserver::onMessageOut() call.

Enumeration values:
oacVCObserverResultOk  "Ok" Proceed with the current operation.
oacVCObserverResultAbort  "Abort" Abort the current operation.

enum oaVCOperationEnum
 

This enumeration is a list of the operations to which a message passed through the IVCMessageObserver may be related. The operation in effect at the time the message was issued is passed in the form of a value from this enum to the IVCMessageObserver::onMessageOut() function. The values are self explanetory.

Enumeration values:
oacVCOperationGetStatus  "GetStatus"
oacVCOperationGetControlledObjects  "GetControlledObjects"
oacVCOperationGetControlledLibs  "GetControlledLibs"
oacVCOperationGetVersions  "GetVersions"
oacVCOperationGetWorkingVersion  "GetWorkingVersion"
oacVCOperationGetWorkingVersions  "GetWorkingVersions"
oacVCOperationUpdate  "Update"
oacVCOperationMakeEditable  "MakeEditable"
oacVCOperationCancelEdit  "CancelEdit"
oacVCOperationCommitEdits  "CommitEdits"
oacVCOperationSetControlled  "SetControlled"
oacVCOperationUnsetControlled  "UnsetControlled"

enum oaVCQueryDepthEnum
 

This enumeration represents the depth to which the getControlledObjects function goes in responding to the call. If the object that this depth applies to is an IDMLib, all values of depth are valid. In this case, if the value oacCellVCQueryDepth is passed in, the resulting collection of IDMObjects will contain only the cells in the current library that are controlled by this VC system. The value oacFileVCQueryDepth represents the files that are found at the container level (for example Lib files), while the value oacCellViewFileVCQueryDepth means go to the bottom-most file depth.

Enumeration values:
oacFileVCQueryDepth  "fileDepth" This depth represents the imediate child files of this container -- for example, if the container is a library that contains files, cells and views, this depth will only include the files.
oacCellVCQueryDepth  "cellDepth" If the container is a library, this depth will include all of the cell objects owned by that library. This level is cululative with previous levels, so it also will include files in this container.
oacViewVCQueryDepth  "viewDepth" If the container is a library, this depth will include all of the view objects owned by that library. This level is cululative with previous levels, so it also will include cells and files in this container.
oacCellViewVCQueryDepth  "cellViewDepth" If the container is a library, this depth will include all of the cellView objects owned by that library. This level is cululative with previous levels, so it also will include cells, views and files in this container.
oacCellViewFileVCQueryDepth  "cellViewFileDepth" This level is used to indicate that the operation should be recursive to the lowest levels of the library hierarchy - the cellView file. Use of this depth with any container will cause all decendents of that container also to be selected for that operation.
oacMaxQueryDepth 

enum oaVersionCompEnum
 

This enumeration represents the possible return values of the IVersion::compare() function. If the versions represent the same version, IVersion::cEqual is returned (not just if it is the same version object). IVersion::cEarlier means that the version being passed in is earlier in that branch, while IVersion::cLater means that it is later in the branch. The IVersion::cDifferentBranch value means that the incoming version is not on the same branch, while IVersion::cIncompatable means it is from an incompatable VC system.

Enumeration values:
oacVersionCompEqual  "versionCompEqual" The two version are semantically identical - that is, they refer to the same version in the repository.
oacVersionCompEarlier  "versionCompEarlier" The version being passed in to the comparison is earlier than the one being compared to. This usually means that the earlier version either has an earlier creation date or is a lower version number, or both.
oacVersionCompLater  "versionCompLater" The version being passed in to the comparison is later than the one being compared to. This usually means that the later version either has a later creation date or is a higher version number, or both.
oacVersionCompDifferentBranch  "versionCompDifferentBranch" For VC systems that choose not to make an earlier/later determination for versions on different branches, this value can be returned to indicate this condition.
oacVersionCompIncompatable  "versionCompIncompatable" This value is returned when the two versions are fundamentally incompatable. This usually means that they represent versions in two different VC systems.

Return to top of page