EpetraExt Development
Zoltan_QueryObject.cpp
Go to the documentation of this file.
00001 /*
00002 //@HEADER
00003 // ***********************************************************************
00004 //
00005 //     EpetraExt: Epetra Extended - Linear Algebra Services Package
00006 //                 Copyright (2011) Sandia Corporation
00007 //
00008 // Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
00009 // the U.S. Government retains certain rights in this software.
00010 //
00011 // Redistribution and use in source and binary forms, with or without
00012 // modification, are permitted provided that the following conditions are
00013 // met:
00014 //
00015 // 1. Redistributions of source code must retain the above copyright
00016 // notice, this list of conditions and the following disclaimer.
00017 //
00018 // 2. Redistributions in binary form must reproduce the above copyright
00019 // notice, this list of conditions and the following disclaimer in the
00020 // documentation and/or other materials provided with the distribution.
00021 //
00022 // 3. Neither the name of the Corporation nor the names of the
00023 // contributors may be used to endorse or promote products derived from
00024 // this software without specific prior written permission.
00025 //
00026 // THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
00027 // EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00028 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00029 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
00030 // CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00031 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00032 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
00033 // PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
00034 // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
00035 // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
00036 // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00037 //
00038 // Questions? Contact Michael A. Heroux (maherou@sandia.gov)
00039 //
00040 // ***********************************************************************
00041 //@HEADER
00042 */
00043 
00044 //-------------------------------------------------------------------------
00045 // Filename       : $Zoltan_QueryObject.C$
00046 //
00047 // Purpose        : Base Class for dynamic versions of query
00048 //                  functions to be used by Zoltan.  The application
00049 //                  requires a class derived from this base to
00050 //                  be instantiated and registered with the
00051 //                  Zoltan_LoadBalance object.
00052 //
00053 // Special Notes  :
00054 //
00055 // Creator        : Robert J. Hoekstra
00056 //
00057 // Creation Date  : 08/04/2000
00058 //
00059 // Revision Information:
00060 // ---------------------
00061 //
00062 // Revision Number: $Revision$
00063 //
00064 // Revision Date  : $Date$
00065 //
00066 // Current Owner  : $Author$
00067 //-------------------------------------------------------------------------
00068 
00069 #include <Zoltan_QueryObject.h>
00070 
00071   //General Functions
00072 EPETRAEXT_DEPRECATED
00073 int Zoltan::QueryObject::Number_Objects        (  void * data,
00074             int * ierr )
00075 {
00076   std::cout << "Error: Zoltan::QueryObject::Number_Objects( void *, "
00077   << "int * ) must be implemented." << std::endl;
00078 
00079   *ierr = ZOLTAN_FATAL;
00080 
00081   return 0;
00082 }
00083 
00084 EPETRAEXT_DEPRECATED
00085 void Zoltan::QueryObject::Object_List  (  void * data,
00086           int num_gid_entries,
00087           int num_lid_entries,
00088           ZOLTAN_ID_PTR global_ids, 
00089           ZOLTAN_ID_PTR local_ids,
00090           int weight_dim,
00091           float * object_weights,
00092           int * ierr )
00093 {
00094   std::cout << "Error: Zoltan::QueryObject::Object_List( void *, int, int, "
00095   << "ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, int, float *, int * ) must be implemented." 
00096   << std::endl;
00097 
00098   *ierr = ZOLTAN_FATAL;
00099 }
00100 
00101 EPETRAEXT_DEPRECATED
00102 int Zoltan::QueryObject::First_Object  (  void * data,
00103           int num_gid_entries,
00104           int num_lid_entries,
00105           ZOLTAN_ID_PTR first_global_id, 
00106           ZOLTAN_ID_PTR first_local_id,
00107           int weight_dim,
00108           float * first_weight,
00109           int * ierr )
00110 {
00111   std::cout << "Error: Zoltan::QueryObject::First_Object( void *, int, int, "
00112   << "ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, int, float *, int * ) must be implemented." 
00113   << std::endl;
00114 
00115   *ierr = ZOLTAN_FATAL;
00116 
00117   return 0;
00118 }
00119 
00120 EPETRAEXT_DEPRECATED
00121 int Zoltan::QueryObject::Next_Object   ( void * data,
00122           int num_gid_entries,
00123           int num_lid_entries,
00124           ZOLTAN_ID_PTR global_id, 
00125           ZOLTAN_ID_PTR local_id,
00126           ZOLTAN_ID_PTR next_global_id, 
00127           ZOLTAN_ID_PTR next_local_id,
00128           int weight_dim,
00129           float * next_weight,
00130           int * ierr )
00131 {
00132   std::cout << "Error: Zoltan::QueryObject::Next_Object( void *, int, int, "
00133   << "ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, int, float *, int * ) "
00134         << "must be implemented." 
00135   << std::endl;
00136 
00137   *ierr = ZOLTAN_FATAL;
00138 
00139   return 0;
00140 }
00141 
00142 EPETRAEXT_DEPRECATED
00143 int Zoltan::QueryObject::Number_Border_Objects (  void * data,
00144             int number_neighbor_procs,
00145             int * ierr )
00146 {
00147   std::cout << "Error: Zoltan::QueryObject::Number_Border_Objects( void *, "
00148   << "int, int * ) must be implemented." 
00149   << std::endl;
00150 
00151   *ierr = ZOLTAN_FATAL;
00152 
00153   return 0;
00154 }
00155 
00156 EPETRAEXT_DEPRECATED
00157 void Zoltan::QueryObject::Border_Object_List   (  void * data,
00158             int num_gid_entities,
00159             int num_lid_entities,
00160             int number_neighbor_procs,
00161             ZOLTAN_ID_PTR global_ids,
00162             ZOLTAN_ID_PTR local_ids,
00163             int weight_dim,
00164             float * object_weights,
00165             int * ierr )
00166 {
00167   std::cout << "Error: Zoltan::QueryObject::Border_Object_List( void *, int, "
00168         << "int, int, ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, int, float *, int * ) must be "
00169   << "implemented." << std::endl;
00170 
00171   *ierr = ZOLTAN_FATAL;
00172 }
00173 
00174 EPETRAEXT_DEPRECATED
00175 int Zoltan::QueryObject::First_Border_Object   (  void * data,
00176             int num_gid_entities,
00177             int num_lid_entities,
00178             int number_neighbor_procs,
00179             ZOLTAN_ID_PTR first_global_id,
00180             ZOLTAN_ID_PTR first_local_id,
00181             int weight_dim,
00182             float * first_weight,
00183             int * ierr )
00184 {
00185   std::cout << "Error: Zoltan::QueryObject::First_Border_Object( void *, "
00186         << "int, int, int, ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, int, float *, int * ) must be "
00187   << "implemented." << std::endl;
00188 
00189   *ierr = ZOLTAN_FATAL;
00190 
00191   return 0;
00192 }
00193 
00194 EPETRAEXT_DEPRECATED
00195 int Zoltan::QueryObject::Next_Border_Object    (  void * data,
00196             int num_gid_entities,
00197             int num_lid_entities,
00198             ZOLTAN_ID_PTR global_id,
00199             ZOLTAN_ID_PTR local_id,
00200             int number_neighbor_procs,
00201             ZOLTAN_ID_PTR next_global_id,
00202             ZOLTAN_ID_PTR next_local_id,
00203             int weight_dim,
00204             float * next_weight,
00205             int * ierr )
00206 {
00207   std::cout << "Error: Zoltan::QueryObject::Next_Border_Object( void *, "
00208   << "int, int, ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, int, ZOLTAN_GID *, ZOLTAN_LID *, int, "
00209   << "float *, int * ) must be "
00210   << "implemented." << std::endl;
00211 
00212   *ierr = ZOLTAN_FATAL;
00213 
00214   return 0;
00215 }
00216 
00217   //Geometry Based Functions
00218 EPETRAEXT_DEPRECATED
00219 int Zoltan::QueryObject::Number_Geometry_Objects       (  void * data,
00220               int * ierr )
00221 {
00222   std::cout << "Error: Zoltan::QueryObject::Number_Geometry_Objects( void *, "
00223   << "int * ) must be implemented." << std::endl;
00224 
00225   *ierr = ZOLTAN_FATAL;
00226 
00227   return 0;
00228 }
00229 
00230 EPETRAEXT_DEPRECATED
00231 void Zoltan::QueryObject::Geometry_Values      (  void * data,
00232             int num_gid_entities,
00233             int num_lid_entities,
00234             ZOLTAN_ID_PTR global_id, 
00235             ZOLTAN_ID_PTR local_id,
00236             double * geometry_vector,
00237             int * ierr )
00238 {
00239   std::cout << "Error: Zoltan::QueryObject::Geometry_Values( void *, int, int, "
00240   << "ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, double *, int * ) must be implemented." 
00241   << std::endl;
00242 
00243   *ierr = ZOLTAN_FATAL;
00244 }
00245 
00246   //Graph Based Functions
00247 EPETRAEXT_DEPRECATED
00248 int Zoltan::QueryObject::Number_Edges  (  void * data,
00249           int num_gid_entities,
00250           int num_lid_entities,
00251           ZOLTAN_ID_PTR global_id, 
00252           ZOLTAN_ID_PTR local_id,
00253           int * ierr )
00254 {
00255   std::cout << "Error: Zoltan::QueryObject::Number_Edges( void *, int, int, "
00256   << "ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, int * ) must be implemented." 
00257   << std::endl;
00258 
00259   *ierr = ZOLTAN_FATAL;
00260 
00261   return 0;
00262 }
00263 
00264 EPETRAEXT_DEPRECATED
00265 void Zoltan::QueryObject::Edge_List    (  void * data,
00266           int num_gid_entities,
00267           int num_lid_entities,
00268           ZOLTAN_ID_PTR global_id, 
00269           ZOLTAN_ID_PTR local_id,
00270           ZOLTAN_ID_PTR neighbor_global_ids,
00271           int * neighbor_procs,
00272           int weight_dim,
00273           float * edge_weights,
00274           int * ierr )
00275 {
00276   std::cout << "Error: Zoltan::QueryObject::Edge_List( void *, int, int, "
00277   << "ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, int, float *, int * ) "
00278   << "must be implemented." 
00279   << std::endl;
00280 
00281   *ierr = ZOLTAN_FATAL;
00282 }
00283 
00284   //Tree Based Functions
00285 EPETRAEXT_DEPRECATED
00286 int Zoltan::QueryObject::Number_Coarse_Objects (  void * data,
00287             int * ierr )
00288 {
00289   std::cout << "Error: Zoltan::QueryObject::Number_Coarse_Objects( void *, "
00290   << "int * ) must be implemented." << std::endl;
00291 
00292   *ierr = ZOLTAN_FATAL;
00293 
00294   return 0;
00295 }
00296 
00297 EPETRAEXT_DEPRECATED
00298 void Zoltan::QueryObject::Coarse_Object_List   (  void * data,
00299             int num_gid_entities,
00300             int num_lid_entities,
00301             ZOLTAN_ID_PTR global_ids,
00302             ZOLTAN_ID_PTR local_ids,
00303             int * assigned,
00304             int * number_vertices,
00305             ZOLTAN_ID_PTR vertices,
00306             int * in_order,
00307             ZOLTAN_ID_PTR in_vertex,
00308             ZOLTAN_ID_PTR out_vertex,
00309             int * ierr )
00310 {
00311   std::cout << "Error: Zoltan::QueryObject::Coarse_Object_List( void *, "
00312   << "int, int, ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, int *, int *, int *, int *, "
00313   << "int *, int * ) "
00314   << "must be implemented." << std::endl;
00315 
00316   *ierr = ZOLTAN_FATAL;
00317 }
00318 
00319 EPETRAEXT_DEPRECATED
00320 int Zoltan::QueryObject::First_Coarse_Object   ( void * data,
00321             int num_gid_entities,
00322             int num_lid_entities,
00323             ZOLTAN_ID_PTR first_global_id,
00324             ZOLTAN_ID_PTR first_local_id,
00325             int * assigned,
00326             int * number_vertices,
00327             ZOLTAN_ID_PTR vertices,
00328             int * in_order,
00329             ZOLTAN_ID_PTR in_vertex,
00330             ZOLTAN_ID_PTR out_vertex,
00331             int * ierr )
00332 {
00333   std::cout << "Error: Zoltan::QueryObject::First_Coarse_Object( void *, "
00334   << "int, int, ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, int *, int *, int *, int *, "
00335   << "int *, int * ) "
00336   << "must be implemented." << std::endl;
00337 
00338   *ierr = ZOLTAN_FATAL;
00339 
00340   return 0;
00341 }
00342 
00343 EPETRAEXT_DEPRECATED
00344 int Zoltan::QueryObject::Next_Coarse_Object    ( void * data,
00345             int num_gid_entities,
00346             int num_lid_entities,
00347             ZOLTAN_ID_PTR global_id,
00348             ZOLTAN_ID_PTR local_id,
00349             ZOLTAN_ID_PTR next_global_id,
00350             ZOLTAN_ID_PTR next_local_id,
00351             int * assigned,
00352             int * number_vertices, 
00353             ZOLTAN_ID_PTR vertices,
00354             ZOLTAN_ID_PTR in_vertex,
00355             ZOLTAN_ID_PTR out_vertex,
00356             int * ierr )
00357 {
00358   std::cout << "Error: Zoltan::QueryObject::Next_Coarse_Object( void *, "
00359   << "int, int, ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, int *, "
00360   << "int *, int *, int *, int * ) "
00361   << "must be implemented." << std::endl;
00362 
00363   *ierr = ZOLTAN_FATAL;
00364 
00365   return 0;
00366 }
00367 
00368 EPETRAEXT_DEPRECATED
00369 int Zoltan::QueryObject::Number_Children       (  void * data,
00370             int num_gid_entities,
00371             int num_lid_entities,
00372             ZOLTAN_ID_PTR global_id,
00373             ZOLTAN_ID_PTR local_id,
00374             int * ierr )
00375 {
00376   std::cout << "Error: Zoltan::QueryObject::Number_Children( void *, int, int, "
00377   << "ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, int * ) "
00378   << "must be implemented." << std::endl;
00379 
00380   *ierr = ZOLTAN_FATAL;
00381 
00382   return 0;
00383 }
00384 
00385 EPETRAEXT_DEPRECATED
00386 void Zoltan::QueryObject::Child_List   (  void * data,
00387           int num_gid_entities,
00388           int num_lid_entities,
00389           ZOLTAN_ID_PTR parent_global_id,
00390           ZOLTAN_ID_PTR parent_local_id,
00391           ZOLTAN_ID_PTR child_global_ids,
00392           ZOLTAN_ID_PTR child_local_ids,
00393           int * assigned,
00394           int * number_vertices,
00395           ZOLTAN_ID_PTR vertices,
00396           ZOLTAN_REF_TYPE * reference_type,
00397           ZOLTAN_ID_PTR in_vertex,
00398           ZOLTAN_ID_PTR out_vertex,
00399           int * ierr  )
00400 {
00401   std::cout << "Error: Zoltan::QueryObject::Child_List( void *, int, int, "
00402   << "ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, int *, int *, int *, "
00403   << "ZOLTAN_REF_TYPE *, int *, int *, int * ) must be implemented."
00404   << std::endl;
00405 
00406   *ierr = ZOLTAN_FATAL;
00407 }
00408 
00409 EPETRAEXT_DEPRECATED
00410 void Zoltan::QueryObject::Child_Weight (  void * data,
00411           int num_gid_entities,
00412           int num_lid_entities,
00413           ZOLTAN_ID_PTR global_id,
00414           ZOLTAN_ID_PTR local_id,
00415           int weight_dim,
00416           float * object_weight,
00417           int * ierr )
00418 {
00419   std::cout << "Error: Zoltan::QueryObject::Child_Weight( void *, int, int, "
00420   << "ZOLTAN_ID_PTR, ZOLTAN_ID_PTR, int, float *, int * ) must be implemented."
00421   << std::endl;
00422 
00423   *ierr = ZOLTAN_FATAL;
00424 }
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines