Home | History | Annotate | Download | only in include
      1 /* ------------------------------------------------------------------
      2  * Copyright (C) 1998-2009 PacketVideo
      3  *
      4  * Licensed under the Apache License, Version 2.0 (the "License");
      5  * you may not use this file except in compliance with the License.
      6  * You may obtain a copy of the License at
      7  *
      8  *      http://www.apache.org/licenses/LICENSE-2.0
      9  *
     10  * Unless required by applicable law or agreed to in writing, software
     11  * distributed under the License is distributed on an "AS IS" BASIS,
     12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
     13  * express or implied.
     14  * See the License for the specific language governing permissions
     15  * and limitations under the License.
     16  * -------------------------------------------------------------------
     17  */
     18 #ifndef VIDEO_ONLY_TEST_H_INCLUDED
     19 #define VIDEO_ONLY_TEST_H_INCLUDED
     20 
     21 #include "test_base.h"
     22 #include "tsc_h324m_config_interface.h"
     23 
     24 class video_only_test : public test_base//,
     25         //public H324MConfigObserver
     26 {
     27     public:
     28         video_only_test(PVMFFormatType video_src_format = PVMF_MIME_YUV420, PVMFFormatType video_sink_format = PVMF_MIME_YUV420, bool aUseProxy = false)
     29                 : test_base(PVMF_MIME_AMR_IF2, PVMF_MIME_AMR_IF2, video_src_format, video_sink_format, aUseProxy),
     30                 iSpatialTemporalIndsReceived(false)
     31         {
     32             i324mConfigInterface = 0;
     33         }
     34 
     35         ~video_only_test()
     36         {
     37         }
     38 
     39         void test();
     40 
     41         void Run();
     42 
     43         void DoCancel();
     44 
     45         void HandleInformationalEvent(const PVAsyncInformationalEvent& aEvent);
     46 
     47         void TimerCallback();
     48 
     49         void H324MConfigCommandCompletedL(PVMFCmdResp& aResponse);
     50 
     51         void H324MConfigHandleInformationalEventL(PVMFAsyncEvent& aNotification);
     52 
     53     private:
     54         void DoStuffWithH324MConfig();
     55         virtual void VideoAddSinkSucceeded();
     56         virtual void VideoAddSourceSucceeded();
     57         virtual void VideoAddSourceFailed();
     58         virtual void EncoderIFSucceeded();
     59         virtual void EncoderIFFailed();
     60         virtual void DisCmdFailed();
     61         virtual void DisCmdSucceeded();
     62         virtual void InitFailed();
     63         virtual void ConnectSucceeded();
     64         virtual void ConnectFailed();
     65         bool start_async_test();
     66         PVInterface *i324mConfigInterface;
     67         PVInterface *iVidEncIFace;
     68         bool iSpatialTemporalIndsReceived;
     69         PVCommandId i324mIFCommandId, iTradeOffCmd, iTradeOffInd, iEncIFCommandId;
     70         PVTrackId iIncomingVideo, iOutgoingVideo;
     71 };
     72 
     73 
     74 #endif
     75 
     76 
     77