summaryrefslogtreecommitdiff
path: root/cpp/include/Ice/LocalObject.h
blob: 1e3debe46f31d4adf261d11fb0ceb06cf05e5308 (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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
// **********************************************************************
//
// Copyright (c) 2001
// MutableRealms, Inc.
// Huntsville, AL, USA
//
// All Rights Reserved
//
// **********************************************************************

#ifndef ICE_LOCAL_OBJECT_H
#define ICE_LOCAL_OBJECT_H

#include <IceUtil/Shared.h>
#include <Ice/LocalObjectF.h>
#include <Ice/ProxyF.h> // TODO...

namespace IceInternal
{

class IntStream;

}

namespace Ice
{

class ICE_API LocalObjectPtrE
{
public:

    LocalObjectPtrE() { }
    explicit LocalObjectPtrE(const LocalObjectPtrE&);
    explicit LocalObjectPtrE(const LocalObjectPtr&);
    operator LocalObjectPtr() const;
    LocalObject* operator->() const;
    operator bool() const;

protected:

    LocalObjectPtr _ptr;        
};

class ICE_API LocalObject : public ::IceUtil::Shared
{
public:

    LocalObject();
    virtual ~LocalObject();
};

}

#endif