Panda3D
pandatool
src
fltprogs
fltCopy.h
1
// Filename: fltCopy.h
2
// Created by: drose (01Nov00)
3
//
4
////////////////////////////////////////////////////////////////////
5
//
6
// PANDA 3D SOFTWARE
7
// Copyright (c) Carnegie Mellon University. All rights reserved.
8
//
9
// All use of this software is subject to the terms of the revised BSD
10
// license. You should have received a copy of this license along
11
// with this source code in a file named "LICENSE."
12
//
13
////////////////////////////////////////////////////////////////////
14
15
#ifndef FLTCOPY_H
16
#define FLTCOPY_H
17
18
#include "pandatoolbase.h"
19
20
#include "cvsCopy.h"
21
22
#include "dSearchPath.h"
23
#include "pointerTo.h"
24
25
#include "pset.h"
26
27
class
FltRecord
;
28
class
FltTexture
;
29
class
FltExternalReference
;
30
31
////////////////////////////////////////////////////////////////////
32
// Class : FltCopy
33
// Description : A program to copy Multigen .flt files into the cvs
34
// tree. It copies the base file plus all externally
35
// referenced files as well as all textures.
36
////////////////////////////////////////////////////////////////////
37
class
FltCopy
:
public
CVSCopy
{
38
public
:
39
FltCopy
();
40
41
void
run();
42
43
protected
:
44
virtual
bool
copy_file(
const
Filename
&source,
const
Filename
&dest,
45
CVSSourceDirectory
*dir,
void
*extra_data,
46
bool
new_file);
47
48
private
:
49
enum
FileType {
50
FT_flt,
51
FT_texture
52
};
53
54
class
ExtraData {
55
public
:
56
FileType _type;
57
FltTexture
*_texture;
58
};
59
60
bool
copy_flt_file(
const
Filename
&source,
const
Filename
&dest,
61
CVSSourceDirectory
*dir);
62
bool
copy_texture(
const
Filename
&source,
const
Filename
&dest,
63
CVSSourceDirectory
*dir,
FltTexture
*tex,
64
bool
new_file);
65
66
67
typedef
pset< PT(FltExternalReference) >
Refs
;
68
typedef
pset< PT(FltTexture) >
Textures
;
69
70
void
scan_flt(
FltRecord
*record, Refs &refs, Textures &textures);
71
};
72
73
#endif
CVSCopy
This is the base class for a family of programs that copy files, typically model files like ...
Definition:
cvsCopy.h:33
CVSSourceDirectory
This represents one particular directory in the hierarchy of source directory files.
Definition:
cvsSourceDirectory.h:40
FltTexture
Represents a single texture in the texture palette.
Definition:
fltTexture.h:29
Filename
The name of a file, such as a texture file or an Egg file.
Definition:
filename.h:44
FltRecord
The base class for all kinds of records in a MultiGen OpenFlight file.
Definition:
fltRecord.h:40
FltCopy
A program to copy Multigen .flt files into the cvs tree.
Definition:
fltCopy.h:37
FltExternalReference
An external reference to another flt file (possibly to a specific bead within the flt file)...
Definition:
fltExternalReference.h:29
pset
This is our own Panda specialization on the default STL set.
Definition:
pset.h:52
Generated on Wed May 17 2017 23:48:22 for Panda3D by
1.8.13