OPAL  Version 3.14.3
specialprocessor.h
Go to the documentation of this file.
1 /*
2  * Inter Asterisk Exchange 2
3  *
4  * The entity which receives all manages weirdo iax2 packets that are
5  * sent outside of a regular call.
6  *
7  * Open Phone Abstraction Library (OPAL)
8  *
9  * Copyright (c) 2006 Stephen Cook
10  *
11  * The contents of this file are subject to the Mozilla Public License
12  * Version 1.0 (the "License"); you may not use this file except in
13  * compliance with the License. You may obtain a copy of the License at
14  * http://www.mozilla.org/MPL/
15  *
16  * Software distributed under the License is distributed on an "AS IS"
17  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
18  * the License for the specific language governing rights and limitations
19  * under the License.
20  *
21  * The Original Code is Open Phone Abstraction Library.
22  *
23  * The Initial Developer of the Original Code is Indranet Technologies Ltd
24  *
25  * The author of this code is Stephen Cook
26  *
27  * $Revision: 29536 $
28  * $Author: rjongbloed $
29  * $Date: 2013-04-19 18:55:15 +1000 (Fri, 19 Apr 2013) $
30  */
31 
32 #ifndef OPAL_IAX2_SPECIALPROCESSOR_H
33 #define OPAL_IAX2_SPECIALPROCESSOR_H
34 
35 #ifndef _PTLIB_H
36 #include <ptlib.h>
37 #endif
38 
39 #include <opal_config.h>
40 
41 #if OPAL_IAX2
42 
43 #include <opal/connection.h>
44 
45 #include <iax2/processor.h>
46 #include <iax2/frame.h>
47 #include <iax2/iedata.h>
48 #include <iax2/remote.h>
49 #include <iax2/safestrings.h>
50 #include <iax2/sound.h>
51 
57 {
59 
60  public:
63 
65  virtual ~IAX2SpecialProcessor();
66 
67  protected:
69  virtual void ProcessLists();
70 
72  virtual void ProcessFullFrame(IAX2FullFrame & fullFrame);
73 
75  virtual void ProcessNetworkFrame(IAX2MiniFrame * src);
76 
78  virtual void PrintOn(ostream & strm) const;
79 
81  virtual void OnNoResponseTimeout();
82 
85  virtual PBoolean ProcessNetworkFrame(IAX2FullFrameProtocol * src);
86 
89 
97  { return false; }
98 
99 
100 };
101 
102 
103 #endif // OPAL_IAX2
104 
105 #endif // OPAL_IAX2_SPECIALPROCESSOR_H