[prev in list] [next in list] [prev in thread] [next in thread] 

List:       helix-datatype-cvs
Subject:    [Datatype-cvs] mp4/fileformat/pub qtatmmgs.h, 1.19.8.7,
From:       vkathuria () helixcommunity ! org
Date:       2009-03-30 5:07:44
Message-ID: 200903300609.n2U69f1C017682 () mailer ! progressive-comp ! com
[Download RAW message or body]

Update of /cvsroot/datatype/mp4/fileformat/pub
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv16852/pub

Modified Files:
      Tag: hxclient_3_4_8_atlas
	qtatmmgs.h qtatoms.h qtffplin.h 
Log Message:
Changes to support rmra,rmda,rdrf atoms in mov file format

Index: qtatmmgs.h
===================================================================
RCS file: /cvsroot/datatype/mp4/fileformat/pub/qtatmmgs.h,v
retrieving revision 1.19.8.7
retrieving revision 1.19.8.7.12.1
diff -u -d -r1.19.8.7 -r1.19.8.7.12.1
--- qtatmmgs.h	20 Aug 2008 12:55:30 -0000	1.19.8.7
+++ qtatmmgs.h	30 Mar 2009 05:07:42 -0000	1.19.8.7.12.1
@@ -1037,6 +1037,11 @@
         return m_pID32Atom ? m_pID32Atom->GetID32Blob() : 0;
     }
 
+    char* GetRefURL(void)
+    {
+        return m_pRefURL;
+    }
+
     //*** Language Encoding **************************************
 
     // If the encodings of all atoms are equal, <out> is filled with unambiguous \
encoding and TRUE is returned. @@ -1056,7 +1061,7 @@
 #ifdef HELIX_FEATURE_3GPP_METAINFO
     static CQT_ID32_Atom* FindID32Atom(CQT_moov_Atom* pMoovAtom);
 #endif // HELIX_FEATURE_3GPP_METAINFO
-
+    char *m_pRefURL;
     ULONG32 m_ulMovieTimeScale;
     ULONG32 m_ulMovieDuration;
 

Index: qtatoms.h
===================================================================
RCS file: /cvsroot/datatype/mp4/fileformat/pub/qtatoms.h,v
retrieving revision 1.20.8.10
retrieving revision 1.20.8.10.4.1
diff -u -d -r1.20.8.10 -r1.20.8.10.4.1
--- qtatoms.h	12 Dec 2008 05:17:21 -0000	1.20.8.10
+++ qtatoms.h	30 Mar 2009 05:07:42 -0000	1.20.8.10.4.1
@@ -170,7 +170,12 @@
     QT_krok = QT_ENCODE_TYPE('k', 'r', 'o', 'k'),
     QT_href = QT_ENCODE_TYPE('h', 'r', 'e', 'f'),
     QT_tbox = QT_ENCODE_TYPE('t', 'b', 'o', 'x'),
-    QT_blnk = QT_ENCODE_TYPE('b', 'l', 'n', 'k')
+    QT_blnk = QT_ENCODE_TYPE('b', 'l', 'n', 'k'),
+    QT_rmra = QT_ENCODE_TYPE('r', 'm', 'r', 'a'),
+    QT_rmda = QT_ENCODE_TYPE('r', 'm', 'd', 'a'),
+    QT_rdrf = QT_ENCODE_TYPE('r', 'd', 'r', 'f'),
+    QT_rmdr = QT_ENCODE_TYPE('r', 'm', 'd', 'r'),
+    QT_url = QT_ENCODE_TYPE('u', 'r', 'l', ' ')
     // /<<-- end 3GPP Timed Text box types.
 } QTKnownAtomType;
 
@@ -3750,6 +3755,77 @@
     }
 };
 
