00001 // Filename: bam.h 00002 // Created by: jason (27Jun00) 00003 // 00004 //////////////////////////////////////////////////////////////////// 00005 // 00006 // PANDA 3D SOFTWARE 00007 // Copyright (c) Carnegie Mellon University. All rights reserved. 00008 // 00009 // All use of this software is subject to the terms of the revised BSD 00010 // license. You should have received a copy of this license along 00011 // with this source code in a file named "LICENSE." 00012 // 00013 //////////////////////////////////////////////////////////////////// 00014 00015 // This file just holds the Magic Number, Major and Minor version 00016 // numbers that are common to both BamWriter and BamReader. 00017 00018 #ifndef _BAM_H 00019 #define _BAM_H 00020 00021 #include "pandabase.h" 00022 00023 // The magic number for a BAM file. It includes a carriage return and 00024 // newline character to help detect files damaged due to faulty 00025 // ASCII/Binary conversion. 00026 static const string _bam_header = string("pbj\0\n\r", 6); 00027 00028 static const unsigned short _bam_major_ver = 6; 00029 // Bumped to major version 2 on 7/6/00 due to major changes in Character. 00030 // Bumped to major version 3 on 12/8/00 to change float64's to float32's. 00031 // Bumped to major version 4 on 4/10/02 to store new scene graph. 00032 // Bumped to major version 5 on 5/6/05 for new Geom implementation. 00033 // Bumped to major version 6 on 2/11/06 to factor out PandaNode::CData. 00034 00035 static const unsigned short _bam_first_minor_ver = 14; 00036 static const unsigned short _bam_minor_ver = 30; 00037 // Bumped to minor version 14 on 12/19/07 to change default ColorAttrib. 00038 // Bumped to minor version 15 on 4/9/08 to add TextureAttrib::_implicit_sort. 00039 // Bumped to minor version 16 on 5/13/08 to add Texture::_quality_level. 00040 // Bumped to minor version 17 on 8/6/08 to add PartBundle::_anim_preload. 00041 // Bumped to minor version 18 on 8/14/08 to add Texture::_simple_ram_image. 00042 // Bumped to minor version 19 on 8/14/08 to add PandaNode::_bounds_type. 00043 // Bumped to minor version 20 on 4/21/09 to add MovingPartBase::_forced_channel. 00044 // Bumped to minor version 21 on 2/26/08 to add BamEnums::BamObjectCode. 00045 // Bumped to minor version 22 on 7/31/09 to add UvScrollNode R speed. 00046 // Bumped to minor version 23 on 5/4/10 to add internal TextureAttrib overrides. 00047 // Bumped to minor version 24 on 5/4/10 to add internal TexMatrixAttrib overrides. 00048 // Bumped to minor version 25 on 6/22/11 to add support for caching movie files. 00049 // Bumped to minor version 26 on 8/5/11 to add multiview (stereo) Textures. 00050 // Bumped to minor version 27 on 10/9/11 to add stdfloat_double. 00051 // Bumped to minor version 28 on 11/28/11 to add Texture::_auto_texture_scale. 00052 // Bumped to minor version 29 on 12/17/11 to add GeomVertexColumn::_column_alignment. 00053 // Bumped to minor version 30 on 1/22/12 to add Texture::_pad_*_size. 00054 00055 00056 #endif