14#ifndef DCMOLECULARFIELD_H
15#define DCMOLECULARFIELD_H
28class EXPCL_DIRECT_DCPARSER DCMolecularField :
public DCField {
30 DCMolecularField(
const std::string &name,
DCClass *dclass);
42 virtual void output(std::ostream &out,
bool brief)
const;
43 virtual void write(std::ostream &out,
bool brief,
int indent_level)
const;
49 virtual bool do_check_match(
const DCPackerInterface *other)
const;
55 typedef pvector<DCAtomicField *> Fields;
61 typedef pvector<DCPackerInterface *> NestedFields;
62 NestedFields _nested_fields;
A single atomic field of a Distributed Class, as read from a .dc file.
Defines a particular DistributedClass as read from an input .dc file.
void write(std::ostream &out, int indent_level) const
Write a string representation of this instance to <out>.
virtual void generate_hash(HashGenerator &hashgen) const
Accumulates the properties of this field into the hash.
void output(std::ostream &out) const
Write a string representation of this instance to <out>.
virtual DCMolecularField * as_molecular_field()
Returns the same field pointer converted to a molecular field pointer, if this is in fact a molecular...
int get_num_atomics() const
Returns the number of atomic fields that make up this molecular field.
DCAtomicField * get_atomic(int n) const
Returns the nth atomic field that makes up this molecular field.
void add_atomic(DCAtomicField *atomic)
Adds the indicated atomic field to the end of the list of atomic fields that make up the molecular fi...
virtual DCPackerInterface * get_nested_field(int n) const
Returns the DCPackerInterface object that represents the nth nested field.
virtual bool do_check_match_molecular_field(const DCMolecularField *other) const
Returns true if this field matches the indicated molecular field, false otherwise.
Represents the type specification for a single parameter within a field specification.
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.