Panda3D

interrogateManifest.I

00001 // Filename: interrogateManifest.I
00002 // Created by:  drose (11Aug00)
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 
00016 ////////////////////////////////////////////////////////////////////
00017 //     Function: InterrogateManifest::Constructor
00018 //       Access: Public
00019 //  Description:
00020 ////////////////////////////////////////////////////////////////////
00021 INLINE InterrogateManifest::
00022 InterrogateManifest(InterrogateModuleDef *def) :
00023   InterrogateComponent(def)
00024 {
00025   _flags = 0;
00026   _int_value = 0;
00027   _type = 0;
00028   _getter = 0;
00029 }
00030 
00031 ////////////////////////////////////////////////////////////////////
00032 //     Function: InterrogateManifest::Copy Constructor
00033 //       Access: Public
00034 //  Description:
00035 ////////////////////////////////////////////////////////////////////
00036 INLINE InterrogateManifest::
00037 InterrogateManifest(const InterrogateManifest &copy) {
00038   (*this) = copy;
00039 }
00040 
00041 ////////////////////////////////////////////////////////////////////
00042 //     Function: InterrogateManifest::Copy Assignment Operator
00043 //       Access: Public
00044 //  Description:
00045 ////////////////////////////////////////////////////////////////////
00046 INLINE void InterrogateManifest::
00047 operator = (const InterrogateManifest &copy) {
00048   InterrogateComponent::operator = (copy);
00049   _flags = copy._flags;
00050   _definition = copy._definition;
00051   _int_value = copy._int_value;
00052   _type = copy._type;
00053   _getter = copy._getter;
00054 }
00055 
00056 
00057 ////////////////////////////////////////////////////////////////////
00058 //     Function: InterrogateManifest::get_definition
00059 //       Access: Public
00060 //  Description:
00061 ////////////////////////////////////////////////////////////////////
00062 INLINE const string &InterrogateManifest::
00063 get_definition() const {
00064   return _definition;
00065 }
00066 
00067 ////////////////////////////////////////////////////////////////////
00068 //     Function: InterrogateManifest::has_type
00069 //       Access: Public
00070 //  Description:
00071 ////////////////////////////////////////////////////////////////////
00072 INLINE bool InterrogateManifest::
00073 has_type() const {
00074   return (_flags & F_has_type) != 0;
00075 }
00076 
00077 ////////////////////////////////////////////////////////////////////
00078 //     Function: InterrogateManifest::get_type
00079 //       Access: Public
00080 //  Description:
00081 ////////////////////////////////////////////////////////////////////
00082 INLINE TypeIndex InterrogateManifest::
00083 get_type() const {
00084   return _type;
00085 }
00086 
00087 ////////////////////////////////////////////////////////////////////
00088 //     Function: InterrogateManifest::has_getter
00089 //       Access: Public
00090 //  Description:
00091 ////////////////////////////////////////////////////////////////////
00092 INLINE bool InterrogateManifest::
00093 has_getter() const {
00094   return (_flags & F_has_getter) != 0;
00095 }
00096 
00097 ////////////////////////////////////////////////////////////////////
00098 //     Function: InterrogateManifest::get_getter
00099 //       Access: Public
00100 //  Description:
00101 ////////////////////////////////////////////////////////////////////
00102 INLINE FunctionIndex InterrogateManifest::
00103 get_getter() const {
00104   return _getter;
00105 }
00106 
00107 ////////////////////////////////////////////////////////////////////
00108 //     Function: InterrogateManifest::has_int_value
00109 //       Access: Public
00110 //  Description:
00111 ////////////////////////////////////////////////////////////////////
00112 INLINE bool InterrogateManifest::
00113 has_int_value() const {
00114   return (_flags & F_has_int_value) != 0;
00115 }
00116 
00117 ////////////////////////////////////////////////////////////////////
00118 //     Function: InterrogateManifest::get_int_value
00119 //       Access: Public
00120 //  Description:
00121 ////////////////////////////////////////////////////////////////////
00122 INLINE int InterrogateManifest::
00123 get_int_value() const {
00124   return _int_value;
00125 }
00126 
00127 
00128 INLINE ostream &
00129 operator << (ostream &out, const InterrogateManifest &manifest) {
00130   manifest.output(out);
00131   return out;
00132 }
00133 
00134 INLINE istream &
00135 operator >> (istream &in, InterrogateManifest &manifest) {
00136   manifest.input(in);
00137   return in;
00138 }
 All Classes Functions Variables Enumerations