Renamed namespaces satcom::lib and satcom::pkf to senf
[senf.git] / Scheduler / ReadHelper.cti
1 // $Id$
2 //
3 // Copyright (C) 2006 
4
5 // Definition of inline template functions
6
7 #include "ReadHelper.ih"
8
9 // Custom includes
10 #include "Utils/Exception.hh"
11
12 #define prefix_ inline
13 ///////////////////////////////cti.p///////////////////////////////////////
14
15 template <class Handle>
16 prefix_ typename senf::ReadHelper<Handle>::ptr
17 senf::ReadHelper<Handle>::dispatch(Handle handle, std::string::size_type maxSize,
18                                           Callback callback)
19 {
20     return ptr(new ReadHelper(handle, maxSize, 0, callback));
21 }
22
23 template <class Handle>
24 template <class Predicate>
25 prefix_ typename senf::ReadHelper<Handle>::ptr
26 senf::ReadHelper<Handle>::dispatch(Handle handle, std::string::size_type maxSize,
27                                           Predicate predicate, Callback callback)
28 {
29     return ptr(new ReadHelper(handle, maxSize, 
30                               new typename InternalPredicate::template Dispatcher<Predicate>(predicate),
31                               callback));
32 }
33
34 template <class Handle>
35 prefix_ Handle senf::ReadHelper<Handle>::handle()
36     const
37 {
38     return handle_;
39 }
40
41 template <class Handle>
42 prefix_ unsigned senf::ReadHelper<Handle>::maxSize()
43     const
44 {
45     return maxSize_;
46 }
47
48 template <class Handle>
49 prefix_ std::string const & senf::ReadHelper<Handle>::data()
50     const
51 {
52     return data_;
53 }
54
55 template <class Handle>
56 prefix_ std::string const & senf::ReadHelper<Handle>::tail()
57     const
58 {
59     return tail_;
60 }
61
62 template <class Handle>
63 prefix_ bool senf::ReadHelper<Handle>::complete()
64     const
65 {
66     return complete_;
67 }
68
69 template <class Handle>
70 prefix_ bool senf::ReadHelper<Handle>::error()
71     const
72 {
73     return errno_ != 0;
74 }
75
76 template <class Handle>
77 prefix_ void senf::ReadHelper<Handle>::throw_error()
78     const
79 {
80     if (errno_ != 0) throw SystemException(errno_);
81 }
82
83 ///////////////////////////////cti.e///////////////////////////////////////
84 #undef prefix_
85
86 \f
87 // Local Variables:
88 // mode: c++
89 // End: