00001 #include "opennwa/NwaFwd.hpp" 00002 00003 namespace opennwa 00004 { 00005 namespace construct 00006 { 00007 00008 /** 00009 * 00010 * @brief constructs the NWA that is the complement of the given NWA 00011 * 00012 * This method constructs the complement of the given NWA by determinizing it and 00013 * then replacing the set of final states with the set of states that are not final 00014 * Note: The resulting NWA is guaranteed to be deterministic. 00015 * 00016 * @param - first: the NWA to perform the complement of 00017 * 00018 */ 00019 extern void complement(Nwa & out, Nwa const & source); 00020 00021 00022 /** 00023 * 00024 * @brief constructs the NWA that is the complement of the given NWA 00025 * 00026 * This method constructs the complement of the given NWA by determinizing it and 00027 * then replacing the set of final states with the set of states that are not final 00028 * Note: The resulting NWA is guaranteed to be deterministic. 00029 * 00030 * @param - first: the NWA to perform the complement of 00031 * @return the NWA resulting from complementing the given NWA 00032 * 00033 */ 00034 extern NwaRefPtr complement( Nwa const & source ); 00035 00036 00037 } 00038 } 00039 00040 00041 // Yo, Emacs! 00042 // Local Variables: 00043 // c-file-style: "ellemtel" 00044 // c-basic-offset: 2 00045 // End: 00046