// // This file was taken from RakNet 4.082. // Please see licenses/RakNet license.txt for the underlying license and related copyright. // // // // Modified work: Copyright (c) 2018, SLikeSoft UG (haftungsbeschränkt) // // This source code was modified by SLikeSoft. Modifications are licensed under the MIT-style // license found in the license.txt file in the root directory of this source tree. //---------------------------------Template Defines------------------------- //Swig needs to manually define templates you wish to use, this is done here. %template(Serialize) SLNet::BitStream::Serialize ; %template(Serialize) SLNet::BitStream::Serialize ; %template(Serialize) SLNet::BitStream::Serialize ; %template(Serialize) SLNet::BitStream::Serialize ; %template(Serialize) SLNet::BitStream::Serialize ; %template(Serialize) SLNet::BitStream::Serialize ; %template(Serialize) SLNet::BitStream::Serialize ; %template(Serialize) SLNet::BitStream::Serialize ; %template(Serialize) SLNet::BitStream::Serialize ; %template(Serialize) SLNet::BitStream::Serialize ; %template(SerializeDelta) SLNet::BitStream::SerializeDelta ; %template(SerializeDelta) SLNet::BitStream::SerializeDelta ; %template(SerializeDelta) SLNet::BitStream::SerializeDelta ; %template(SerializeDelta) SLNet::BitStream::SerializeDelta ; %template(SerializeDelta) SLNet::BitStream::SerializeDelta ; %template(SerializeDelta) SLNet::BitStream::SerializeDelta ; %template(SerializeDelta) SLNet::BitStream::SerializeDelta ; %template(SerializeDelta) SLNet::BitStream::SerializeDelta ; %template(SerializeDelta) SLNet::BitStream::SerializeDelta ; %template(SerializeDelta) SLNet::BitStream::SerializeDelta ; %template(SerializeCompressed) SLNet::BitStream::SerializeCompressed ; %template(SerializeCompressed) SLNet::BitStream::SerializeCompressed ; %template(SerializeCompressed) SLNet::BitStream::SerializeCompressed ; %template(SerializeCompressed) SLNet::BitStream::SerializeCompressed ; %template(SerializeCompressed) SLNet::BitStream::SerializeCompressed ; %template(SerializeCompressed) SLNet::BitStream::SerializeCompressed ; %template(SerializeCompressed) SLNet::BitStream::SerializeCompressed ; %template(SerializeCompressed) SLNet::BitStream::SerializeCompressed ; %template(SerializeCompressed) SLNet::BitStream::SerializeCompressed ; %template(SerializeCompressed) SLNet::BitStream::SerializeCompressed ; %template(SerializeCompressedDelta) SLNet::BitStream::SerializeCompressedDelta ; %template(SerializeCompressedDelta) SLNet::BitStream::SerializeCompressedDelta ; %template(SerializeCompressedDelta) SLNet::BitStream::SerializeCompressedDelta ; %template(SerializeCompressedDelta) SLNet::BitStream::SerializeCompressedDelta ; %template(SerializeCompressedDelta) SLNet::BitStream::SerializeCompressedDelta ; %template(SerializeCompressedDelta) SLNet::BitStream::SerializeCompressedDelta ; %template(SerializeCompressedDelta) SLNet::BitStream::SerializeCompressedDelta ; %template(SerializeCompressedDelta) SLNet::BitStream::SerializeCompressedDelta ; %template(SerializeCompressedDelta) SLNet::BitStream::SerializeCompressedDelta ; %template(SerializeCompressedDelta) SLNet::BitStream::SerializeCompressedDelta ; %template(Write) SLNet::BitStream::Write ; %template(Write) SLNet::BitStream::Write ; %template(Write) SLNet::BitStream::Write ; %template(Write) SLNet::BitStream::Write ; %template(Write) SLNet::BitStream::Write ; %template(Write) SLNet::BitStream::Write ; %template(Write) SLNet::BitStream::Write ; %template(Write) SLNet::BitStream::Write ; %template(Write) SLNet::BitStream::Write ; %template(Write) SLNet::BitStream::Write ; %template(Write) SLNet::BitStream::Write ; %template(Write) SLNet::BitStream::Write ; %template(WriteDelta) SLNet::BitStream::WriteDelta ; %template(WriteDelta) SLNet::BitStream::WriteDelta ; %template(WriteDelta) SLNet::BitStream::WriteDelta ; %template(WriteDelta) SLNet::BitStream::WriteDelta ; %template(WriteDelta) SLNet::BitStream::WriteDelta ; %template(WriteDelta) SLNet::BitStream::WriteDelta ; %template(WriteDelta) SLNet::BitStream::WriteDelta ; %template(WriteDelta) SLNet::BitStream::WriteDelta ; %template(WriteDelta) SLNet::BitStream::WriteDelta ; %template(WriteDelta) SLNet::BitStream::WriteDelta ; %template(WriteDelta) SLNet::BitStream::WriteDelta ; %template(WriteDelta) SLNet::BitStream::WriteDelta ; %template(WriteCompressed) SLNet::BitStream::WriteCompressed ; %template(WriteCompressed) SLNet::BitStream::WriteCompressed ; %template(WriteCompressed) SLNet::BitStream::WriteCompressed ; %template(WriteCompressed) SLNet::BitStream::WriteCompressed ; %template(WriteCompressed) SLNet::BitStream::WriteCompressed ; %template(WriteCompressed) SLNet::BitStream::WriteCompressed ; %template(WriteCompressed) SLNet::BitStream::WriteCompressed ; %template(WriteCompressed) SLNet::BitStream::WriteCompressed ; %template(WriteCompressed) SLNet::BitStream::WriteCompressed ; %template(WriteCompressed) SLNet::BitStream::WriteCompressed ; %template(WriteCompressed) SLNet::BitStream::WriteCompressed ; %template(WriteCompressed) SLNet::BitStream::WriteCompressed ; %template(WriteCompressedDelta) SLNet::BitStream::WriteCompressedDelta ; %template(WriteCompressedDelta) SLNet::BitStream::WriteCompressedDelta ; %template(WriteCompressedDelta) SLNet::BitStream::WriteCompressedDelta ; %template(WriteCompressedDelta) SLNet::BitStream::WriteCompressedDelta ; %template(WriteCompressedDelta) SLNet::BitStream::WriteCompressedDelta ; %template(WriteCompressedDelta) SLNet::BitStream::WriteCompressedDelta ; %template(WriteCompressedDelta) SLNet::BitStream::WriteCompressedDelta ; %template(WriteCompressedDelta) SLNet::BitStream::WriteCompressedDelta ; %template(WriteCompressedDelta) SLNet::BitStream::WriteCompressedDelta ; %template(WriteCompressedDelta) SLNet::BitStream::WriteCompressedDelta ; %template(WriteCompressedDelta) SLNet::BitStream::WriteCompressedDelta ; %template(WriteCompressedDelta) SLNet::BitStream::WriteCompressedDelta ; %template(Read) SLNet::BitStream::Read ; %template(Read) SLNet::BitStream::Read ; %template(Read) SLNet::BitStream::Read ; %template(Read) SLNet::BitStream::Read ; %template(Read) SLNet::BitStream::Read ; %template(Read) SLNet::BitStream::Read ; %template(Read) SLNet::BitStream::Read ; %template(Read) SLNet::BitStream::Read ; %template(Read) SLNet::BitStream::Read ; %template(Read) SLNet::BitStream::Read ; %template(ReadDelta) SLNet::BitStream::ReadDelta ; %template(ReadDelta) SLNet::BitStream::ReadDelta ; %template(ReadDelta) SLNet::BitStream::ReadDelta ; %template(ReadDelta) SLNet::BitStream::ReadDelta ; %template(ReadDelta) SLNet::BitStream::ReadDelta ; %template(ReadDelta) SLNet::BitStream::ReadDelta ; %template(ReadDelta) SLNet::BitStream::ReadDelta ; %template(ReadDelta) SLNet::BitStream::ReadDelta ; %template(ReadDelta) SLNet::BitStream::ReadDelta ; %template(ReadDelta) SLNet::BitStream::ReadDelta ; %template(ReadCompressed) SLNet::BitStream::ReadCompressed ; %template(ReadCompressed) SLNet::BitStream::ReadCompressed ; %template(ReadCompressed) SLNet::BitStream::ReadCompressed ; %template(ReadCompressed) SLNet::BitStream::ReadCompressed ; %template(ReadCompressed) SLNet::BitStream::ReadCompressed ; %template(ReadCompressed) SLNet::BitStream::ReadCompressed ; %template(ReadCompressed) SLNet::BitStream::ReadCompressed ; %template(ReadCompressed) SLNet::BitStream::ReadCompressed ; %template(ReadCompressed) SLNet::BitStream::ReadCompressed ; %template(ReadCompressed) SLNet::BitStream::ReadCompressed ; %template(ReadCompressedDelta) SLNet::BitStream::ReadCompressedDelta ; %template(ReadCompressedDelta) SLNet::BitStream::ReadCompressedDelta ; %template(ReadCompressedDelta) SLNet::BitStream::ReadCompressedDelta ; %template(ReadCompressedDelta) SLNet::BitStream::ReadCompressedDelta ; %template(ReadCompressedDelta) SLNet::BitStream::ReadCompressedDelta ; %template(ReadCompressedDelta) SLNet::BitStream::ReadCompressedDelta ; %template(ReadCompressedDelta) SLNet::BitStream::ReadCompressedDelta ; %template(ReadCompressedDelta) SLNet::BitStream::ReadCompressedDelta ; %template(ReadCompressedDelta) SLNet::BitStream::ReadCompressedDelta ; %template(ReadCompressedDelta) SLNet::BitStream::ReadCompressedDelta ; %define ADD_LIST_TYPE(CTYPE,CSTYPE,RENAME_TYPE) %typemap(cscode) DataStructures::List %{ public CSTYPE this[int index] { get { return Get((uint)index); // use indexto retrieve and return another value. } set { Replace(value, value, (uint)index, "Not used", 0);// use index and value to set the value somewhere. } } %} %template(RENAME_TYPE) DataStructures::List ; %enddef ADD_LIST_TYPE(SLNet::RakNetGUID,RakNetGUID,RakNetListRakNetGUID) ADD_LIST_TYPE(SLNet::SystemAddress,SystemAddress,RakNetListSystemAddress) ADD_LIST_TYPE(SLNet::RakString,RakString,RakNetListRakString) ADD_LIST_TYPE(Cell,Cell,RakNetListCell) ADD_LIST_TYPE(ColumnDescriptor,ColumnDescriptor,RakNetListColumnDescriptor) ADD_LIST_TYPE(Row,Row,RakNetListTableRow); ADD_LIST_TYPE(SLNet::FileListNode,FileListNode,RakNetListFileListNode); ADD_LIST_TYPE(FilterQuery,FilterQuery,RakNetListFilterQuery); ADD_LIST_TYPE(SortQuery,SortQuery,RakNetListSortQuery); // 1/1/2011 Commented out below line: Doesn't build into RakNet_wrap.cxx properly // %template(RakNetSmartPtrRakNetSocket) RakNetSmartPtr; //Can't use the macro because it won't include the space then nested templates won't work /* %typemap(cscode) DataStructures::List > %{ public RakNetSmartPtrRakNetSocket this[int index] { get { return Get((uint)index); // use indexto retrieve and return another value. } set { Replace(value, value, (uint)index, "Not used", 0);// use index and value to set the value somewhere. } } %} %template(RakNetListRakNetSmartPtrRakNetSocket) DataStructures::List >; */ %define ADD_POINTER_LIST_TYPE(CTYPE,CSTYPE,RENAME_TYPE) %ignore DataStructures::List::Get; %ignore DataStructures::List::Pop; %typemap(cscode) DataStructures::List %{ public CSTYPE this[int index] { get { return Get((uint)index); // use indexto retrieve and return another value. } set { Replace(value, value, (uint)index, "Not used", 0);// use index and value to set the value somewhere. } } public CSTYPE Get(uint position) { return GetHelper(position); } public CSTYPE Pop() { return PopHelper(); } %} %extend DataStructures::List { CTYPE GetHelper ( const unsigned int position ) const { return self->Get(position); } CTYPE PopHelper () { return self->Pop(); } } %template(RENAME_TYPE) DataStructures::List ; %enddef ADD_POINTER_LIST_TYPE(Cell *,Cell,RakNetListCellPointer) #ifdef SWIG_ADDITIONAL_AUTOPATCHER ADD_POINTER_LIST_TYPE(AutopatcherRepositoryInterface *,AutopatcherRepositoryInterface,RakNetListAutopatcherRepositoryInterfacePointer) #endif %define ADD_PRIMITIVE_LIST_TYPE(CTYPE,CSTYPE,RENAME_TYPE,SWIG_TYPE,POINTER_NAME) %pointer_class(CTYPE, POINTER_NAME) %csmethodmodifiers DataStructures::List ::Get "private" %csmethodmodifiers DataStructures::List ::Pop "private" %rename(GetHelper) DataStructures::List ::Get; %rename(PopHelper) DataStructures::List ::Pop; %typemap(cscode) DataStructures::List %{ public CSTYPE Get(uint position) { SWIG_TYPE ret = GetHelper(position); return POINTER_NAME.frompointer(ret).value(); } public CSTYPE Pop() { SWIG_TYPE ret = PopHelper(); return POINTER_NAME.frompointer(ret).value(); } public CSTYPE this[int index] { get { return Get((uint)index); // use indexto retrieve and return another value. } set { Replace(value, value, (uint)index, "Not used", 0);// use index and value to set the value somewhere. } } %} %template(RENAME_TYPE) DataStructures::List ; %enddef ADD_PRIMITIVE_LIST_TYPE(unsigned short,ushort,RakNetListUnsignedShort,SWIGTYPE_p_unsigned_short,UnsignedShortPointer) ADD_PRIMITIVE_LIST_TYPE(unsigned,uint,RakNetListUnsignedInt,SWIGTYPE_p_unsigned_int,UnsignedIntPointer) %template(RakNetPageRow) DataStructures::Page; //needed here for scoping issues %ignore DataStructures::BPlusTree::Delete; %ignore DataStructures::BPlusTree::Get; %csmethodmodifiers DataStructures::BPlusTree::DeleteHelper "private"; %csmethodmodifiers DataStructures::BPlusTree::GetHelper "private"; %template(RakNetBPlusTreeRow) DataStructures::BPlusTree; %typemap(cscode) DataStructures::BPlusTree %{ public bool Get(uint key, ref Row arg1) { bool outBool; arg1=GetHelper(key,arg1,out outBool); return outBool; } public bool Delete(uint key) { return DeleteHelper(key); } public bool Delete(uint key, ref Row arg1) { bool outBool; arg1=DeleteHelper(key,arg1,out outBool); return outBool; } %} %define ADD_STANDARD_MULTILIST_TYPE(CTYPE,CSTYPE,RENAME_TYPE) %typemap(cscode) DataStructures::Multilist %{ public CSTYPE this[int index] { get { return OpArray((uint)index); // use indexto retrieve and return another value. } set { RemoveAtIndex((uint)index); InsertAtIndex(value,(uint)index); } } %} %template(RENAME_TYPE) DataStructures::Multilist ; %enddef #ifdef SWIG_ADDITIONAL_SQL_LITE ADD_STANDARD_MULTILIST_TYPE(SQLite3Row*,SQLite3Row,RakNetMultiListML_StackSQLite3RowP) ADD_STANDARD_MULTILIST_TYPE(SLNet::RakString,RakString,RakNetMultiListML_StackRakString) ADD_STANDARD_MULTILIST_TYPE(SLNet::SQLite3PluginResultInterface *,SQLite3PluginResultInterface,RakNetMultiListML_StackSQLite3PluginResultInterfaceP) #endif