PLMFolderInterfaces Interface PLMIFolder

Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.


interface PLMIFolder

Interface managing Folders.

Role: This interface is implemented by Root Folders and sub Folders.


Method Index


o DeleteFolderTree(PLMISubFolder*)
Deletes Folder Tree.
o DeleteFolderTree(CATListPtrPLMISubFolder&)
Deletes Folder Tree.
o InsertCopiedFolderTree(PLMISubFolder*,FolderCopyMode,PLMISubFolder*&,CATOmbLifeCycleRootsBag&)
Creates a new folder from a folder to copy and inserts it under this folder.
o InsertCopiedFolderTree(CATListPtrPLMISubFolder&,FolderCopyMode,CATListPtrPLMISubFolder&,CATOmbLifeCycleRootsBag&)
Creates new folders from a list of folders to copy and inserts it under this.
o InsertMovedFolderTree(PLMISubFolder*)
Moves a Folder tree and insert under current Folder.
o InsertMovedFolderTree(CATListPtrPLMISubFolder&)
Moves a list of Folder trees and insert under current Folder.
o InsertNewFolder(CATListValCATICkeParm_var&,PLMISubFolder*&)
o InsertNewFolder(CATIType_var,CATListValCATICkeParm_var&,PLMISubFolder*&)
Creates and inserts a new Folder.
o IsRootFolder()
Checks if Folder is a Root Folder or not.
o ListFolders(CATListPtrPLMISubFolder&,CATOmbLifeCycleRootsBag&)
Retrieves the aggregated Folders.
o NewFolderInsertion(CATListValCATICkeParm_var&,PLMISubFolder*&)
Creates and inserts a new Folder.

Methods


o DeleteFolderTree
public virtual HRESULT DeleteFolderTree(PLMISubFolder* iFolderToDelete) = 0
Deletes Folder Tree. This method expands full tree under Folder to delete. All folders in the expanded tree will be deleted.
Parameters:
iFolderToDelete
The Folder to Delete under current Folder.
Returns:
  • S_OK if the Folder was successfully deleted.
  • E_INVALIDARG : invalid argument (null pointer)
  • E_FAIL otherwise.
o DeleteFolderTree
public virtual HRESULT DeleteFolderTree(CATListPtrPLMISubFolder& iListFolderToDelete) = 0
Deletes Folder Tree. This method expands full tree under Folder to delete. All folders in the expanded tree will be deleted.
Parameters:
iListFolderToDelete
The list of folder to delete under current Folder.
Returns:
  • S_OK if the Folder was successfully deleted.
  • E_INVALIDARG : invalid argument (empty list or null pointer inside)
  • E_FAIL otherwise. If one fails, the whole list fails.
o InsertCopiedFolderTree
public virtual HRESULT InsertCopiedFolderTree(PLMISubFolder* iFolderToCopy,
FolderCopyMode iCopyMode,
PLMISubFolder*& oFolder,
CATOmbLifeCycleRootsBag& ioBag) = 0
Creates a new folder from a folder to copy and inserts it under this folder.
Role:This methods creates a new folder from the input folder iFolderToCopy according to iCopyMode. The new folder oFolder is inserted beneath the current one.

The new folder is created using the same environment as the one used for the root folder. In other words, all folders beneath a root folder, will be created with the same folder's customization find in the root's environment.

Parameters:
iFolderToCopy
The Folder to copy .
iCopyMode
The level of duplication concerning pointed objects.
oFolder
The created sub Folder.
ioBag
The Bag. Do not forget to RemoveAll()
Returns:
  • S_OK if the Folder was successfully created.
  • E_INVALIDARG : iFolderToCopy is not correct.
  • E_FAIL otherwise.
o InsertCopiedFolderTree
public virtual HRESULT InsertCopiedFolderTree(CATListPtrPLMISubFolder& iListFoldersToCopy,
FolderCopyMode iCopyMode,
CATListPtrPLMISubFolder& oListFolders,
CATOmbLifeCycleRootsBag& ioBag) = 0
Creates new folders from a list of folders to copy and inserts it under this.
Role:This methods creates a new folder from each folder of the input list iListFoldersToCopy according to iCopyMode. Each new folders is inserted beneath the current one.

The new folders are created using the same environment as the one used for the root folder. In other words, all folders beneath a root folder, will be created with the same folder's customization find in the root's environment.

