00001
00023 #ifndef _TelepathyQt4_types_h_HEADER_GUARD_
00024 #define _TelepathyQt4_types_h_HEADER_GUARD_
00025
00026 #ifndef IN_TELEPATHY_QT4_HEADER
00027 #error IN_TELEPATHY_QT4_HEADER
00028 #endif
00029
00030 #include <TelepathyQt4/_gen/types.h>
00031
00032 #include <TelepathyQt4/Global>
00033 #include <TelepathyQt4/SharedPtr>
00034 #include <TelepathyQt4/MethodInvocationContext>
00035
00036 #include <QDBusVariant>
00037
00038 namespace Tp
00039 {
00040
00041 TELEPATHY_QT4_EXPORT void registerTypes();
00042
00043 template <typename T> class Filter;
00044 template <typename T> class GenericCapabilityFilter;
00045 template <typename T> class GenericPropertyFilter;
00046
00047 class AbstractClient;
00048 class Account;
00049 typedef GenericCapabilityFilter<Account> AccountCapabilityFilter;
00050 class AccountFactory;
00051 typedef Filter<Account> AccountFilter;
00052 class AccountManager;
00053 class AccountPropertyFilter;
00054 class AccountSet;
00055 class Channel;
00056 class ChannelDispatchOperation;
00057 class ChannelFactory;
00058 class ChannelRequest;
00059 class ClientObject;
00060 class ClientRegistrar;
00061 class Connection;
00062 class ConnectionFactory;
00063 class ConnectionLowlevel;
00064 class ConnectionManager;
00065 class ConnectionManagerLowlevel;
00066 class Contact;
00067 class ContactFactory;
00068 class ContactManager;
00069 class ContactMessenger;
00070 class ContactSearchChannel;
00071 class DBusProxy;
00072 class FileTransferChannel;
00073 class IncomingFileTransferChannel;
00074 class IncomingStreamTubeChannel;
00075 class OutgoingFileTransferChannel;
00076 class OutgoingStreamTubeChannel;
00077 class Profile;
00078 class ProfileManager;
00079 class RoomListChannel;
00080 class SimpleObserver;
00081 class SimpleCallObserver;
00082 class SimpleTextObserver;
00083 class StreamedMediaChannel;
00084 class StreamedMediaStream;
00085 class StreamTubeChannel;
00086 class TextChannel;
00087 class TubeChannel;
00088
00089 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00090
00091 typedef SharedPtr<AbstractClient> AbstractClientPtr;
00092 typedef SharedPtr<Account> AccountPtr;
00093 typedef SharedPtr<AccountCapabilityFilter> AccountCapabilityFilterPtr;
00094 typedef SharedPtr<const AccountCapabilityFilter> AccountCapabilityFilterConstPtr;
00095 typedef SharedPtr<AccountFactory> AccountFactoryPtr;
00096 typedef SharedPtr<const AccountFactory> AccountFactoryConstPtr;
00097 typedef SharedPtr<AccountFilter> AccountFilterPtr;
00098 typedef SharedPtr<const AccountFilter> AccountFilterConstPtr;
00099 typedef SharedPtr<AccountManager> AccountManagerPtr;
00100 typedef SharedPtr<AccountPropertyFilter> AccountPropertyFilterPtr;
00101 typedef SharedPtr<const AccountPropertyFilter> AccountPropertyFilterConstPtr;
00102 typedef SharedPtr<AccountSet> AccountSetPtr;
00103 typedef SharedPtr<Channel> ChannelPtr;
00104 typedef SharedPtr<ChannelDispatchOperation> ChannelDispatchOperationPtr;
00105 typedef SharedPtr<ChannelFactory> ChannelFactoryPtr;
00106 typedef SharedPtr<const ChannelFactory> ChannelFactoryConstPtr;
00107 typedef SharedPtr<ChannelRequest> ChannelRequestPtr;
00108 typedef SharedPtr<ClientObject> ClientObjectPtr;
00109 typedef SharedPtr<ClientRegistrar> ClientRegistrarPtr;
00110 typedef SharedPtr<Connection> ConnectionPtr;
00111 typedef SharedPtr<ConnectionFactory> ConnectionFactoryPtr;
00112 typedef SharedPtr<const ConnectionFactory> ConnectionFactoryConstPtr;
00113 typedef SharedPtr<ConnectionLowlevel> ConnectionLowlevelPtr;
00114 typedef SharedPtr<const ConnectionLowlevel> ConnectionLowlevelConstPtr;
00115 typedef SharedPtr<ConnectionManager> ConnectionManagerPtr;
00116 typedef SharedPtr<ConnectionManagerLowlevel> ConnectionManagerLowlevelPtr;
00117 typedef SharedPtr<const ConnectionManagerLowlevel> ConnectionManagerLowlevelConstPtr;
00118 typedef SharedPtr<Contact> ContactPtr;
00119 typedef QSet<ContactPtr> Contacts;
00120 typedef SharedPtr<ContactFactory> ContactFactoryPtr;
00121 typedef SharedPtr<const ContactFactory> ContactFactoryConstPtr;
00122 typedef SharedPtr<ContactManager> ContactManagerPtr;
00123 typedef SharedPtr<ContactMessenger> ContactMessengerPtr;
00124 typedef SharedPtr<ContactSearchChannel> ContactSearchChannelPtr;
00125 typedef SharedPtr<DBusProxy> DBusProxyPtr;
00126 typedef SharedPtr<FileTransferChannel> FileTransferChannelPtr;
00127 typedef SharedPtr<IncomingFileTransferChannel> IncomingFileTransferChannelPtr;
00128 typedef SharedPtr<IncomingStreamTubeChannel> IncomingStreamTubeChannelPtr;
00129 typedef SharedPtr<OutgoingFileTransferChannel> OutgoingFileTransferChannelPtr;
00130 typedef SharedPtr<OutgoingStreamTubeChannel> OutgoingStreamTubeChannelPtr;
00131 typedef SharedPtr<Profile> ProfilePtr;
00132 typedef SharedPtr<ProfileManager> ProfileManagerPtr;
00133 typedef SharedPtr<RoomListChannel> RoomListChannelPtr;
00134 typedef SharedPtr<SimpleObserver> SimpleObserverPtr;
00135 typedef SharedPtr<SimpleCallObserver> SimpleCallObserverPtr;
00136 typedef SharedPtr<SimpleTextObserver> SimpleTextObserverPtr;
00137 typedef SharedPtr<StreamedMediaChannel> StreamedMediaChannelPtr;
00138 typedef SharedPtr<StreamedMediaStream> StreamedMediaStreamPtr;
00139 typedef SharedPtr<StreamTubeChannel> StreamTubeChannelPtr;
00140 typedef SharedPtr<TextChannel> TextChannelPtr;
00141 typedef SharedPtr<TubeChannel> TubeChannelPtr;
00142
00143 template<typename T1 = MethodInvocationContextTypes::Nil, typename T2 = MethodInvocationContextTypes::Nil,
00144 typename T3 = MethodInvocationContextTypes::Nil, typename T4 = MethodInvocationContextTypes::Nil,
00145 typename T5 = MethodInvocationContextTypes::Nil, typename T6 = MethodInvocationContextTypes::Nil,
00146 typename T7 = MethodInvocationContextTypes::Nil, typename T8 = MethodInvocationContextTypes::Nil>
00147 class MethodInvocationContextPtr : public SharedPtr<MethodInvocationContext<T1, T2, T3, T4, T5, T6, T7, T8> >
00148 {
00149 public:
00150 inline MethodInvocationContextPtr() { }
00151 explicit inline MethodInvocationContextPtr(MethodInvocationContext<T1, T2, T3, T4, T5, T6, T7, T8> *d)
00152 : SharedPtr<MethodInvocationContext<T1, T2, T3, T4, T5, T6, T7, T8> >(d) { }
00153 inline MethodInvocationContextPtr(const SharedPtr<MethodInvocationContext<T1, T2, T3, T4, T5, T6, T7, T8> > &o)
00154 : SharedPtr<MethodInvocationContext<T1, T2, T3, T4, T5, T6, T7, T8> >(o) { }
00155 };
00156
00157 #endif
00158
00159 }
00160
00161 #endif