Wwise SDK 2019.1.11
_i_source_control_8h_source
Version
Other Documentation
menu_open
link
Wwise SDK 2019.1.11
|
ISourceControl.h
56 /// Wwise source control plug-in interface. This is the interface that the plug-in must implement. It contains
57 /// all the necessary functions to perform source control operations and manage the Wwise source control UI.
68 /// Operation result. Some interface functions need to return the result of the operation. This is used
76 };
78 /// Menu type. The operation list may vary depending on the location where a menu containing operations
82 OperationMenuType_WorkUnits = 0,///< The menu is displayed in the Workgroup Manager's 'Work Units' tab
85 };
87 /// Pre/PostCreateOrModify Operation flags. These flags represent the operation(s) performed on files.
97 OperationEffect_LocalContentModification = 1 << 0, ///< The operation will modify the local content of the file
98 OperationEffect_ServerContentModification = 1 << 1, ///< The operation will modify the remote content (on the server) of the file
125 unsigned int in_uiIndex, ///< in: The index of the moved file. Must be >= 0 and < GetFileCount()
142 /// 'Filename to Status' map item. This is the type used in the AK::Wwise::ISourceControl::FilenameToStatusMap
150 /// Operation list item. This is the type used in the AK::Wwise::ISourceControl::OperationList SourceControlContainers::IAkList template class.
154 bool m_bEnabled; ///< True: the operation is enabled in the menu, False: the operation is disabled (grayed out) in the menu
157 /// FilenameToIconMap item. This is the type used to display the file status icon and tool tip text
162 BSTR m_bstrToolTip; ///< The tool tip text that will be displayed when the user mouses over the icon
168 /// String List. When Wwise needs to pass a file name list, it gives this container to the plug-in.
173 /// Plug-in ID list. When Wwise needs to have the list of plug-ins that a DLL contains, it requests
177 /// When Wwise needs to have the list of operations that are available in a certain context, it requests
178 /// the list of operations using this list type. The contexts are determined by the AK::Wwise::ISourceControl::OperationMenuType
190 /// The AK:Wwise::ISourceControl interface offers a way to display custom icons in the Project Explorer. This map
191 /// type must be filled in by the plug-in when Wwise gives it a file name list. CString objects are used as keys, and are associated
192 /// to FilenameToIconMapItem objects. The HICON m_hIcon member will be NULL when there is no icon associated with the file.
195 typedef SourceControlContainers::IAkMap<LPCWSTR, LPCWSTR, FilenameToIconMapItem, const FilenameToIconMapItem&> FilenameToIconMap;
197 /// When the Workgroup Manager needs to fill in the 'Status' and 'Owners' columns of work units or source lists,
198 /// the plug-in needs to fill in this map with the corresponding text. File names are used as keys, and are associated
203 typedef SourceControlContainers::IAkMap<LPCWSTR, LPCWSTR, FilenameToStatusMapItem, const FilenameToStatusMapItem&> FilenameToStatusMap;
207 /// Plug-in information structure. This structure gives a simple overview of the plug-in's capabilities.
214 bool m_bShowConfigDlgAvailable; ///< Used to enable/disable the 'Config...' button in the Project Settings
215 DWORD m_dwUpdateCommandID; ///< Indicates the command ID for the Update command, s_dwInvalidOperationID (-1) if not supported
216 DWORD m_dwCommitCommandID; ///< Indicates the command ID for the Commit/Submit/Checkin command, s_dwInvalidOperationID (-1) if not supported
217 DWORD m_dwRenameCommandID; ///< Indicates the command ID for the Rename command, s_dwInvalidOperationID (-1) if not supported
218 DWORD m_dwMoveCommandID; ///< Indicates the command ID for the Move command, s_dwInvalidOperationID (-1) if not supported
219 DWORD m_dwAddCommandID; ///< Indicates the command ID for the Add command, s_dwInvalidOperationID (-1) if not supported
220 DWORD m_dwDeleteCommandID; ///< Indicates the command ID for the Delete command, s_dwInvalidOperationID (-1) if not supported
221 DWORD m_dwRevertCommandID; ///< Indicates the command ID for the Revert command, s_dwInvalidOperationID (-1) if not supported
222 DWORD m_dwDiffCommandID; ///< Indicates the command ID for the Diff command, s_dwInvalidOperationID (-1) if not supported
223 DWORD m_dwCheckOutCommandID; ///< Indicates the command ID for the Diff command, s_dwInvalidOperationID (-1) if not supported
224 DWORD m_dwRenameNoUICommandID; ///< Indicates the command ID for the Rename command, showing no User Interface, s_dwInvalidOperationID (-1) if not supported
225 DWORD m_dwMoveNoUICommandID; ///< Indicates the command ID for the Move command, showing no User Interface, s_dwInvalidOperationID (-1) if not supported
226 DWORD m_dwDeleteNoUICommandID; ///< Indicates the command ID for the Delete command, showing no User Interface, s_dwInvalidOperationID (-1) if not supported
227 bool m_bStatusIconAvailable; ///< Indicates that the plug-in supports Project Explorer custom icons
232 AK::Wwise::ISourceControlUtilities* in_pUtilities, ///< A pointer to the utilities class. The interface is not
234 bool in_bAutoAccept ///< Used when running in command line mode, where user should not be prompted to confirm source control transactions.
243 /// This function is called when the user clicks the 'Config...' button in the Project Settings.
253 const StringList& in_rFilenameList, ///< The file name list for which Wwise needs to get the operation list
269 /// Gets the text to be displayed in the 'Status' and 'Owners' columns of the Workgroup Manager.
272 const StringList& in_rFilenameList, ///< A list of the file names for which Wwise needs to get the status
274 DWORD in_dwTimeoutMs = INFINITE ///< The maximum timeout in millisecond for the request to be cancelled, pass INFINITE for no timeout
277 /// In a similar way to AK::Wwise::ISourceControl::GetFileStatus(), this function gets the icons to be displayed in the
281 const StringList& in_rFilenameList, ///< A list of the file names for which Wwise needs to get the icons
283 DWORD in_dwTimeoutMs = INFINITE ///< The maximum timeout in millisecond for the request to be cancelled, pass INFINITE for no timeout
286 /// Gets the files that should be displayed in the Workgroup Manager file list, but that are not on the local disk.
290 const StringList& in_rDirectoryList, ///< A list of directories in which Wwise needs to get missing files
294 /// Performs an operation on files. This function is called when the user clicks on a source control operation
296 /// For Rename and Move operations in No-User-Interface mode, in_pTargetFilenameList contains the list of target names are known in advance.
299 const StringList& in_rFilenameList, ///< A list of the names of the files that the user selected in the Workgroup Manager or in the Project Explorer.
300 const StringList* in_pTargetFilenameList = NULL ///< Optional: A list of the names of the destination files. Pass NULL when not specified.
303 /// This method is called when the user adds files to the project (Work Units or Sources), saves the project,
304 /// or triggers any call to a Wwise operation that could alter source control files. It is called before Wwise performs
308 const StringList& in_rFilenameList, ///< A list of the names of the files that are to be added (some files may already exist)
309 CreateOrModifyOperation in_eOperation, ///< The operation(s) that will be performed on these files
310 bool& out_rContinue ///< A returned flag that indicates if Wwise is continuing the current operation
313 /// This method is called when the user adds files to the project (Work Units or Sources), saves the project,
314 /// or triggers any call to a Wwise operation that could alter source control files. It is called after Wwise performs
318 const StringList& in_rFilenameList, ///< A list of the names of the files that are to be added (Some files may already exist)
319 CreateOrModifyOperation in_eOperation, ///< The operation(s) that will be performed on these files
virtual AK::Wwise::ISourceControl::OperationResult GetFileStatusIcons(const StringList &in_rFilenameList, FilenameToIconMap &out_rFileIconsMap, DWORD in_dwTimeoutMs=INFINITE)=0
BSTR m_bstrStatus
Text displayed in the Workgroup Manager's 'Status' column.
Definition: ISourceControl.h:146
@ OperationMenuType_Explorer
The menu is displayed in the Project Explorer.
Definition: ISourceControl.h:84
@ OperationEffect_LocalContentModification
The operation will modify the local content of the file.
Definition: ISourceControl.h:97
virtual AK::Wwise::ISourceControl::OperationResult GetMissingFilesInDirectories(const StringList &in_rDirectoryList, StringList &out_rFilenameList)=0
DWORD m_dwRenameCommandID
Indicates the command ID for the Rename command, s_dwInvalidOperationID (-1) if not supported.
Definition: ISourceControl.h:217
SourceControlContainers::IAkList< LPCWSTR, LPCWSTR > StringList
Definition: ISourceControl.h:171
HICON m_hIcon
A handle to an icon that will be displayed in the Project Explorer.
Definition: ISourceControl.h:161
DWORD m_dwAddCommandID
Indicates the command ID for the Add command, s_dwInvalidOperationID (-1) if not supported.
Definition: ISourceControl.h:219
@ OperationMenuType_Sources
The menu is displayed in the Workgroup Manager's 'Sources' tab.
Definition: ISourceControl.h:83
BSTR m_bstrToolTip
The tool tip text that will be displayed when the user mouses over the icon.
Definition: ISourceControl.h:162
virtual DWORD GetOperationEffect(DWORD in_dwOperationID)=0
Gets the operation effect on the file(s) involved in the operation.
virtual void Init(AK::Wwise::ISourceControlUtilities *in_pUtilities, bool in_bAutoAccept)=0
This function is called when the plug-in is initialized after its creation.
BSTR m_bstrOwner
Text displayed in the Workgroup Manager's 'Owners' column.
Definition: ISourceControl.h:147
SourceControlContainers::IAkMap< LPCWSTR, LPCWSTR, FilenameToStatusMapItem, const FilenameToStatusMapItem & > FilenameToStatusMap
Definition: ISourceControl.h:203
bool m_bShowConfigDlgAvailable
Used to enable/disable the 'Config...' button in the Project Settings.
Definition: ISourceControl.h:214
DWORD m_dwDeleteNoUICommandID
Indicates the command ID for the Delete command, showing no User Interface, s_dwInvalidOperationID (-...
Definition: ISourceControl.h:226
@ OperationMenuType_WorkUnits
The menu is displayed in the Workgroup Manager's 'Work Units' tab.
Definition: ISourceControl.h:82
virtual void Destroy()=0
This function destroys the plug-in. The implementation is generally '{ delete this; }'.
DWORD m_dwDiffCommandID
Indicates the command ID for the Diff command, s_dwInvalidOperationID (-1) if not supported.
Definition: ISourceControl.h:222
virtual AK::Wwise::ISourceControl::OperationResult GetFileStatus(const StringList &in_rFilenameList, FilenameToStatusMap &out_rFileStatusMap, DWORD in_dwTimeoutMs=INFINITE)=0
This class contains static constants that can be useful to the plug-in.
Definition: ISourceControl.h:48
virtual IOperationResult * DoOperation(DWORD in_dwOperationID, const StringList &in_rFilenameList, const StringList *in_pTargetFilenameList=NULL)=0
virtual AK::Wwise::ISourceControl::OperationResult PreCreateOrModify(const StringList &in_rFilenameList, CreateOrModifyOperation in_eOperation, bool &out_rContinue)=0
DWORD m_dwRenameNoUICommandID
Indicates the command ID for the Rename command, showing no User Interface, s_dwInvalidOperationID (-...
Definition: ISourceControl.h:224
virtual LPCWSTR GetOperationName(DWORD in_dwOperationID)=0
Gets the operation name to display in user interface.
virtual void Destroy()=0
Implementations should call "delete this;".
virtual void GetMovedFile(unsigned int in_uiIndex, LPWSTR out_szFrom, LPWSTR out_szTo, unsigned int in_uiArraySize)=0
Return the move source and destination for the file at index in_uiIndex.
DWORD m_dwCommitCommandID
Indicates the command ID for the Commit/Submit/Checkin command, s_dwInvalidOperationID (-1) if not su...
Definition: ISourceControl.h:216
Operation list item. This is the type used in the AK::Wwise::ISourceControl::OperationList SourceCont...
Definition: ISourceControl.h:152
DWORD m_dwUpdateCommandID
Indicates the command ID for the Update command, s_dwInvalidOperationID (-1) if not supported.
Definition: ISourceControl.h:215
DWORD m_dwCheckOutCommandID
Indicates the command ID for the Diff command, s_dwInvalidOperationID (-1) if not supported.
Definition: ISourceControl.h:223
ISourceControl *(__stdcall * GetSourceControlInstanceFuncPtr)(const GUID &in_guidPluginID)
Definition: ISourceControl.h:350
DWORD m_dwMoveNoUICommandID
Indicates the command ID for the Move command, showing no User Interface, s_dwInvalidOperationID (-1)...
Definition: ISourceControl.h:225
@ CreateOrModifyOperation_Create
Files will be created during the operation.
Definition: ISourceControl.h:90
virtual unsigned int GetFileCount()=0
Returns how many files were moved during the operation.
DWORD m_dwMoveCommandID
Indicates the command ID for the Move command, s_dwInvalidOperationID (-1) if not supported.
Definition: ISourceControl.h:218
SourceControlContainers::IAkList< GUID > PluginIDList
Definition: ISourceControl.h:175
DWORD m_dwDeleteCommandID
Indicates the command ID for the Delete command, s_dwInvalidOperationID (-1) if not supported.
Definition: ISourceControl.h:220
BSTR m_bstrName
The name of the plug-in displayed in the Project Settings plug-in list.
Definition: ISourceControl.h:211
virtual OperationResult GetOperationResult()=0
Returns OperationResult_Succeed or OperationResult_Failed.
SourceControlContainers::IAkMap< LPCWSTR, LPCWSTR, FilenameToIconMapItem, const FilenameToIconMapItem & > FilenameToIconMap
Definition: ISourceControl.h:195
bool m_bEnabled
True: the operation is enabled in the menu, False: the operation is disabled (grayed out) in the menu...
Definition: ISourceControl.h:154
virtual AK::Wwise::ISourceControl::OperationResult GetFilesForOperation(DWORD in_dwOperationID, const StringList &in_rFilenameList, StringList &out_rFilenameList, FilenameToStatusMap &out_rFileStatusMap)=0
@ CreateOrModifyOperation_Modify
Files will be modified during the operation.
Definition: ISourceControl.h:91
CreateOrModifyOperation
Pre/PostCreateOrModify Operation flags. These flags represent the operation(s) performed on files.
Definition: ISourceControl.h:89
static const DWORD s_dwInvalidOperationID
Invalid operation ID (MUST NOT BE USED as an operation ID in OperationListItem)
Definition: ISourceControl.h:53
virtual AK::Wwise::ISourceControl::OperationResult PostCreateOrModify(const StringList &in_rFilenameList, CreateOrModifyOperation in_eOperation, bool &out_rContinue)=0
Plug-in information structure. This structure gives a simple overview of the plug-in's capabilities.
Definition: ISourceControl.h:209
@ OperationEffect_ServerContentModification
The operation will modify the remote content (on the server) of the file.
Definition: ISourceControl.h:98
SourceControlContainers::IAkList< OperationListItem > OperationList
Definition: ISourceControl.h:183
virtual AK::Wwise::ISourceControl::OperationResult GetOperationList(OperationMenuType in_menuType, const StringList &in_rFilenameList, OperationList &out_rOperationList)=0
bool m_bStatusIconAvailable
Indicates that the plug-in supports Project Explorer custom icons.
Definition: ISourceControl.h:227
The base interface for operations that return information to Wwise.
Definition: ISourceControl.h:105
Definition: ISourceControl.h:62
static const unsigned int s_uiMaxWorkUnitName
Maximum length that a work unit name can be.
Definition: ISourceControl.h:51
virtual void Term()=0
This function is called when the plug-in is terminated before its destruction.
virtual void GetFile(unsigned int in_uiIndex, LPWSTR out_szPath, unsigned int in_uiArraySize)=0
Return the successful file at index in_uiIndex.
void(__stdcall * GetSourceControlPluginInfoFuncPtr)(const GUID &in_rguidPluginID, PluginInfo &out_rPluginInfo)
Gets the AK::Wwise::ISourceControl::PluginInfo class associated with a given plug-in ID.
Definition: ISourceControl.h:343
void(__stdcall * GetSourceControlIDListFuncPtr)(PluginIDList &out_rPluginIDList)
Gets the plug-in ID list contained by the DLL file.
Definition: ISourceControl.h:338
virtual bool ShowConfigDlg()=0
DWORD m_dwRevertCommandID
Indicates the command ID for the Revert command, s_dwInvalidOperationID (-1) if not supported.
Definition: ISourceControl.h:221
Was this page helpful?
Need Support?
Questions? Problems? Need more info? Contact us, and we can help!
Visit our Support pageTell us about your project. We're here to help.
Register your project and we'll help you get started with no strings attached!
Get started with Wwise