Parameters:
iListFoldersToCopy
The Folders to copy.
iCopyMode
The level of duplication concerning pointed objects.
oListFolders
The created sub Folders.
ioBag
The Bag. Do not forget to RemoveAll()
Returns:
  • S_OK if the Folder was successfully created.
  • E_INVALIDARG invalid arguments (empty list or null pointer inside).
  • E_FAIL otherwise. If one fails, the whole list fails.
o InsertMovedFolderTree
public virtual HRESULT InsertMovedFolderTree(PLMISubFolder* iFolderToMove) = 0
Moves a Folder tree and insert under current Folder.
Parameters:
iFolderToMove
The Folder to insert under current Folder.
Returns:
  • S_OK if the Folder was successfully moved.
  • E_INVALIDARG : invalid argument (null pointer).
  • E_FAIL otherwise.
o InsertMovedFolderTree
public virtual HRESULT InsertMovedFolderTree(CATListPtrPLMISubFolder& iListFolderToMove) = 0
Moves a list of Folder trees and insert under current Folder.
Parameters:
iListFolderToMove
The Folders to insert under current Folder.
Returns:
  • S_OK if the Folder was successfully moved.
  • E_INVALIDARG : invalid argument (empty list or null pointer inside).
  • E_FAIL otherwise. If one fails, the whole list fails.
o InsertNewFolder
public virtual HRESULT InsertNewFolder(CATListValCATICkeParm_var& iAttrList,
PLMISubFolder*& oSubFolder) = 0
Deprecated:
R211 Use the NewFolderInsertion method Creates and inserts a new Folder.
Role:This method creates a new folder, and inserts it beneath the current folder (this).

The new folder is created using the same environment as the one used for the root folder. In other words, all folders beneath a root folder, will be created with the same folder's customization find in the root's environment.

Parameters:
iAttrList
All Public writable folder attributes. This list must contain at least all mandatory attributes and one of the Identifier Set.
oSubFolder
The created Sub Folder.
Returns:
  • S_OK if the Folder was successfully created.
  • E_FAIL otherwise.
o InsertNewFolder
public virtual HRESULT InsertNewFolder(CATIType_var lType,
CATListValCATICkeParm_var& iAttrList,
PLMISubFolder*& oSubFolder) = 0
Creates and inserts a new Folder.
Role:This method creates a new folder, and inserts it beneath the current folder (this).
Parameters:
lType
Type to provide for new Folder.
iAttrList
All Public writable folder attributes. This list must contain at least all mandatory attributes and one of the Identifier Set.
oSubFolder
The created Sub Folder.
Returns:
  • S_OK if the Folder was successfully created.
  • E_FAIL otherwise.
o IsRootFolder
public virtual CATBoolean IsRootFolder()= 0
Checks if Folder is a Root Folder or not.
Returns:
  • TRUE if Folder is a Root Folder.
  • FALSE otherwise.
o ListFolders
public virtual HRESULT ListFolders(CATListPtrPLMISubFolder& oFolderList,
CATOmbLifeCycleRootsBag& ioBag) = 0
Retrieves the aggregated Folders.
Parameters:
oFolderList
The list of aggregated Folders. This objects will need to be put into a bag
CATOmbLifeCycleRootsBag for correct lifecycle management.
ioBag
The Bag. Do not forget to RemoveAll()
Returns:
  • S_OK if the List of Folders was successfully retrieved.
  • E_FAIL otherwise.
o NewFolderInsertion
public virtual HRESULT NewFolderInsertion(CATListValCATICkeParm_var& iAttrList,
PLMISubFolder*& oSubFolder)=0
Creates and inserts a new Folder.
Role:This method creates a new folder, and inserts it beneath the current folder (this).

The new folder is created using the same environment as the one used for the root folder. In other words, all folders beneath a root folder, will be created with the same folder's customization find in the root's environment.

This API invokes the PLMIdentificationInitialization Business Logic to initialize attributes on the created Sub Folder, then attribute values are set with iAttrList.

Parameters:
iAttrList
List of attributes to set. Optional (can be NULL). This list should not contain any attributes relative to customization.
oSubFolder
The created Sub Folder.
Returns:
  • S_OK if the Folder was successfully created.
  • E_FAIL otherwise.

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

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