14#ifndef DCCLASSPARAMETER_H
15#define DCCLASSPARAMETER_H
26class EXPCL_DIRECT_DCPARSER DCClassParameter :
public DCParameter {
28 DCClassParameter(
const DCClass *dclass);
29 DCClassParameter(
const DCClassParameter ©);
32 virtual DCClassParameter *as_class_parameter();
33 virtual const DCClassParameter *as_class_parameter()
const;
34 virtual DCParameter *make_copy()
const;
42 virtual void output_instance(std::ostream &out,
bool brief,
const std::string &prename,
43 const std::string &name,
const std::string &postname)
const;
47 virtual bool do_check_match(
const DCPackerInterface *other)
const;
52 typedef pvector<DCPackerInterface *> Fields;
53 Fields _nested_fields;
This represents an array of some other kind of object, meaning this parameter type accepts an arbitra...
virtual void output_instance(std::ostream &out, bool brief, const std::string &prename, const std::string &name, const std::string &postname) const
Formats the parameter in the C++-like dc syntax as a typename and identifier.
virtual bool is_valid() const
Returns false if the type is an invalid type (e.g.
Defines a particular DistributedClass as read from an input .dc file.
DCClass * get_class() const
Returns the DCClass pointer for the class that contains this field.
virtual DCPackerInterface * get_nested_field(int n) const
Returns the DCPackerInterface object that represents the nth nested field.
virtual bool do_check_match_class_parameter(const DCClassParameter *other) const
Returns true if this field matches the indicated class parameter, false otherwise.
virtual bool do_check_match_array_parameter(const DCArrayParameter *other) const
Returns true if this field matches the indicated array parameter, false otherwise.
virtual void generate_hash(HashGenerator &hashgen) const
Accumulates the properties of this type into the hash.
This class generates an arbitrary hash number from a sequence of ints.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.