diff options
author | Jeremy McNamara <jj@nufone.net> | 2003-11-19 22:46:35 +0000 |
---|---|---|
committer | Jeremy McNamara <jj@nufone.net> | 2003-11-19 22:46:35 +0000 |
commit | 54ae8fcd9e29a1b5e334facdb894299aa3aea2b6 (patch) | |
tree | d4ad9a2237db93afeb2ada6e42b35d66eafaf33c /channels/h323/ast_h323.h | |
parent | 502e18c0d016a778007a13b871a4d045fd53bd08 (diff) |
apply G.729 patches (with changes) from bug #421
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1767 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/h323/ast_h323.h')
-rwxr-xr-x | channels/h323/ast_h323.h | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/channels/h323/ast_h323.h b/channels/h323/ast_h323.h index 081934e65..5c0c2b4a9 100755 --- a/channels/h323/ast_h323.h +++ b/channels/h323/ast_h323.h @@ -98,6 +98,100 @@ class H323_G7231Capability : public H323AudioCapability BOOL annexA; }; +/**This class describes the (fake) G729 codec capability. + */ +class AST_G729Capability : public H323AudioCapability +{ + PCLASSINFO(AST_G729Capability, H323AudioCapability); + + public: + /**@name Construction */ + //@{ + /**Create a new G.729 capability. + */ + AST_G729Capability(); + //@} + + /**@name Overrides from class PObject */ + //@{ + /**Create a copy of the object. + */ + virtual PObject * Clone() const; + //@} + + /**@name Operations */ + //@{ + /**Create the codec instance, allocating resources as required. + */ + virtual H323Codec * CreateCodec( + H323Codec::Direction direction /// Direction in which this instance runs + ) const; + //@} + + /**@name Identification functions */ + //@{ + /**Get the sub-type of the capability. This is a code dependent on the + main type of the capability. + + This returns one of the four possible combinations of mode and speed + using the enum values of the protocol ASN H245_AudioCapability class. + */ + virtual unsigned GetSubType() const; + + /**Get the name of the media data format this class represents. + */ + virtual PString GetFormatName() const; + //@} +}; + + +/**This class describes the VoiceAge G729A codec capability. + */ +class AST_G729ACapability : public H323AudioCapability +{ + PCLASSINFO(AST_G729ACapability, H323AudioCapability); + + public: + /**@name Construction */ + //@{ + /**Create a new G.729A capability. + */ + AST_G729ACapability(); + //@} + + /**@name Overrides from class PObject */ + //@{ + /**Create a copy of the object. + */ + virtual PObject * Clone() const; + //@} + + /**@name Operations */ + //@{ + /**Create the codec instance, allocating resources as required. + */ + virtual H323Codec * CreateCodec( + H323Codec::Direction direction /// Direction in which this instance runs + ) const; + //@} + + /**@name Identification functions */ + //@{ + /**Get the sub-type of the capability. This is a code dependent on the + main type of the capability. + + This returns one of the four possible combinations of mode and speed + using the enum values of the protocol ASN H245_AudioCapability class. + */ + virtual unsigned GetSubType() const; + + /**Get the name of the media data format this class represents. + */ + virtual PString GetFormatName() const; + //@} +}; + + class MyH323EndPoint : public H323EndPoint { PCLASSINFO(MyH323EndPoint, H323EndPoint); |