summaryrefslogtreecommitdiff
path: root/libopie/pim/opimxref.h
blob: 6852651b10376b92f436b370e880eae9b434fa56 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#ifndef OPIM_XREF_H
#define OPIM_XREF_H

#include <qarray.h>
#include <qvaluelist.h>

#include <opie/opimxrefpartner.h>

/**
 * this is a Cross Referecne between
 * two Cross Reference Partners
 */
class OPimXRef {
public:
    typedef QValueList<OPimXRef> ValueList;
    enum Partners { One, Two };
    OPimXRef( const OPimXRefPartner& ONE, const OPimXRefPartner& );
    OPimXRef();
    OPimXRef( const OPimXRef& );
    ~OPimXRef();

    OPimXRef &operator=( const OPimXRef& );
    bool operator==( const OPimXRef& );

    OPimXRefPartner partner( enum Partners )const;

    void setPartner( enum Partners,  const OPimXRefPartner& );

    bool containsString( const QString& service)const;
    bool containsUid( int uid )const;

private:
    QArray<OPimXRefPartner> m_partners;

    class Private;
    Private *d;
};

#endif