+class CQT_rmra_Atom : public CQTAtom
+{
+public:
+     /*	Constructor/Destructor
+    */
+    CQT_rmra_Atom(ULONG32 ulOffset,
+		  ULONG32 ulSize, 
+		  CQTAtom *pParent) : CQTAtom(ulOffset,
+					      ulSize,
+					      pParent) {;}
+
+    /*
+     *	Required Virtual Methods
+     */
+    virtual HXBOOL	IsLeafType(void)    { return FALSE; }
+    virtual QTAtomType	GetType(void)	    { return QT_rmra; }
+};
+
+class CQT_rmda_Atom : public CQTAtom
+{
+public:
+    /*	Constructor/Destructor
+    */
+    CQT_rmda_Atom(ULONG32 ulOffset,
+		  ULONG32 ulSize, 
+		  CQTAtom *pParent) : CQTAtom(ulOffset,
+					      ulSize,
+					      pParent) {;}
+
+    /*
+     *	Required Virtual Methods
+     */
+    virtual HXBOOL	IsLeafType(void)    { return FALSE; }
+    virtual QTAtomType	GetType(void)	    { return QT_rmda; }
+};
+
+class CQT_rdrf_Atom : public CQTAtom
+{
+public:
+    /*	Constructor/Destructor
+    */
+    CQT_rdrf_Atom(ULONG32 ulOffset,
+		  ULONG32 ulSize, 
+		  CQTAtom *pParent) : CQTAtom(ulOffset,
+					      ulSize,
+					      pParent) {;}
+
+    /*
+     *	Required Virtual Methods
+     */
+    virtual HXBOOL	IsLeafType(void)    { return TRUE; }
+    virtual QTAtomType	GetType(void)	    { return QT_rdrf; }
+};
+
+class CQT_rmdr_Atom : public CQTAtom
+{
+public:
+	     /*	Constructor/Destructor
+     */
+    CQT_rmdr_Atom(ULONG32 ulOffset,
+		  ULONG32 ulSize, 
+		  CQTAtom *pParent) : CQTAtom(ulOffset,
+					      ulSize,
+					      pParent) {;}
+
+    /*
+     *	Required Virtual Methods
+     */
+    virtual HXBOOL	IsLeafType(void)    { return TRUE; }
+    virtual QTAtomType	GetType(void)	    { return QT_rmdr; }
+};
 #ifdef QTCONFIG_SPEED_OVER_SIZE
 #include "qtatoms_inline.h"
 #endif	// QTCONFIG_SPEED_OVER_SIZE

Index: qtffplin.h
===================================================================
RCS file: /cvsroot/datatype/mp4/fileformat/pub/qtffplin.h,v
retrieving revision 1.17.8.2
retrieving revision 1.17.8.2.18.1
diff -u -d -r1.17.8.2 -r1.17.8.2.18.1
--- qtffplin.h	28 Apr 2008 17:30:19 -0000	1.17.8.2
+++ qtffplin.h	30 Mar 2009 05:07:42 -0000	1.17.8.2.18.1
@@ -84,6 +84,7 @@
  */
 class CQTFileFormat :	public IHXPlugin, 
 			public IHXFileFormatObject, 
+			public IHXFormatResponse,
 			public IHXFileResponse,
 			public IHXAtomizationCommander,
 			public IHXAtomizerResponse,
@@ -171,6 +172,36 @@
 			    HX_RESULT status);
 
     /*
+     *	IHXFormatResponse methods
+     */
+
+   STDMETHOD(PacketReady)		(THIS_
+					HX_RESULT	status,
+					IHXPacket*	pPacket);
+
+    STDMETHOD(FileHeaderReady)		(THIS_
+					HX_RESULT	status,
+					IHXValues*	pHeader) ;
+
+    STDMETHOD(StreamHeaderReady)	(THIS_
+					HX_RESULT	status,
+					IHXValues*	pHeader) ;
+
+    STDMETHOD(StreamDone)		(THIS_
+					UINT16		unStreamNumber) ;
+
+    /*
+        These methods are duplicated in IHXFileResponse.			    
+
+        STDMETHOD(InitDone)	    (THIS_
+     	        	            HX_RESULT status);
+     
+        STDMETHOD(SeekDone)	    (THIS_ 
+     		                    HX_RESULT status);
+     
+    */
+
+    /*
      *	IHXAtomizationCommander
      */
     STDMETHOD_(QTAtomizerCmd,GetAtomCommand)	(THIS_
@@ -309,7 +340,7 @@
     HX_RESULT GetResourceErrorString(UINT32 ulErrorID, CHXString& rErrorStr);
 
     void  WarnIfNotHinted(HX_RESULT status, HXBOOL bIgnoreHintTracks);
-    
+    HX_RESULT  CreateNewFileFormatObject(const char* purl);
     IHXScheduler* m_pScheduler;
 
     IHXErrorMessages*	m_pErrorMessages;
@@ -365,6 +396,7 @@
     CQTOffsetToTimeMapper* m_pOffsetToTimeMapper;
     IHXFileObject*  m_pFileObject;
     UINT32 m_ulNextPacketTime;	// in milliseconds
+    IHXFileFormatObject*   m_pRedirectFFObject;
 };
 
 


_______________________________________________
Datatype-cvs mailing list
Datatype-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/datatype-cvs


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic