1 /*
2     Copyright (c) 2008-2009 NetAllied Systems GmbH
3 
4     This file is part of COLLADASaxFrameworkLoader.
5 
6     Licensed under the MIT Open Source License,
7     for details please see LICENSE file or the website
8     http://www.opensource.org/licenses/mit-license.php
9 */
10 
11 #ifndef __COLLADASAXFWL_ASSETLOADER_H__
12 #define __COLLADASAXFWL_ASSETLOADER_H__
13 
14 #include "COLLADASaxFWLPrerequisites.h"
15 #include "COLLADASaxFWLFilePartLoader.h"
16 #include "COLLADASaxFWLXmlTypes.h"
17 
18 #include "COLLADAFWFileInfo.h"
19 #include "COLLADAFWIWriter.h"
20 
21 
22 namespace COLLADASaxFWL
23 {
24 
25     /** TODO Documentation */
26     class AssetLoader : public FilePartLoader
27     {
28 	private:
29 
30         /** Pointer to the asset this loader creates.*/
31         COLLADAFW::FileInfo* mAsset;
32 
33     public:
34 
35         /** Constructor. */
36 		AssetLoader ( IFilePartLoader* callingFilePartLoader );
37 
38         /** Destructor. */
39 		virtual ~AssetLoader ();
40 
41         /** Sax callback function for the end of the collada document asset information.*/
42         virtual bool end__asset();
43 
begin__contributor()44         virtual bool begin__contributor(){return true;}
end__contributor()45         virtual bool end__contributor(){return true;}
46 
begin__author()47         virtual bool begin__author(){return true;}
end__author()48         virtual bool end__author(){return true;}
49         virtual bool data__author( const ParserChar* data, size_t length );
50 
begin__authoring_tool()51         virtual bool begin__authoring_tool(){return true;}
end__authoring_tool()52         virtual bool end__authoring_tool(){return true;}
53         virtual bool data__authoring_tool( const ParserChar* data, size_t length );
54 
begin__comments()55         virtual bool begin__comments(){return true;}
end__comments()56         virtual bool end__comments(){return true;}
57         virtual bool data__comments( const ParserChar* data, size_t length );
58 
begin__copyright()59         virtual bool begin__copyright(){return true;}
end__copyright()60         virtual bool end__copyright(){return true;}
61         virtual bool data__copyright( const ParserChar* data, size_t length );
62 
begin__source_data()63         virtual bool begin__source_data(){return true;}
end__source_data()64         virtual bool end__source_data(){return true;}
65         virtual bool data__source_data( COLLADABU::URI value );
66 
begin__created()67         virtual bool begin__created(){return true;}
end__created()68         virtual bool end__created(){return true;}
69         virtual bool data__created( const ParserChar* data, size_t length );
70 
begin__keywords()71         virtual bool begin__keywords(){return true;}
end__keywords()72         virtual bool end__keywords(){return true;}
73         virtual bool data__keywords( const ParserChar* data, size_t length );
74 
begin__modified()75         virtual bool begin__modified(){return true;}
end__modified()76         virtual bool end__modified(){return true;}
77         virtual bool data__modified( const ParserChar* data, size_t length );
78 
begin__revision()79         virtual bool begin__revision(){return true;}
end__revision()80         virtual bool end__revision(){return true;}
81         virtual bool data__revision( const ParserChar* data, size_t length );
82 
begin__subject()83         virtual bool begin__subject(){return true;}
end__subject()84         virtual bool end__subject(){return true;}
85         virtual bool data__subject( const ParserChar* data, size_t length );
86 
begin__title()87         virtual bool begin__title(){return true;}
end__title()88         virtual bool end__title(){return true;}
89         virtual bool data__title( const ParserChar* data, size_t length );
90 
91         virtual bool begin__unit( const unit__AttributeData& attributeData );
end__unit()92         virtual bool end__unit(){return true;}
93 
begin__up_axis()94         virtual bool begin__up_axis(){return true;}
end__up_axis()95         virtual bool end__up_axis(){return true;}
96         virtual bool data__up_axis( const ENUM__UpAxisType val );
97 
98 	private:
99 
100         /** Disable default copy ctor. */
101 		AssetLoader( const AssetLoader& pre );
102 
103         /** Disable default assignment operator. */
104 		const AssetLoader& operator= ( const AssetLoader& pre );
105 
106 	};
107 
108 } // namespace COLLADASAXFWL
109 
110 #endif // __COLLADASAXFWL_ASSETLOADER_H__
111