/* ** Command & Conquer Renegade(tm) ** Copyright 2025 Electronic Arts Inc. ** ** This program is free software: you can redistribute it and/or modify ** it under the terms of the GNU General Public License as published by ** the Free Software Foundation, either version 3 of the License, or ** (at your option) any later version. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program. If not, see . */ // Generated .IDL file (by the OLE/COM Object Viewer) // // typelib filename: SSAPI.DLL // Forward declare all types defined in this typelib import "wtypes.idl"; import "oaidl.idl"; import "ocidl.idl"; interface IVSSItemOld; interface IVSSItem; interface IVSSVersions; interface IVSSVersionOld; interface IVSSVersion; interface IVSSItems; interface IVSSCheckouts; interface IVSSCheckout; interface IVSSDatabaseOld; interface IVSSDatabase; interface IVSSUser; interface IVSSUsers; interface IVSSEventsOld; interface IVSSEvents; interface IVSS; interface IVSSEventHandler; [ uuid(783CD4E0-9D54-11CF-B8EE-00608CC9A71F), version(5.1), helpstring("Microsoft SourceSafe 6.0 Type Library"), helpfile("ssauto.hlp"), helpcontext(00000000) ] library SourceSafeTypeLib { // TLib : OLE Automation : {00020430-0000-0000-C000-000000000046} importlib("stdole32.tlb"); importlib("stdole2.tlb"); typedef [uuid(783CD4EF-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe operation flags")] enum { VSSFLAG_USERRONO = 1, VSSFLAG_USERROYES = 2, VSSFLAG_TIMENOW = 4, VSSFLAG_TIMEMOD = 8, VSSFLAG_TIMEUPD = 12, VSSFLAG_EOLCR = 16, VSSFLAG_EOLLF = 32, VSSFLAG_EOLCRLF = 48, VSSFLAG_REPASK = 64, VSSFLAG_REPREPLACE = 128, VSSFLAG_REPSKIP = 192, VSSFLAG_REPMERGE = 256, VSSFLAG_CMPFULL = 512, VSSFLAG_CMPTIME = 1024, VSSFLAG_CMPCHKSUM = 1536, VSSFLAG_CMPFAIL = 2048, VSSFLAG_RECURSNO = 4096, VSSFLAG_RECURSYES = 8192, VSSFLAG_FORCEDIRNO = 16384, VSSFLAG_FORCEDIRYES = 32768, VSSFLAG_KEEPNO = 65536, VSSFLAG_KEEPYES = 131072, VSSFLAG_DELNO = 262144, VSSFLAG_DELYES = 524288, VSSFLAG_DELNOREPLACE = 786432, VSSFLAG_BINTEST = 1048576, VSSFLAG_BINBINARY = 2097152, VSSFLAG_BINTEXT = 3145728, VSSFLAG_DELTAYES = 4194304, VSSFLAG_DELTANO = 8388608, VSSFLAG_UPDASK = 16777216, VSSFLAG_UPDUPDATE = 33554432, VSSFLAG_UPDUNCH = 50331648, VSSFLAG_GETYES = 67108864, VSSFLAG_GETNO = 134217728, VSSFLAG_CHKEXCLUSIVEYES = 268435456, VSSFLAG_CHKEXCLUSIVENO = 536870912, VSSFLAG_HISTIGNOREFILES = 1073741824 } VSSFlags; typedef [uuid(783CD4ED-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe file checkout status")] enum { VSSFILE_NOTCHECKEDOUT = 0, VSSFILE_CHECKEDOUT = 1, VSSFILE_CHECKEDOUT_ME = 2 } VSSFileStatus; typedef [uuid(783CD4EE-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe item type")] enum { VSSITEM_PROJECT = 0, VSSITEM_FILE = 1 } VSSItemType; typedef [uuid(2A0DE0E6-2E9F-11D0-9236-00AA00A1EB95), helpstring("SourceSafe rights values")] enum { VSSRIGHTS_READ = 1, VSSRIGHTS_CHKUPD = 2, VSSRIGHTS_ADDRENREM = 4, VSSRIGHTS_DESTROY = 8, VSSRIGHTS_ALL = 15, VSSRIGHTS_INHERITED = 16 } VSSRights; [ odl, uuid(783CD4E1-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe item interface"), dual, oleautomation ] interface IVSSItemOld : IDispatch { [id(0x00000001)] HRESULT _stdcall Spec([out, retval] BSTR* pSpec); [id(0x00000002), propget] HRESULT _stdcall Binary([out, retval] VARIANT_BOOL* pbBinary); [id(0x00000002), propput] HRESULT _stdcall Binary([in] VARIANT_BOOL pbBinary); [id(0x00000003), propget] HRESULT _stdcall Deleted([out, retval] VARIANT_BOOL* pbDeleted); [id(0x00000003), propput] HRESULT _stdcall Deleted([in] VARIANT_BOOL pbDeleted); [id(0x00000004), propget] HRESULT _stdcall Type([out, retval] int* piType); [id(0x00000005), propget] HRESULT _stdcall LocalSpec([out, retval] BSTR* pLocal); [id(0x00000005), propput] HRESULT _stdcall LocalSpec([in] BSTR pLocal); [id(0x00000006), propget] HRESULT _stdcall Name([out, retval] BSTR* pName); [id(0x00000006), propput] HRESULT _stdcall Name([in] BSTR pName); [id(0x00000007), propget] HRESULT _stdcall Parent([out, retval] IVSSItem** ppIParent); [id(0x00000008), propget] HRESULT _stdcall VersionNumber([out, retval] long* piVersion); [id(0x00000009), propget] HRESULT _stdcall Items( [in, optional, defaultvalue(0)] VARIANT_BOOL IncludeDeleted, [out, retval] IVSSItems** ppIItems); [id(0x0000000a)] HRESULT _stdcall Get( [in, out, optional, defaultvalue(0)] BSTR* Local, [in, optional, defaultvalue(0)] long iFlags); [id(0x0000000b)] HRESULT _stdcall Checkout( [in, optional, defaultvalue("")] BSTR Comment, [in, optional, defaultvalue("")] BSTR Local, [in, optional, defaultvalue(0)] long iFlags); [id(0x0000000c)] HRESULT _stdcall Checkin( [in, optional, defaultvalue("")] BSTR Comment, [in, optional, defaultvalue("")] BSTR Local, [in, optional, defaultvalue(0)] long iFlags); [id(0x0000000d)] HRESULT _stdcall UndoCheckout( [in, optional, defaultvalue("")] BSTR Local, [in, optional, defaultvalue(0)] long iFlags); [id(0x0000000e), propget] HRESULT _stdcall IsCheckedOut([out, retval] long* piStatus); [id(0x0000000f), propget] HRESULT _stdcall Checkouts([out, retval] IVSSCheckouts** ppICheckouts); [id(0x00000010), propget] HRESULT _stdcall IsDifferent( [in, optional, defaultvalue("")] BSTR Local, [out, retval] VARIANT_BOOL* pbDifferent); [id(0x00000011)] HRESULT _stdcall Add( [in] BSTR Local, [in, optional, defaultvalue("")] BSTR Comment, [in, optional, defaultvalue(0)] long iFlags, [out, retval] IVSSItem** ppIItem); [id(0x00000012)] HRESULT _stdcall NewSubproject( [in] BSTR Name, [in, optional, defaultvalue("")] BSTR Comment, [out, retval] IVSSItem** ppIItem); [id(0x00000013)] HRESULT _stdcall Share( [in] IVSSItem* pIItem, [in, optional, defaultvalue("")] BSTR Comment, [in, optional, defaultvalue(0)] long iFlags); [id(0x00000014)] HRESULT _stdcall Destroy(); [id(0x00000015)] HRESULT _stdcall Move([in] IVSSItem* pINewParent); [id(0x00000016)] HRESULT _stdcall Label( [in] BSTR Label, [in, optional, defaultvalue("")] BSTR Comment); [id(0x00000017), propget] HRESULT _stdcall Versions( [in, optional, defaultvalue(0)] long iFlags, [out, retval] IVSSVersions** pIVersions); [id(0x00000018), propget] HRESULT _stdcall Version( [in, optional] VARIANT Version, [out, retval] IVSSItem** ppIItem); }; [ odl, uuid(2A0DE0E7-2E9F-11D0-9236-00AA00A1EB95), helpstring("SourceSafe item interface"), dual, oleautomation ] interface IVSSItem : IVSSItemOld { [id(0x00000019), propget] HRESULT _stdcall Links([out, retval] IVSSItems** ppIItems); [id(0x0000001a)] HRESULT _stdcall Branch( [in, optional, defaultvalue("")] BSTR Comment, [in, optional, defaultvalue(0)] long iFlags, [out, retval] IVSSItem** ppIItem); }; [ odl, uuid(783CD4E7-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe versions collection"), dual, oleautomation ] interface IVSSVersions : IDispatch { [id(0xfffffffc), restricted, hidden] HRESULT _stdcall _NewEnum([out, retval] IUnknown** ppIEnum); }; [ odl, uuid(783CD4E8-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe version information"), dual, oleautomation ] interface IVSSVersionOld : IDispatch { [id(0x00000001), propget] HRESULT _stdcall Username([out, retval] BSTR* pUsername); [id(0x00000002), propget] HRESULT _stdcall VersionNumber([out, retval] long* piVersion); [id(0x00000003), propget] HRESULT _stdcall Action([out, retval] BSTR* pAction); [id(0x00000004), propget] HRESULT _stdcall Date([out, retval] DATE* pDate); [id(0x00000005), propget] HRESULT _stdcall Comment([out, retval] BSTR* pComment); [id(0x00000006), propget] HRESULT _stdcall Label([out, retval] BSTR* pLabel); [id(0x00000007), propget] HRESULT _stdcall VSSItem([out, retval] IVSSItem** ppIItem); }; [ odl, uuid(2A0DE0E9-2E9F-11D0-9236-00AA00A1EB95), helpstring("SourceSafe version information"), dual, oleautomation ] interface IVSSVersion : IVSSVersionOld { [id(0x00000008), propget] HRESULT _stdcall LabelComment([out, retval] BSTR* pComment); }; [ odl, uuid(783CD4E5-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe items collection interface"), dual, oleautomation ] interface IVSSItems : IDispatch { [id(0x00000001), propget] HRESULT _stdcall Count([out, retval] long* piCount); [id(00000000), propget] HRESULT _stdcall Item( [in] VARIANT sItem, [out, retval] IVSSItem** ppIItem); [id(0xfffffffc), restricted, hidden] HRESULT _stdcall _NewEnum([out, retval] IUnknown** ppIEnum); }; [ odl, uuid(8903A770-F55F-11CF-9227-00AA00A1EB95), helpstring("SourceSafe checkouts collection interface"), dual, oleautomation ] interface IVSSCheckouts : IDispatch { [id(0x00000001), propget] HRESULT _stdcall Count([out, retval] long* piCount); [id(00000000), propget] HRESULT _stdcall Item( [in] VARIANT sItem, [out, retval] IVSSCheckout** ppICheckout); [id(0xfffffffc), restricted, hidden] HRESULT _stdcall _NewEnum([out, retval] IUnknown** ppIEnum); }; [ odl, uuid(783CD4E6-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe checkouts interface"), dual, oleautomation ] interface IVSSCheckout : IDispatch { [id(0x00000001), propget] HRESULT _stdcall Username([out, retval] BSTR* pUsername); [id(0x00000002), propget] HRESULT _stdcall Date([out, retval] DATE* pDate); [id(0x00000003), propget] HRESULT _stdcall LocalSpec([out, retval] BSTR* pLocal); [id(0x00000004), propget] HRESULT _stdcall Machine([out, retval] BSTR* pMachine); [id(0x00000005), propget] HRESULT _stdcall Project([out, retval] BSTR* pProject); [id(0x00000006), propget] HRESULT _stdcall Comment([out, retval] BSTR* pComment); [id(0x00000007), propget] HRESULT _stdcall VersionNumber([out, retval] long* piVersion); }; [ odl, uuid(783CD4E2-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe database object interface"), dual, oleautomation ] interface IVSSDatabaseOld : IDispatch { [id(0x00000001)] HRESULT _stdcall Open( [in, optional, defaultvalue("")] BSTR SrcSafeIni, [in, optional, defaultvalue("")] BSTR Username, [in, optional, defaultvalue("")] BSTR Password); [id(0x00000002), propget] HRESULT _stdcall SrcSafeIni([out, retval] BSTR* pSrcSafeIni); [id(0x00000003), propget] HRESULT _stdcall DatabaseName([out, retval] BSTR* pDatabaseName); [id(0x00000004), propget] HRESULT _stdcall Username([out, retval] BSTR* pUsername); [id(0x00000005), propget] HRESULT _stdcall CurrentProject([out, retval] BSTR* pPrj); [id(0x00000005), propput] HRESULT _stdcall CurrentProject([in] BSTR pPrj); [id(0x00000006), propget] HRESULT _stdcall VSSItem( [in] BSTR Spec, [in, optional, defaultvalue(0)] VARIANT_BOOL Deleted, [out, retval] IVSSItem** ppIVSSItem); }; [ odl, uuid(2A0DE0E2-2E9F-11D0-9236-00AA00A1EB95), helpstring("SourceSafe database object interface"), dual, oleautomation ] interface IVSSDatabase : IVSSDatabaseOld { [id(0x00000007)] HRESULT _stdcall AddUser( [in] BSTR User, [in] BSTR Password, [in] VARIANT_BOOL ReadOnly, [out, retval] IVSSUser** ppIUser); [id(0x00000008), propget] HRESULT _stdcall User( [in] BSTR Name, [out, retval] IVSSUser** ppIUser); [id(0x00000009), propget] HRESULT _stdcall Users([out, retval] IVSSUsers** ppIUsers); [id(0x0000000a), propget] HRESULT _stdcall ProjectRightsEnabled([out, retval] VARIANT_BOOL* pEnabled); [id(0x0000000a), propput] HRESULT _stdcall ProjectRightsEnabled([in] VARIANT_BOOL pEnabled); [id(0x0000000b), propget] HRESULT _stdcall DefaultProjectRights([out, retval] long* pRights); [id(0x0000000b), propput] HRESULT _stdcall DefaultProjectRights([in] long pRights); }; [ odl, uuid(2A0DE0E3-2E9F-11D0-9236-00AA00A1EB95), helpstring("SourceSafe user object interface"), dual, oleautomation ] interface IVSSUser : IDispatch { [id(0x00000001)] HRESULT _stdcall Delete(); [id(0x00000002), propget] HRESULT _stdcall Name([out, retval] BSTR* pName); [id(0x00000002), propput] HRESULT _stdcall Name([in] BSTR pName); [id(0x00000003), propput] HRESULT _stdcall Password([in] BSTR rhs); [id(0x00000004), propget] HRESULT _stdcall ReadOnly([out, retval] VARIANT_BOOL* pReadOnly); [id(0x00000004), propput] HRESULT _stdcall ReadOnly([in] VARIANT_BOOL pReadOnly); [id(0x00000005), propget] HRESULT _stdcall ProjectRights( [in, optional, defaultvalue("$/")] BSTR Project, [out, retval] long* piRightsOut); [id(0x00000005), propput] HRESULT _stdcall ProjectRights( [in, optional, defaultvalue("$/")] BSTR Project, [in] long piRightsOut); [id(0x00000006)] HRESULT _stdcall RemoveProjectRights([in] BSTR Project); }; [ odl, uuid(2A0DE0E4-2E9F-11D0-9236-00AA00A1EB95), helpstring("SourceSafe users collection interface"), dual, oleautomation ] interface IVSSUsers : IDispatch { [id(0x00000001), propget] HRESULT _stdcall Count([out, retval] long* piCount); [id(00000000), propget] HRESULT _stdcall Item( [in] VARIANT sItem, [out, retval] IVSSUser** ppIUser); [id(0xfffffffc), restricted, hidden] HRESULT _stdcall _NewEnum([out, retval] IUnknown** ppIEnum); }; [ uuid(783CD4E3-9D54-11CF-B8EE-00608CC9A71F), noncreatable ] coclass VSSItem { [default] interface IVSSItem; interface IVSSItemOld; }; [ uuid(783CD4EC-9D54-11CF-B8EE-00608CC9A71F), noncreatable ] coclass VSSVersion { [default] interface IVSSVersion; }; [ uuid(2A0DE0E0-2E9F-11D0-9236-00AA00A1EB95), noncreatable ] coclass VSSCheckout { [default] interface IVSSCheckout; }; [ uuid(783CD4E4-9D54-11CF-B8EE-00608CC9A71F) ] coclass VSSDatabase { [default] interface IVSSDatabase; interface IVSSDatabaseOld; }; [ uuid(2A0DE0E5-2E9F-11D0-9236-00AA00A1EB95), noncreatable ] coclass VSSUser { [default] interface IVSSUser; }; [ odl, uuid(783CD4E9-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe event interface") ] interface IVSSEventsOld : IUnknown { HRESULT _stdcall BeforeAdd( [in] IVSSItem* pIPrj, [in] BSTR Local, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall AfterAdd( [in] IVSSItem* pIItem, [in] BSTR Local); HRESULT _stdcall BeforeCheckout( [in] IVSSItem* pIItem, [in] BSTR Local, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall AfterCheckout( [in] IVSSItem* pIItem, [in] BSTR Local); HRESULT _stdcall BeforeCheckin( [in] IVSSItem* pIItem, [in] BSTR Local, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall AfterCheckin( [in] IVSSItem* pIItem, [in] BSTR Local); HRESULT _stdcall BeforeUndoCheckout( [in] IVSSItem* pIItem, [in] BSTR Local, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall AfterUndoCheckout( [in] IVSSItem* pIItem, [in] BSTR Local); HRESULT _stdcall BeforeRename( [in] IVSSItem* pIItem, [in] BSTR NewName, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall AfterRename( [in] IVSSItem* pIItem, [in] BSTR OldName); HRESULT _stdcall BeforeBranch( [in] IVSSItem* pIItem, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall AfterBranch([in] IVSSItem* pIItem); HRESULT _stdcall BeforeEvent( [in] long iEvent, [in] IVSSItem* pIItem, [in] BSTR Str, [in] VARIANT var, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall AfterEvent( [in] long iEvent, [in] IVSSItem* pIItem, [in] BSTR Str, [in] VARIANT var); }; [ odl, uuid(2A0DE0E8-2E9F-11D0-9236-00AA00A1EB95), helpstring("SourceSafe event interface") ] interface IVSSEvents : IUnknown { HRESULT _stdcall BeforeAdd( [in] IVSSItem* pIPrj, [in] BSTR Local, [in] BSTR Comment, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall AfterAdd( [in] IVSSItem* pIItem, [in] BSTR Local, [in] BSTR Comment); HRESULT _stdcall BeforeCheckout( [in] IVSSItem* pIItem, [in] BSTR Local, [in] BSTR Comment, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall AfterCheckout( [in] IVSSItem* pIItem, [in] BSTR Local, [in] BSTR Comment); HRESULT _stdcall BeforeCheckin( [in] IVSSItem* pIItem, [in] BSTR Local, [in] BSTR Comment, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall AfterCheckin( [in] IVSSItem* pIItem, [in] BSTR Local, [in] BSTR Comment); HRESULT _stdcall BeforeUndoCheckout( [in] IVSSItem* pIItem, [in] BSTR Local, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall AfterUndoCheckout( [in] IVSSItem* pIItem, [in] BSTR Local); HRESULT _stdcall BeforeRename( [in] IVSSItem* pIItem, [in] BSTR NewName, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall AfterRename( [in] IVSSItem* pIItem, [in] BSTR OldName); HRESULT _stdcall BeforeBranch( [in] IVSSItem* pIItem, [in] BSTR Comment, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall AfterBranch( [in] IVSSItem* pIItem, [in] BSTR Comment); HRESULT _stdcall BeginCommand( [in] long unused, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall EndCommand([in] long unused); HRESULT _stdcall BeforeEvent( [in] long iEvent, [in] IVSSItem* pIItem, [in] BSTR Str, [in] VARIANT var, [out, retval] VARIANT_BOOL* pbContinue); HRESULT _stdcall AfterEvent( [in] long iEvent, [in] IVSSItem* pIItem, [in] BSTR Str, [in] VARIANT var); }; [ odl, uuid(783CD4EB-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe application interface"), dual, oleautomation ] interface IVSS : IDispatch { [id(0x00000001), propget] HRESULT _stdcall VSSDatabase([out, retval] IVSSDatabase** ppIVSSDatabase); }; [ odl, uuid(783CD4EA-9D54-11CF-B8EE-00608CC9A71F), helpstring("SourceSafe event interface") ] interface IVSSEventHandler : IUnknown { HRESULT _stdcall Init([in] IVSS* pIVSS); }; [ uuid(2A0DE0E1-2E9F-11D0-9236-00AA00A1EB95), noncreatable ] coclass VSSApp { [default] interface IVSS; [default, source] interface IVSSEvents; [source] interface IVSSEventsOld; }; };